ping6.net
Fundamentos

Tipos de Endereço IPv6: Global, Link-Local e Multicast Explicados

Aprenda os diferentes tipos de endereços IPv6: unicast global para a Internet, link-local para LANs, multicast para grupos e muito mais.

ping6.net20 de janeiro de 20249 min read
IPv6tipos de endereçounicastmulticastlink-localanycast

Os endereços IPv6 funcionam de forma diferente do IPv4 em como eles entregam pacotes. Entender essas diferenças importa quando você está depurando problemas de rede ou projetando sistemas.

TL;DR - Resumo rápido

Pontos-chave:

  • IPv6 usa unicast (um-para-um), multicast (um-para-muitos) e anycast (um-para-o-mais-próximo) — sem broadcast
  • Unicast global (2xxx/3xxx) para Internet, link-local (fe80::) para segmentos locais, ULA (fd00::) para redes privadas
  • Multicast (ffxx::) substitui broadcast; multicast solicited-node torna a descoberta de vizinhos eficiente
  • Endereços link-local requerem IDs de zona como fe80::1%eth0 para especificar a interface

Ir para: Unicast Global | Multicast | Referência Rápida

Três Métodos de Entrega#

O IPv6 usa três modelos fundamentais de entrega:

  • Unicast: Um remetente para um receptor. A maneira padrão de se comunicar com um host específico.
  • Multicast: Um remetente para múltiplos receptores. Eficiente para comunicação em grupo.
  • Anycast: Um remetente para o receptor mais próximo em um grupo. Usado para balanceamento de carga e redundância.

Sem Broadcast no IPv6

O IPv6 elimina broadcast completamente. Onde o IPv4 faria broadcast para todos os hosts (como requisições ARP inundando sua rede), o IPv6 usa multicast direcionado. Isso reduz tráfego desnecessário e melhora a eficiência da rede.

Endereços Unicast#

Todo endereço unicast identifica exatamente uma interface de rede. Envie um pacote para esse endereço e exatamente um host o recebe.

Endereços Unicast Globais (2000::/3)#

Estes são seus endereços IPv6 públicos, roteáveis em toda a Internet. Se um endereço começa com 2 ou 3, é um endereço unicast global.

2001:0db8:85a3:0000:0000:8a2e:0370:7334
│         │         │              │
│         │         │              └─ ID da Interface (64 bits)
│         │         └──────────────── ID da Sub-rede (16 bits)
│         └────────────────────────── Prefixo do Site (48 bits)
└──────────────────────────────────── Prefixo de Roteamento Global

A estrutura típica divide uma alocação /48 assim:

BitsComponenteFinalidade
0-47Prefixo de Roteamento GlobalSua alocação do seu ISP ou RIR
48-63ID da Sub-rede65.536 sub-redes por site
64-127ID da InterfaceGerado a partir do endereço MAC ou randomizado

Provedores reais tipicamente atribuem um /48 para sites, um /56 para pequenas empresas ou um /64 para usuários residenciais. Cada sub-rede /64 contém 18 quintilhões de endereços, razão pela qual você cria sub-redes em limites /64.

Endereços de Documentação

O prefixo 2001:db8::/32 existe apenas para documentação e exemplos. Não use esses endereços em produção. Todo exemplo em RFCs usa 2001:db8 por uma razão—eles não entrarão em conflito com redes reais.

Toda interface IPv6 gera automaticamente um endereço link-local quando você habilita o IPv6. Esses endereços funcionam apenas no segmento de rede local e nunca são roteados.

fe80::1
fe80::a1b2:c3d4:e5f6:7890

Endereços link-local são obrigatórios para o IPv6 funcionar. Descoberta de Vizinhos, Solicitação de Roteador e outros protocolos principais os exigem. Sua interface pode não ter um endereço global, mas sempre terá um endereço link-local.

IDs de Zona: Especificando a Interface#

Como fe80::1 pode existir em todas as interfaces, você precisa especificar qual interface você quer dizer:

