Skip to content

Cisco CCNAv7 - O pacote IPv6

O IPv4 tem cerca de 4,3 bilhões de endereços, e isso não é mais suficiente para todos os computadores, celulares, câmeras e sensores do mundo. A solução de longo prazo é o IPv6. Neste post, você vai ver os motivos da mudança e o formato do pacote IPv6. O endereçamento em si (como escrever e organizar os endereços) fica para o módulo de endereçamento IPv6.

LimitaçãoConsequência
Esgotamento de endereçosOs blocos livres de endereços públicos IPv4 se esgotaram (primeiro na IANA e depois nos registros regionais)
Falta de conectividade ponta a pontaPara economizar endereços, usa-se NAT, que mascara os endereços internos e complica aplicações que precisam de conexão direta
Complexidade crescenteRemendos ao longo do tempo (NAT, DHCP, opções) tornaram a rede mais difícil de gerenciar

O IPv4 não vai desaparecer de um dia para o outro. Existem três abordagens para conviver com os dois:

TécnicaComo funciona
Pilha dupla (dual stack)O dispositivo roda IPv4 e IPv6 ao mesmo tempo
TunelamentoO pacote IPv6 vai dentro de um pacote IPv4, atravessando uma rede só IPv4
Tradução (NAT64)Converte entre pacotes IPv4 e IPv6
MelhoriaDescrição
Mais endereços128 bits
Cabeçalho simplificadoTamanho fixo e menos campos, o que facilita o trabalho dos roteadores
Sem NAT necessárioCada dispositivo pode ter um endereço global, restabelecendo a conectividade ponta a ponta
Sem fragmentação nos roteadoresSó o remetente fragmenta, o que alivia os roteadores
AutoconfiguraçãoO dispositivo pode gerar seu endereço sozinho (SLAAC)
Sem broadcastUsa multicast e anycast, reduzindo o tráfego desnecessário
Cabeçalhos de extensãoRecursos opcionais ficam em cabeçalhos extras, só quando necessários

O cabeçalho IPv6 tem tamanho fixo de 40 bytes.

CampoTamanhoPara que serve
Versão4 bitsValor 6
Classe de tráfego (Traffic Class)8 bitsClassificação do tráfego (QoS), como o DSCP do IPv4
Rótulo de fluxo (Flow Label)20 bitsIdentifica um fluxo de pacotes que devem receber o mesmo tratamento
Comprimento da carga (Payload Length)16 bitsTamanho dos dados após o cabeçalho, em bytes
Próximo cabeçalho (Next Header)8 bitsIndica o tipo de conteúdo (TCP, UDP, ICMPv6 ou um cabeçalho de extensão)
Limite de saltos (Hop Limit)8 bitsEquivale ao TTL do IPv4: cada roteador subtrai 1
Endereço de origem128 bitsQuem enviou
Endereço de destino128 bitsPara quem vai

Somando: 4 + 8 + 20 + 16 + 8 + 8 + 128 + 128 = 320 bits = 40 bytes.

flowchart LR
  A["Cabeçalho IPv6<br/>40 bytes fixos"] --> B["Cabeçalhos de extensão<br/>(opcionais)"] --> C["Dados<br/>TCP, UDP ou ICMPv6"]
Campo do IPv4No IPv6
VersãoMantido (valor 6)
IHLRemovido (o cabeçalho tem tamanho fixo)
DSCP / ECNVirou Classe de tráfego
Comprimento totalVirou Comprimento da carga (sem contar o cabeçalho)
Identificação, Flags e DeslocamentoRemovidos (a fragmentação, se ocorrer, usa cabeçalho de extensão)
TTLVirou Limite de saltos
ProtocoloVirou Próximo cabeçalho
Checksum do cabeçalhoRemovido (a verificação é feita pelas camadas de enlace e transporte)
OpçõesSubstituídas pelos cabeçalhos de extensão
Endereço de origem e destinoMantidos, mas de 128 bits
CaracterísticaIPv4IPv6
Tamanho do endereço32 bits128 bits
Quantidade de endereços≈ 4,3 bilhões≈ 3,4 × 10³⁸
Cabeçalho20 a 60 bytes (variável)40 bytes (fixo)
Escrita do endereçoDecimal pontilhadoHexadecimal, separado por :
BroadcastSimNão (usa multicast)
NATMuito usadoNormalmente desnecessário

Mini laboratório: observando o IPv6 no seu computador

Section titled “Mini laboratório: observando o IPv6 no seu computador”

Objetivo: encontrar endereços IPv6 e comparar com o IPv4.

No Linux:

ip -6 address show

No Windows:

ipconfig

Procure o endereço IPv6. Anote:

InformaçãoValor
Endereço IPv6 (global ou temporário)?
Endereço IPv6 de link local (começa com fe80)?

No Linux:

ping -6 -c 4 ::1

No Windows:

ping -6 ::1

O endereço ::1 é o loopback do IPv6, equivalente ao 127.0.0.1 do IPv4. Se o seu provedor entrega IPv6, teste também um destino externo, como ping -6 ipv6.google.com.

SituaçãoResposta
Quantos bits tem o cabeçalho IPv6 inteiro??
Quantos dígitos hexadecimais tem um endereço IPv6 completo (128 bits)??
Um pacote IPv6 tem o campo Comprimento da carga igual a 1200. Qual o tamanho total do pacote (cabeçalho + carga)??
Ver respostas
SituaçãoResposta
Bits do cabeçalho40 × 8 = 320 bits
Dígitos hexadecimais128 ÷ 4 = 32 dígitos
Tamanho total40 + 1200 = 1240 bytes

Perguntas para fixar:

  • Por que o IPv6 foi criado?
  • Qual é o tamanho do cabeçalho IPv6 e por que o tamanho fixo ajuda os roteadores?
  • Qual campo do IPv6 faz o papel do TTL do IPv4?
Ver respostas
  • Por causa do esgotamento dos endereços IPv4 e das limitações (como a dependência do NAT).
  • 40 bytes. Como o tamanho é fixo, os roteadores processam o cabeçalho mais rápido, sem precisar calcular o tamanho.
  • O Limite de saltos (Hop Limit).
  • O IPv6 foi criado porque os endereços IPv4 (32 bits) acabaram; o IPv6 usa 128 bits.
  • Ele traz cabeçalho simplificado, menos dependência de NAT, autoconfiguração e ausência de broadcast.
  • O cabeçalho IPv6 tem 40 bytes fixos, com os campos: versão, classe de tráfego, rótulo de fluxo, comprimento da carga, próximo cabeçalho, limite de saltos, origem e destino.
  • O Limite de saltos equivale ao TTL, e o Próximo cabeçalho, ao campo Protocolo.
  • IPv4 e IPv6 convivem por meio de pilha dupla, tunelamento e tradução.