IPv6 do zero para quem administra servidores: endereços, prefixos e roteamento básico

Capítulo 6

Tempo estimado de leitura: 7 minutos

+ Exercício

O que muda no IPv6 para quem administra servidores

IPv6 é o protocolo de endereçamento e roteamento que substitui (e convive com) o IPv4. Para operação de servidores, o foco prático é: como ler um endereço, identificar o tipo (global, link-local, unique local), entender prefixos (principalmente /64), verificar rota padrão (gateway) e saber como o host recebe endereços (SLAAC e/ou DHCPv6). Em ambientes reais, quase sempre você terá dual-stack (IPv4 e IPv6 ativos), e isso afeta DNS (registros AAAA), firewall e o caminho que as aplicações escolhem para se conectar.

Como ler e abreviar endereços IPv6

Formato básico

Um endereço IPv6 tem 128 bits, normalmente escrito em 8 grupos (hextetos) de 16 bits em hexadecimal, separados por :. Exemplo completo:

2001:0db8:0000:0000:0000:0000:0000:0042

Regras de abreviação (as que você usa no dia a dia)

  • Remover zeros à esquerda em cada hexteto: 0db8 vira db8, 0042 vira 42.
  • Comprimir uma sequência contínua de hextetos “0000” usando :: (apenas uma vez por endereço, para não gerar ambiguidade).

Aplicando as regras ao exemplo:

2001:db8::42

Dica operacional

Quando você vê ::, pense “aqui tem um bloco de zeros” e conte quantos hextetos faltam para completar 8 grupos.

Tipos de endereço IPv6 que você precisa reconhecer

1) Global Unicast (endereços roteáveis na Internet)

São os endereços equivalentes ao “público” no IPv4 (com a diferença de que, em IPv6, é comum o servidor ter endereço global direto na interface). Em geral começam com 2xxx ou 3xxx (prefixo global unicast 2000::/3).

Continue em nosso aplicativo e ...
  • Ouça o áudio com a tela desligada
  • Ganhe Certificado após a conclusão
  • + de 5000 cursos para você explorar!
ou continue lendo abaixo...
Download App

Baixar o aplicativo

Exemplo:

2001:db8:1234:10::50/64

Uso típico: acesso externo ao servidor, comunicação entre sites, serviços publicados.

2) Link-local (sempre existe, só vale no enlace)

Começa com fe80::/10. O sistema operacional cria automaticamente um endereço link-local por interface, mesmo sem roteador e mesmo sem IPv6 “configurado”. Ele funciona apenas dentro do mesmo segmento L2 (mesma rede local), não é roteado.

Exemplo:

fe80::a00:27ff:fe4e:66a1

Uso típico: vizinhança IPv6 (NDP), descoberta de roteador, e muitas vezes o gateway (próximo salto) aparece como link-local.

Importante: ao testar conectividade com link-local, você normalmente precisa informar a interface (zone index), por exemplo:

ping -6 fe80::1%eth0

3) Unique Local Address (ULA) (endereços “privados” em IPv6)

Começa com fc00::/7 (na prática, fdxx:... é o mais comum). É o equivalente conceitual a redes privadas: roteável internamente, não deve ser anunciado na Internet pública.

Exemplo:

fd12:3456:789a:10::20/64

Uso típico: redes internas, backends, comunicação entre serviços sem exposição pública, ambientes híbridos onde você quer endereços estáveis internos.

Prefixos IPv6: /64 e outros na prática

O que significa o “/64”

O sufixo /64 indica quantos bits são de rede. Em /64, os primeiros 64 bits são o prefixo da rede e os últimos 64 bits identificam o host (interface ID). Em redes LAN comuns, /64 é o padrão porque o SLAAC (autoconfiguração) foi desenhado para operar naturalmente com /64.

Exemplo de rede:

2001:db8:1234:10::/64

Hosts nessa rede terão endereços como:

2001:db8:1234:10::50