ping6 fe80::1%eth0      # Linux
ping6 fe80::1%en0       # macOS
ping fe80::1%12         # Windows (use o índice da interface)

O símbolo % precede o ID de zona. No Linux e macOS, use o nome da interface. No Windows, use o índice da interface de netsh interface ipv6 show interface.

Endereços Locais Únicos (fc00::/7)#

Pense neles como a versão IPv6 dos endereços privados RFC 1918. Eles não são globalmente roteáveis, tornando-os adequados para redes internas.

Na prática, você verá endereços fd00::/8 porque o intervalo fc00::/8 requer alocação central que nunca foi implementada. Gere o ID global de 40 bits aleatoriamente:

fd 3a:c7b1:29f4 :0001:0000:0000:0000:0001
│  └──────────┘  │    └──────────────────┘
│       │        │             │
│       │        │             └─ ID da Interface (64 bits)
│       │        └─────────────── ID da Sub-rede (16 bits)
│       └──────────────────────── ID Global Aleatório (40 bits)
└──────────────────────────────── Prefixo ULA (fd = atribuído localmente)

Quando você gera esse identificador de 40 bits aleatoriamente, minimiza o risco de colisão se duas redes se fundirem depois. Não use apenas fd00::1 em todos os lugares.

Endereços Especiais#

Dois endereços têm finalidades únicas:

Loopback (::1): Envie pacotes para si mesmo. O equivalente IPv6 de 127.0.0.1. O tráfego para ::1 nunca deixa o host.

Não Especificado (::): Representa a ausência de um endereço. Os hosts usam :: como endereço de origem durante DHCPv6 ou quando ainda não configuraram um endereço. Você não pode enviar pacotes para ::.

Endereços Multicast (ff00::/8)#

Todo endereço começando com ff é multicast. O pacote vai para todas as interfaces que ingressaram naquele grupo multicast.

Estrutura do Endereço#

ff 0 2 : 0000:0000:0000:0000:0001
│  │ │   └──────────────────────┘
│  │ │              │
│  │ │              └─ ID do Grupo (112 bits)
│  │ └──────────────── Escopo (4 bits)
│  └─────────────────── Flags (4 bits)
└────────────────────── Prefixo multicast

O campo de escopo determina quão longe o pacote multicast viaja:

EscopoValorAlcance
Local da interface1Apenas esta interface
Link-local2Segmento de rede local
Administrativo local4Limite administrativo
Site-local5Site da organização
Organização-local8Múltiplos sites na organização
GlobaleInternet inteira

Grupos Multicast Essenciais#

Vários endereços multicast servem funções críticas:

EndereçoFinalidade
ff02::1Todos os nós no link (substitui broadcast IPv4)
ff02::2Todos os roteadores no link
ff02::5Todos os roteadores OSPF
ff02::6Todos os roteadores designados OSPF
ff02::9Todos os roteadores RIP
ff02::1:2Todos os servidores/relays DHCPv6
ff02::fbmDNSv6 (DNS multicast)

Multicast de Nó Solicitado#

Este mecanismo torna a descoberta de vizinhos eficiente. Em vez de perguntar a cada host "quem tem este IP?" (como ARP), o IPv6 pergunta a um pequeno grupo multicast.

Todo endereço unicast gera automaticamente um endereço multicast de nó solicitado correspondente:

Unicast:        2001:db8:1234:5678::abcd:ef12:3456
                                      └────┬─────┘

                                     (últimos 24 bits)

Nó Solicitado:  ff02::1:ff12:3456 ────────┘

Quando um host precisa resolver 2001:db8:1234:5678::abcd:ef12:3456, ele envia uma Solicitação de Vizinho para ff02::1:ff12:3456. Apenas hosts com endereços terminando em 12:3456 processam a requisição. Isso reduz drasticamente a sobrecarga de multicast em comparação com broadcast para todos os hosts.

Endereços Anycast#

Endereços anycast parecem idênticos aos endereços unicast—não há prefixo especial. A diferença é a configuração: você atribui o mesmo endereço a múltiplas interfaces, e o roteamento entrega pacotes para a topologicamente mais próxima.

