Endereçamento IPv6

IPv6 amplia o endereço e reorganiza a operação da rede
IPv6 usa endereços de 128 bits para identificar interfaces e conjuntos de interfaces. O espaço muito maior permite planejar redes hierárquicas sem a mesma pressão de reaproveitamento do IPv4, mas IPv6 não é apenas “IPv4 com mais números”.
Ele também define um cabeçalho diferente, não possui broadcast, depende de Neighbor Discovery para funções locais e permite que uma interface mantenha vários endereços com finalidades distintas ao mesmo tempo.
Assim como no IPv4, o endereço pertence logicamente à interface, não à pessoa ou ao equipamento de forma permanente. Um notebook pode ter endereços link-local, globais, estáveis e temporários em Wi-Fi, Ethernet e interfaces virtuais.
Oito hextetos representam os 128 bits
Um endereço IPv6 completo é escrito como oito grupos de quatro dígitos hexadecimais separados por dois-pontos. Cada grupo representa 16 bits e costuma ser chamado de hexteto.
2001:0db8:0000:0000:0000:0000:0000:0034
Cada dígito hexadecimal representa 4 bits. Por isso:
- quatro dígitos formam 16 bits;
- oito hextetos formam
8 × 16 = 128bits; - os símbolos vão de
0a9e deaaf.
O valor hexadecimal db8, por exemplo, não deve ser lido como número decimal nem como três octetos. Ele é um valor de até 16 bits dentro de um hexteto.
A abreviação reduz zeros sem alterar o endereço
Endereços IPv6 seriam difíceis de ler se todos os zeros precisassem permanecer visíveis. A forma textual recomendada pela RFC 5952 aplica regras determinísticas.
Remova zeros à esquerda de cada hexteto
0db8 vira db8, 0034 vira 34 e 0000 vira 0. Não remova zeros à direita: db80 e db8 são valores diferentes.
2001:0db8:0000:0000:0000:0000:0000:0034
2001:db8:0:0:0:0:0:34
Comprima a maior sequência contínua de zeros
Uma sequência de hextetos 0 pode ser substituída por :::
2001:db8:0:0:0:0:0:34
2001:db8::34
O :: só pode aparecer uma vez. Se aparecesse duas, não seria possível determinar quantos hextetos zero pertencem a cada trecho. Na forma canônica:
- comprima a sequência mais longa de hextetos zero;
- não use
::para apenas um hexteto zero; - em empate entre sequências do mesmo tamanho, comprima a primeira;
- escreva
aafem minúsculas.
Por exemplo, 2001:db8:1::5 possui três hextetos explícitos antes de :: e um depois. Faltam quatro grupos zero:
2001:0db8:0001:0000:0000:0000:0000:0005
Em URLs, colchetes separam endereço e porta
Os dois-pontos já fazem parte da escrita IPv6. Quando um endereço literal aparece em uma URL junto com uma porta, colchetes evitam ambiguidade:
https://[2001:db8::34]:8443/
Os colchetes pertencem à sintaxe da URL, não ao endereço IPv6. Em arquivos de configuração, logs ou comandos, cada ferramenta define se espera endereço, prefixo, zona da interface ou URI completa.
O prefixo continua usando a notação com barra
Um prefixo IPv6 é escrito como endereço seguido pelo comprimento:
2001:db8:1200:34::/64
O /64 indica que os primeiros 64 bits formam o prefixo daquela sub-rede. Em redes locais comuns, os 64 bits restantes compõem o identificador de interface.
Essa divisão aparece frequentemente porque vários mecanismos IPv6, incluindo SLAAC em enlaces Ethernet usuais, operam com identificadores de interface de 64 bits. Entretanto, não conclua que todo prefixo IPv6 possível seja /64: rotas agregadas, enlaces e finalidades especiais podem usar outros comprimentos.
Se uma organização recebe um /48, por exemplo, pode usar os 16 bits seguintes para identificar até 65.536 sub-redes /64. Um /56 deixa 8 bits para 256 sub-redes /64. Esses números representam possibilidades matemáticas; o plano real precisa considerar locais, funções, crescimento, agregação e política operacional.
IPv6 distingue unicast, anycast e multicast
A arquitetura define três tipos gerais:
- unicast: identifica uma interface; o pacote é entregue a ela;
- anycast: o mesmo endereço é atribuído a múltiplas interfaces e o roteamento conduz a uma delas, normalmente a considerada mais próxima;
- multicast: identifica um grupo e entrega aos participantes do grupo dentro do escopo aplicável.
Anycast usa endereços do espaço unicast e não possui uma forma textual que permita reconhecê-lo sozinho. A diferença está na atribuição e no anúncio das rotas.
IPv6 não possui endereço de broadcast. Funções que precisam alcançar conjuntos específicos utilizam multicast. Isso não significa que todo multicast seja global ou que todos os dispositivos processem toda mensagem: o próprio endereço contém um campo de escopo e interfaces ingressam em grupos conforme a função.
Prefixos conhecidos ajudam a reconhecer o escopo
Não especificado e loopback
:: é o endereço não especificado. Ele representa a ausência de um endereço e pode aparecer como origem durante inicialização em situações definidas. Não deve ser atribuído a uma interface nem usado como destino comum.
::1 é loopback. Um pacote destinado a ele permanece no próprio nó, assim como 127.0.0.1 no IPv4. Testar ::1 confirma a pilha local, não o funcionamento do cabo, Wi-Fi ou roteador.
Link-local
fe80::/10 reserva endereços unicast link-local. Eles permitem comunicação entre vizinhos do mesmo enlace e são fundamentais para Neighbor Discovery e interação com roteadores locais. Roteadores não os encaminham para outro enlace.
Como o mesmo endereço link-local pode existir em interfaces diferentes, ferramentas às vezes exigem um zone index ou identificador de interface, como %eth0 ou %12. Essa parte seleciona a interface local e não pertence aos 128 bits do endereço.
Uma interface IPv6 funcional normalmente possui um link-local mesmo quando ainda não recebeu prefixo global. Por isso, conseguir alcançar o roteador por link-local mas não a Internet aponta para uma etapa posterior, como anúncio de prefixo, rota, política ou conectividade externa.
Global unicast e documentação
O espaço 2000::/3 é atualmente destinado a atribuições global unicast. Um endereço nele pode integrar o roteamento global, mas isso não garante que esteja anunciado, que exista rota de retorno ou que um firewall aceite conexões.
2001:db8::/32 é reservado para documentação. Todos os exemplos desta aula usam esse prefixo para não apontar a redes reais.
Unique Local Address
fc00::/7 é o espaço de Unique Local Addresses (ULA). No formato definido para geração local, o bit L vale 1, produzindo endereços iniciados por fd. Um identificador global pseudoaleatório de 40 bits reduz a chance de colisão entre organizações que venham a interligar suas redes.
ULA não é anunciado como rota global da Internet. Entretanto, não é uma cópia perfeita do conceito privado do IPv4: o objetivo inclui gerar prefixos locais com alta probabilidade de unicidade, e seu uso não exige nem implica NAT.
Multicast
Endereços multicast começam em ff00::/8. O quarto dígito hexadecimal inclui o escopo. Exemplos importantes no enlace são:
ff02::1— todos os nós do enlace;ff02::2— todos os roteadores do enlace.
O prefixo ff02 indica escopo de enlace. Um roteador não deve encaminhar essa mensagem para fora dele. Outros escopos e grupos possuem finalidades próprias; não substitua qualquer broadcast IPv4 por um multicast escolhido arbitrariamente.
Uma interface mantém vários endereços ao mesmo tempo
No IPv4, iniciantes costumam procurar “o IP” do dispositivo. Em IPv6, é ainda mais importante observar a lista inteira. A mesma interface pode ter:
- um link-local;
- um endereço global estável dentro daquela rede;
- um ou mais endereços temporários usados como origem;
- um ULA;
- participação em múltiplos grupos multicast.
Cada endereço possui estado e tempo de vida. Um endereço pode estar tentative, preferred ou deprecated, entre outros estados da implementação. Deprecated não significa removido imediatamente: conexões existentes ainda podem usá-lo enquanto novos fluxos preferem outro endereço.
A seleção do endereço de origem considera destino, escopo, prefixo, política e estado. Portanto, o primeiro endereço mostrado por uma ferramenta não é necessariamente o que uma conexão usará.
SLAAC permite configuração sem concessão individual
Stateless Address Autoconfiguration (SLAAC) permite que um host forme endereços a partir de informações anunciadas no enlace, sem que um servidor mantenha uma concessão individual para cada endereço.
Em uma visão didática, o fluxo é:
- a interface forma um endereço link-local;
- realiza Duplicate Address Detection para verificar se o endereço tentativo já está em uso;
- pode enviar Router Solicitation ao grupo de roteadores;
- recebe Router Advertisement com informações do enlace, roteador e opções de prefixo;
- quando a opção permite configuração autônoma, combina o prefixo com um identificador de interface;
- executa DAD sobre o novo endereço;
- se não detectar duplicidade, o endereço passa a ser utilizado conforme seus tempos de vida.
Router Advertisement também é a forma padrão de o host aprender roteadores padrão no IPv6. DHCPv6 pode coexistir com SLAAC e fornecer endereços ou outros parâmetros, mas não substitui o papel do RA na descoberta do roteador padrão.
O Neighbor Discovery explicado na aula anterior fornece as mensagens usadas por Router Solicitation, Router Advertisement e DAD. Aqui o foco é o resultado no endereçamento.
O identificador de interface não precisa revelar o MAC
Materiais antigos frequentemente ensinam a transformar um endereço MAC em EUI-64 para formar os 64 bits finais. Esse mecanismo existiu e ainda pode aparecer, mas não deve ser apresentado como recomendação padrão atual.
A RFC 8064 recomenda, para endereços estáveis criados com SLAAC, identificadores opacos e estáveis por rede, sem incorporar um endereço de enlace estável. Isso reduz correlação entre redes e exposição de informações do hardware.
Além deles, extensões de privacidade podem criar endereços temporários para conexões de saída. A RFC 8981 atualiza esse mecanismo. Um sistema pode manter simultaneamente:
- endereço estável, útil para continuidade e administração;
- endereço temporário, preferido como origem em determinados fluxos;
- link-local para funções do enlace.
“Temporário” não significa descartado a cada pacote. Há tempos de vida e transição para evitar quebrar conexões em andamento.
DAD reduz conflitos, mas não é uma prova absoluta
Durante Duplicate Address Detection, o endereço permanece tentativo. O nó usa Neighbor Solicitation para descobrir se outro participante já utiliza o mesmo valor. Se houver evidência de duplicidade, o endereço não deve ser atribuído.
O mecanismo melhora a robustez, mas pode falhar em enlaces particionados ou quando multicast e ICMPv6 são filtrados incorretamente. Bloquear indiscriminadamente Neighbor Discovery pode impedir DAD, autoconfiguração e comunicação normal.
Dois nós também podem receber o mesmo prefixo e ainda formar identificadores diferentes. É o endereço completo de 128 bits que precisa ser único dentro do escopo apropriado.
IPv6 não oferece segurança automática
IPv6 não torna todo tráfego criptografado e não elimina a necessidade de firewall. O grande espaço dificulta algumas formas ingênuas de varredura, mas não impede descoberta por DNS, logs, multicast, padrões previsíveis ou serviços publicados.
Router Advertisements falsos, Neighbor Discovery malicioso e configurações inconsistentes podem desviar ou interromper tráfego. Redes gerenciadas precisam controlar quem pode anunciar roteamento no enlace, filtrar mensagens inválidas sem quebrar ICMPv6 e monitorar mudanças.
Também não use a ausência de NAT como justificativa para exposição irrestrita. Endereço global e permissão de entrada são decisões distintas.
Um roteiro de diagnóstico IPv6
Quando a comunicação falhar, observe as camadas em ordem:
- a interface está ativa e possui link-local?
- DAD terminou ou o endereço permanece tentativo/duplicado?
- Router Advertisement foi recebido pela interface correta?
- existe prefixo válido e endereço global ou ULA esperado?
- há roteador padrão aprendido e rota para o destino?
- Neighbor Discovery resolve o próximo salto?
- ICMPv6 necessário está sendo permitido?
- a aplicação escolheu um endereço de origem adequado?
- o DNS possui resposta AAAA e ela aponta para o destino correto?
- existe rota de retorno e política liberando o serviço?
Se link-local funciona e global não, o enlace básico pode estar saudável enquanto prefixo, rota ou conectividade externa falha. Se IPv6 por endereço funciona e por nome não, investigue DNS e seleção entre endereços IPv4 e IPv6.
Erros comuns sobre endereçamento IPv6
- contar caracteres em vez de hextetos: cada grupo possui até quatro dígitos, mas sempre representa 16 bits;
- usar
::duas vezes: a expansão se torna ambígua; - remover zeros à direita: somente zeros à esquerda de um hexteto podem ser omitidos;
- comprimir um único hexteto zero na forma canônica: a RFC 5952 reserva
::para uma sequência maior; - achar que todo prefixo é
/64:/64é central em LANs e SLAAC, mas rotas e finalidades especiais usam outros comprimentos; - calcular a LAN pelo número mínimo de hosts como no IPv4: o plano IPv6 preserva espaço para operação e hierarquia;
- procurar broadcast: IPv6 usa multicast para grupos definidos;
- confundir link-local com falha: ele é parte normal da operação IPv6;
- tratar ULA como firewall ou exigir NAT: ULA define endereçamento local, não proteção nem tradução obrigatória;
- derivar sempre o identificador do MAC: recomendações modernas evitam incorporar endereço de enlace estável;
- esperar um único endereço por interface: múltiplos endereços e escopos são normais;
- bloquear todo ICMPv6: isso interrompe funções essenciais como NDP, DAD e descoberta do caminho.
O que você deve guardar
IPv6 organiza 128 bits em oito hextetos. Zeros à esquerda são removidos e a maior sequência de hextetos zero pode virar :: uma única vez. O prefixo com barra continua definindo a parte compartilhada; /64 é o tamanho usual de sub-rede em muitas LANs.
Unicast identifica uma interface, anycast conduz a uma entre várias e multicast alcança um grupo. Link-local, global unicast, ULA e endereços especiais convivem na mesma interface. SLAAC combina informações do Router Advertisement com um identificador e usa DAD antes de ativar o endereço.
Referências
- IETF — RFC 8200: Internet Protocol, Version 6 Specification. Acesso em 28 ago. 2026.
- IETF — RFC 4291: IP Version 6 Addressing Architecture. Acesso em 28 ago. 2026.
- IETF — RFC 5952: A Recommendation for IPv6 Address Text Representation. Acesso em 28 ago. 2026.
- IETF — RFC 4862: IPv6 Stateless Address Autoconfiguration. Acesso em 28 ago. 2026.
- IETF — RFC 8064: Recommendation on Stable IPv6 Interface Identifiers. Acesso em 28 ago. 2026.
- IETF — RFC 8981: Temporary Address Extensions for SLAAC. Acesso em 28 ago. 2026.
- IETF — RFC 4193: Unique Local IPv6 Unicast Addresses. Acesso em 28 ago. 2026.
- IETF — RFC 3849: IPv6 Address Prefix Reserved for Documentation. Acesso em 28 ago. 2026.