Quando você verá outros prefixos

  • /128: rota para um único host (muito usado em loopback, rotas estáticas específicas, ou quando o provedor entrega um endereço único). Ex.: 2001:db8::dead:beef/128.
  • /56, /48: delegação de prefixo para um site (você subdivide em vários /64 internamente). Ex.: provedor entrega 2001:db8:1234:1000::/56 e você cria VLANs como ...:1001::/64, ...:1002::/64 etc.
  • /127: comum em links ponto-a-ponto entre roteadores (reduz espaço de varredura e evita alguns problemas históricos de /64 em P2P). Ex.: 2001:db8:1:2::/127.

Armadilha comum

Colocar uma LAN em /120, /112 etc. pode quebrar SLAAC e gerar comportamentos inesperados. Para redes de servidores em um mesmo segmento, prefira /64 salvo exigência clara de design.

Gateway e rota padrão em IPv6

Rota padrão

Em IPv6, a rota padrão é ::/0. Ela aponta para o próximo salto (gateway), que frequentemente é um endereço link-local do roteador (por exemplo, fe80::1), associado a uma interface.

Conceito: se o destino não está em nenhuma rota mais específica, o host envia para ::/0.

Como isso aparece no sistema

Você verá algo como:

default via fe80::1 dev eth0

Note que o gateway é link-local; isso é normal. O roteador é alcançável no enlace local, e ele sabe encaminhar para fora.

Como o servidor recebe IPv6: SLAAC vs DHCPv6 (conceitual e operacional)

SLAAC (Stateless Address Autoconfiguration)

No SLAAC, o roteador anuncia o prefixo da rede via Router Advertisement (RA). O host combina esse prefixo com um identificador de interface para formar seu endereço. O host também aprende a rota padrão via RA.

  • Vantagens operacionais: simples, “plug and play”, menos dependência de servidor DHCP.
  • Pontos de atenção: endereços podem mudar (privacidade/temporary addresses), e nem sempre você tem controle central de “quem pegou qual IP” (embora existam logs e mecanismos auxiliares).

DHCPv6

No DHCPv6, um servidor DHCPv6 entrega endereços e/ou parâmetros. Diferente do IPv4, o DHCPv6 pode coexistir com RA. Em muitos ambientes, o RA continua fornecendo a rota padrão, e o DHCPv6 fornece DNS e/ou endereço.

  • Vantagens operacionais: controle central, reservas, auditoria, parâmetros consistentes.
  • Pontos de atenção: depende de infraestrutura DHCPv6 e do desenho correto com RA (flags M/O) para os hosts se comportarem como esperado.

Checklist mental rápido

  • Servidor tem endereço global/ULA? Pode ter vindo de SLAAC, DHCPv6 ou configuração estática.
  • Servidor tem rota padrão ::/0? Normalmente vem de RA.
  • Servidor tem DNS IPv6 configurado? Pode vir de DHCPv6 ou RA (RDNSS), dependendo do ambiente.

Dual-stack: quando IPv6 e IPv4 coexistem

Em dual-stack, o servidor tem IPv4 e IPv6. Muitas bibliotecas e sistemas preferem IPv6 quando existe um registro AAAA no DNS e a conectividade IPv6 parece funcional. Isso cria cenários em que “o IPv4 funciona, mas o cliente tenta IPv6 e falha”, parecendo instabilidade.

Efeito prático em aplicações

  • Se o DNS retorna AAAA e A, o cliente pode tentar IPv6 primeiro.
  • Se o IPv6 está parcialmente quebrado (sem rota, firewall bloqueando, upstream sem retorno), você vê timeouts antes do fallback para IPv4 (dependendo do algoritmo Happy Eyeballs e timeouts).

DNS em IPv6: registro AAAA e armadilhas comuns

AAAA

Para publicar um serviço em IPv6, você cria um registro AAAA apontando para o endereço IPv6 global do servidor.

TipoExemploUso
Aapp.exemplo.com -> 203.0.113.10IPv4
AAAAapp.exemplo.com -> 2001:db8:1234:10::50IPv6

Cenário típico de incidente

Você publica um AAAA, mas o firewall/roteamento IPv6 não está pronto. Resultado: clientes que tentam IPv6 não conseguem conectar (ou demoram muito), mesmo que o IPv4 esteja perfeito.