Casos de Uso Comuns#

Servidores Raiz DNS: Todas as 13 letras de servidores raiz (a.root-servers.net até m.root-servers.net) usam anycast. Os mesmos endereços IP existem em centenas de locais no mundo todo. Sua consulta alcança qualquer servidor raiz que estiver mais próximo.

Servidores de Borda CDN: Redes de distribuição de conteúdo usam anycast para rotear usuários para servidores de cache próximos. Mesmo endereço, diferentes localizações geográficas.

Roteadores de Relay 6to4: O endereço 192.88.99.1 (IPv4) e 2002:c058:6301:: (IPv6) são endereços anycast para relays 6to4.

Anycast de Sub-rede-Roteador#

Toda sub-rede tem automaticamente um endereço anycast reservado com o identificador de interface definido como zero:

Sub-rede:       2001:db8:1234:5678::/64
Sub-rede-Roteador: 2001:db8:1234:5678::

Roteadores naquela sub-rede devem responder a este endereço. Na prática, é raramente usado.

Referência Rápida: Identificando Tipos de Endereço#

Olhe para os primeiros caracteres para identificar qualquer endereço IPv6:

Começa comTipoEscopo
::1LoopbackLocal do host
::Não especificadoN/A
fe80:Unicast link-localLink-local
fc00: ou fd00:Unicast local únicoPrivado
ff00: até ffff:MulticastVaria (verifique o 2º dígito)
2... ou 3...Unicast globalInternet

Todo o resto é reservado ou ainda não atribuído.

Verificando Seus Endereços#

Veja quais endereços seu sistema tem configurados:

Linux:

ip -6 addr show

macOS:

ifconfig | grep inet6

Windows:

netsh interface ipv6 show addresses

Você normalmente verá:

  • Múltiplos endereços link-local (fe80::), um por interface
  • Um ou mais endereços unicast globais se você tiver conectividade IPv6
  • O endereço de loopback ::1 na interface de loopback
  • Várias associações de grupo multicast (geralmente não exibidas por padrão)

Testando Multicast#

Envie uma requisição de eco ICMPv6 para todos os nós no seu link local:

# Substitua eth0 pelo nome da sua interface
ping6 ff02::1%eth0

Você receberá respostas de todos os dispositivos habilitados para IPv6 naquele segmento de rede. Isso é útil para descoberta, mas pode ser ruidoso em redes grandes.

Verifique se há roteadores presentes:

ping6 ff02::2%eth0

Apenas roteadores devem responder.

Valide Tipos de Endereço

Use o Validador IPv6 para verificar qualquer endereço. Digite um endereço e veja instantaneamente seu tipo, escopo e se é válido. Útil ao solucionar problemas de configurações.

Implicações Práticas#

Diferentes tipos de endereço afetam como você projeta redes e soluciona problemas:

Políticas de segurança: Filtre unicast global no seu firewall, mas link-local deve passar para descoberta de vizinhos. Bloquear fe80::/10 quebra o IPv6 completamente.

Vinculação de aplicativos: Servidores que vinculam a :: escutam em todos os endereços (como 0.0.0.0 no IPv4). Vincular a ::1 restringe apenas ao localhost.

Tabelas de roteamento: Endereços link-local aparecem como próximos saltos nas tabelas de roteamento, o que confunde pessoas acostumadas com IPv4. Isso é normal—roteadores usam endereços link-local para estabilidade, pois eles nunca mudam.

DNS: Publique apenas endereços unicast globais no DNS. Nunca publique endereços link-local ou locais únicos em zonas DNS públicas.

Entender esses tipos de endereço não é acadêmico—é necessário para configurar firewalls, depurar conectividade e projetar redes que realmente funcionam.

Artigos Relacionados#

Verifique Tipos de Endereços

Use o Validador IPv6 para verificar qualquer endereço. Digite um endereço e veja instantaneamente seu tipo, escopo e validade. Útil ao depurar configurações.