Regra operacional: só publique AAAA quando o caminho IPv6 fim-a-fim estiver validado (entrada, saída, retorno, firewall, serviço escutando).

Firewall em IPv6: o “esqueci de liberar” mais comum

IPv6 não “herda” regras de IPv4. Você precisa ter política e regras específicas para IPv6. Em muitos servidores, é possível que:

  • IPv4 esteja liberado no firewall, mas IPv6 esteja com política default deny.
  • O serviço esteja escutando apenas em IPv4 (bind em 0.0.0.0) e não em IPv6 (::), ou vice-versa.

Verificações rápidas

  • Ver se o serviço está escutando em IPv6 (conceito de bind): se ele escuta em :: ou no IPv6 específico.
  • Validar regras de entrada para a porta no IPv6.
  • Validar regras de saída (egress) se o servidor precisa acessar APIs externas via IPv6.

Práticas de verificação: conectividade e rotas em IPv6

1) Ver endereços IPv6 na interface

Objetivo: confirmar se há link-local e se há global/ULA, e se o prefixo parece correto.

# Linux (iproute2) - exemplo conceitual de comando comum no dia a dia: ver IPv6 por interface

O que observar:

  • Existe fe80::... (link-local)? Se não, há algo muito errado na interface.
  • Existe endereço global (2xxx/3xxx) ou ULA (fdxx)?
  • O prefixo está como esperado (geralmente /64 em LAN)?

2) Ver rotas IPv6 (incluindo default)

Objetivo: confirmar a presença de ::/0 e rotas para o prefixo local.

# Linux - ver tabela de rotas IPv6
ip -6 route

O que observar:

  • Há uma rota default (equivalente a ::/0)?
  • O next-hop é link-local (fe80::...) e está associado à interface correta?
  • Existe rota para o prefixo local (ex.: 2001:db8:1234:10::/64 dev eth0)?

3) Testar conectividade local (link-local)

Objetivo: validar que a pilha IPv6 e o enlace local estão funcionando (L2/L3 local).

ping -6 fe80::1%eth0

Se falhar:

  • Confirme a interface correta após o %.
  • Verifique se há RA/NDP no segmento (pode ser bloqueio em switch/segurança de rede).

4) Testar conectividade com o gateway e com a Internet

Objetivo: validar caminho até o roteador e saída.

# Ping no gateway (endereço do roteador, muitas vezes link-local)
ping -6 fe80::1%eth0
# Ping em um destino IPv6 externo conhecido (substitua por um alvo do seu ambiente)
ping -6 2001:db8::1

Se o ping externo falhar, mas o gateway responder:

  • Problema provável de roteamento upstream, filtro de ICMPv6, ou ausência de rota de retorno.
  • Verifique se o provedor/roteador anuncia e roteia seu prefixo global corretamente.

5) Ver o caminho (traceroute) em IPv6

Objetivo: identificar em que salto o tráfego para.

traceroute -6 2001:db8::1

Interpretação prática:

  • Para no primeiro salto: rota padrão/gateway/RA.
  • Para após alguns saltos: problema no upstream, política de firewall/ACL, ou rota de retorno.

6) Ver resolução DNS e preferência por IPv6

Objetivo: confirmar se o nome resolve AAAA e se isso está causando tentativa de IPv6.

# Consultar AAAA
dig AAAA app.exemplo.com
# Consultar A
dig A app.exemplo.com

Se existe AAAA e o IPv6 está quebrado, você pode ver falhas intermitentes em clientes.

Cenários comuns e como diagnosticar

Cenário 1: “IPv6 está ativo no servidor, mas a aplicação não responde”

Sintoma: o servidor tem IPv6 global/ULA, mas conexões para a porta do serviço via IPv6 falham.

Checklist prático:

  • O serviço está escutando em IPv6? Se ele escuta apenas em IPv4, conexões IPv6 nunca vão entrar. Procure por bind em :: ou no IPv6 específico.
  • Firewall IPv6 liberou a porta? Regras de IPv4 não valem para IPv6. Garanta allow de entrada na porta/serviço para o tráfego IPv6.
  • Há rota e retorno? Se você está publicando um IPv6 global, precisa de roteamento correto do prefixo e retorno funcionando. Teste traceroute de fora para dentro (quando possível) e valide rotas no roteador.
  • ICMPv6 não está sendo bloqueado indevidamente? Bloquear ICMPv6 “por padrão” costuma quebrar descoberta de MTU e NDP, causando falhas estranhas. Em vez de bloquear tudo, aplique política adequada permitindo tipos essenciais.

Cenário 2: Dual-stack com lentidão ou timeouts

Sintoma: alguns clientes demoram para conectar, mas eventualmente conectam (ou só conectam via IPv4).

Checklist prático:

  • Existe AAAA no DNS? Se sim, clientes tentarão IPv6.
  • O IPv6 tem conectividade fim-a-fim? Teste do cliente para o servidor via IPv6 (porta do serviço), não apenas ping.
  • Firewall/ACL no caminho pode estar dropando SYN/ACK IPv6 ou bloqueando retorno.
  • Preferência de endereço: alguns sistemas preferem IPv6; se o IPv6 estiver “meio funcionando”, o usuário percebe como instabilidade.

Cenário 3: Publicou AAAA e “derrubou” parte dos acessos

Sintoma: após criar AAAA, parte dos usuários não acessa.

Checklist prático:

  • Servidor está acessível via IPv6 na porta do serviço? Teste com um cliente em rede IPv6 real.
  • Firewall IPv6 no servidor e no perímetro está liberando?
  • Endereço AAAA é global correto? Evite publicar ULA (fd..) ou link-local (fe80..) no DNS público.
  • Roteamento do prefixo: o provedor precisa rotear seu prefixo até você; se você trocou prefixo e o DNS ficou antigo, quebra.

Passo a passo: roteiro de troubleshooting IPv6 em servidor

Passo 1: confirmar endereços e tipo

  • Liste IPv6 na interface e identifique: link-local (fe80), global (2xxx/3xxx), ULA (fdxx).
  • Confirme prefixo esperado (muito comum /64).

Passo 2: confirmar rota padrão e next-hop

  • Verifique se existe default (::/0).
  • Confirme se o next-hop (muitas vezes fe80::...) está na interface correta.

Passo 3: testar conectividade por camadas operacionais

  • Ping no gateway (link-local com %interface).
  • Ping/traceroute para um destino IPv6 externo.
  • Teste a porta do serviço via IPv6 (por exemplo, com um cliente que suporte IPv6 e conecte diretamente ao IPv6 do servidor).

Passo 4: validar DNS e impacto em clientes

  • Verifique se há AAAA publicado e se ele aponta para o IPv6 correto.
  • Se o IPv6 não está pronto, remova/ajuste AAAA temporariamente para evitar que clientes tentem IPv6.

Passo 5: revisar firewall IPv6 e bind do serviço

  • Confirme que o serviço escuta em IPv6 (:: ou endereço específico).
  • Garanta regras de entrada/saída para IPv6.
  • Evite bloquear ICMPv6 de forma ampla; permita o necessário para funcionamento de rede (NDP e PMTUD).

Agora responda o exercício sobre o conteúdo:

Em um servidor com IPv6 ativo, por que é comum a rota padrão (::/0) apontar para um gateway com endereço link-local (fe80::/10) e aparecer associada a uma interface?

Você acertou! Parabéns, agora siga para a próxima página

Você errou! Tente novamente.

Em IPv6, a rota padre3o e9 ::/0 e muitas vezes aponta para o enderee7o link-local do roteador, que sf3 vale no enlace. Por isso a rota inclui a interface, indicando onde esse prf3ximo salto este1 alcane7e1vel.

Próximo capitúlo

ARP e Neighbor Discovery: como IP vira entrega na rede local

Arrow Right Icon
Baixe o app para ganhar Certificação grátis e ouvir os cursos em background, mesmo com a tela desligada.
  • Leia este curso no aplicativo para ganhar seu Certificado Digital!
  • Ouça este curso no aplicativo sem precisar ligar a tela do celular;
  • Tenha acesso 100% gratuito a mais de 4000 cursos online, ebooks e áudiobooks;
  • + Centenas de exercícios + Stories Educativos.