LICENÇA DE USO (CREATIVE COMMONS) Todo o conteúdo deste material, incluindo textos e figuras (como os arquivos no diretório `img/`), está licenciado sob a Creative Commons Atribuição 4.0 Internacional (CC BY 4.0). Isso significa que você pode compartilhar e adaptar este trabalho, mesmo para fins comerciais, desde que dê o crédito apropriado.
## Estrutura do Cabeçalho IPv6 Uma das maiores melhorias: eficiência no roteamento. * **IPv4:** Cabeçalho **variável** de 20 a 60 bytes (com opções). * Roteadores precisam ler o campo "Header Length" e processar opções. * **IPv6:** Cabeçalho **fixo** de 40 bytes. * Roteadores não perdem tempo: o tamanho é sempre 40. * Processamento muito mais rápido (otimizado para hardware). **O que foi removido do cabeçalho IPv4?** * `Header Length` (tamanho fixo) * `Header Checksum` (removido; TCP/UDP já fazem verificação) * `Identification`, `Flags`, `Fragment Offset` (movidos para... ⬇️) --- ## Cabeçalhos de Extensão Para manter a flexibilidade, o IPv6 moveu as "Opções" do IPv4 para **Cabeçalhos de Extensão** opcionais. * O roteador só lê o cabeçalho principal de 40 bytes. * O campo `Next Header` aponta para o próximo cabeçalho (TCP, UDP, ou um cabeçalho de extensão). * Roteadores de "meio de caminho" (core) **não** processam as extensões, apenas o destino final. **Tipos de Extensão:** * `Routing` (Especifica rota) * `Fragment` (Fragmentação) * `Authentication Header (AH)` (IPsec) * `Encapsulating Security Payload (ESP)` (IPsec) --- ## Neighbor Discovery Protocol (NDP) O **NDP** é o "canivete suíço" do IPv6. É um protocolo baseado em **ICMPv6** que substitui um conjunto de ferramentas do IPv4: | Função no IPv6 (NDP) | Protocolo que Substitui no IPv4 | | :--- | :--- | | **Resolução de Endereços** (MAC) | **ARP** | | **Descoberta de Roteadores** (RS/RA) | **ICMP Router Discovery** | | **Redirecionamento de Rota** | **ICMP Redirect** | | **Autoconfiguração** | (DHCP) | | **Detecção de End. Duplicado (DAD)** | (ARP "gratuito") | | **Detecção de Vizinho Inalcançável** | (N/A) | --- ## NDP: Mensagens ICMPv6 Principais O NDP usa 5 tipos de mensagens: 1. **Router Solicitation (RS)** * Host -> `ff02::2` (All-Routers) * *Tradução:* "Ei, tem algum roteador aí?" 2. **Router Advertisement (RA)** * Roteador -> `ff02::1` (All-Nodes) * *Tradução:* "Sim, eu sou o gateway. O prefixo da rede é `.../64` e as flags são M=0, O=1." 3. **Neighbor Solicitation (NS)** * Host A -> Host B (via *Solicited-Node Multicast*) * *Tradução:* "Qual é o MAC do `...::2`?" (O novo ARP Request) 4. **Neighbor Advertisement (NA)** * Host B -> Host A * *Tradução:* "Meu MAC é `aa:bb:cc:dd:ee:ff`." (O novo ARP Reply) 5. **Redirect** (Informa sobre rotas melhores) --- ## NDP: Resolução de Endereços (O Novo ARP) **Cenário:** Host A (`...::1`) quer enviar um pacote para o Host B (`...::2`). 1. **Host A** (Sabe o IP, não sabe o MAC) * Envia **Neighbor Solicitation (NS)**. * Origem: `...::1` * Destino: `ff02::1:ff00:2` (Solicited-Node Multicast) * *Isso é melhor que o ARP (broadcast), pois só o Host B processa.* 2. **Host B** (Ouve o multicast e reconhece seu IP) * Envia **Neighbor Advertisement (NA)**. * Origem: `...::2` * Destino: `...::1` (Unicast) * *Contém seu endereço MAC.* 3. **Host A** * Recebe o NA e armazena o MAC na **Neighbor Cache** (A nova "Tabela ARP"). --- ## NDP: Detecção de Endereços Duplicados (DAD) Antes de usar um endereço IPv6 (manual, SLAAC ou DHCP), o host deve executar o DAD. **Processo:** 1. Host gera o endereço que deseja usar (ex: `2001:db8::10`). 2. Host envia um **Neighbor Solicitation (NS)** para o endereço que ele mesmo quer usar. * *Tradução:* "Alguém aí já está usando o IP `2001:db8::10`?" 3. **Cenário A: Silêncio (Sem Resposta)** * Ninguém respondeu com um NA. * **Resultado:** O endereço é único e pode ser usado. 4. **Cenário B: Resposta (NA)** * Outro host responde: "Ei, esse IP é meu!" * **Resultado:** Conflito. O endereço está duplicado e não pode ser usado. --- ## Segurança no IPv6 O IPv6 foi projetado com segurança em mente. **1. IPsec Obrigatório** * No IPv4, IPsec é opcional. No IPv6, é parte **obrigatória** do protocolo. * **AH (Authentication Header):** Garante autenticidade e integridade (o pacote não foi modificado). * **ESP (Encapsulating Security Payload):** Garante confidencialidade (criptografia). **2. SEND (Secure Neighbor Discovery)** * Extensão de segurança para o NDP que previne *spoofing* de RAs e NAs (ataques Man-in-the-Middle). * Usa **CGA (Cryptographically Generated Addresses)** (Endereços gerados a partir de chaves públicas). **3. Dificuldade de Scaneamento (Scanning)** * Escanear uma rede `/64` (com $2^{64}$ hosts) é matematicamente inviável, ao contrário de uma `/24` no IPv4. --- ## Segurança: Novos Desafios Apesar das melhorias, o IPv6 introduz novos desafios: 1. **Configuração Incorreta (Dual-Stack)** * Muitos administradores focam no firewall IPv4 e esquecem do IPv6, deixando a rede exposta. * "Ataque via IPv6 em uma rede IPv4". 2. **Firewalls Desatualizados** * Equipamentos antigos que não inspecionam cabeçalhos de extensão IPv6. 3. **Tunelamento (6in4, Teredo)** * Túneis podem ser usados para *burlar* firewalls IPv4, encapsulando tráfego malicioso dentro de pacotes IPv4 permitidos. 4. **Novos Ataques** * Exploração de cabeçalhos de extensão, *spoofing* de RA (se o SEND não for usado). --- ## Técnicas de Transição (IPv4 <-> IPv6) IPv4 e IPv6 não são diretamente compatíveis. Técnicas são necessárias para a coexistência. **1. Dual Stack (Pilha Dupla) - [RECOMENDADO]** * O dispositivo (host, roteador) executa **ambos** os protocolos simultaneamente. * Tem um endereço IPv4 e um endereço IPv6. * Fala IPv4 com destinos IPv4 e IPv6 com destinos IPv6. **2. Tunelamento (Tunneling)** * Encapsula pacotes IPv6 *dentro* de pacotes IPv4 (ou vice-versa) para atravessar redes incompatíveis. * Ex: 6in4, 6to4, Teredo. **3. Tradução (Translation)** * Converte um protocolo no outro. * Ex: **NAT64** (permite rede IPv6-only acessar servidores IPv4). --- ## Transição: 1. Dual Stack (Recomendado) * **Conceito:** A solução mais simples e robusta. * **Funcionamento:** A interface tem ambas as configurações. ``` Interface: eth0 IPv4: 192.168.1.10/24 Gateway IPv4: 192.168.1.1 IPv6: 2001:db8:1::10/64 Gateway IPv6: fe80::1 ``` * O S.O. usa "Happy Eyeballs" (RFC 8305) para testar ambas as conexões e usar a mais rápida (geralmente prefere IPv6). * **Vantagem:** Compatibilidade total. * **Desvantagem:** Gerenciamento de duas redes, dobra a superfície de ataque. --- ## Transição: 2. Tunelamento (6in4) * **Conceito:** "Pacote dentro de um pacote". * **Uso:** Conectar "ilhas" IPv6 através da vasta Internet IPv4. * **Funcionamento (6in4):** 1. Pacote IPv6 é criado. 2. É encapsulado *dentro* de um pacote IPv4 (Protocolo 41). 3. Atravessa a rede IPv4. 4. O destino desencapsula e lê o pacote IPv6. `[Cabeçalho IPv4 | Cabeçalho IPv6 | Dados]` * **Tipos:** Manual (roteador a roteador), Tunnel Broker (ex: Hurricane Electric), 6to4 (automático, obsoleto), Teredo (atravessa NAT). --- ## Transição: 3. Tradução (NAT64 + DNS64) * **Uso:** Permitir que clientes **IPv6-Only** acessem servidores **IPv4-Only**. * **Funcionamento:** 1. Cliente (só IPv6) consulta `site-ipv4.com` no DNS. 2. O **DNS64** vê que o site só tem registro `A` (IPv4). 3. O DNS64 "sintetiza" um registro `AAAA` (IPv6) usando um prefixo especial (ex: `64:ff9b::[IP_do_site_v4]`). 4. Cliente (IPv6) envia o pacote para `64:ff9b::...` 5. O gateway **NAT64** recebe, traduz o pacote para IPv4 e o encaminha. * **Desvantagem:** Quebra a conectividade ponta-a-ponta; é complexo. --- ## Adoção do IPv6 no Mundo e no Brasil **Estatísticas Globais (Google, 2024):** * **Adoção global:** ~40-45% dos usuários. * **Países líderes:** * França: ~75% * Índia: ~70% * Alemanha: ~65% * EUA: ~48% **Adoção no Brasil (2024):** * **Marco: Brasil ultrapassou 50% de adoção em Fev/2024!** * **Operadoras (Vivo, TIM, Claro):** Lideram com > 70% de tráfego IPv6. * **Desafio:** Adoção baixa em sites de conteúdo e governo (~30%). --- ## Fatores que Impulsionam a Adoção 1. **Esgotamento de IPv4:** A causa raiz. 2. **CGNAT:** Provedores colocam clientes atrás de NAT (NAT do provedor), o que quebra jogos, P2P, etc. O IPv6 resolve isso. 3. **IoT (Internet das Coisas):** Impossível conectar bilhões de dispositivos sem IPv6. 4. **5G:** Redes 5G são projetadas para serem IPv6-nativas. 5. **Cloud Computing:** Provedores de nuvem (AWS, Google, Azure) suportam IPv6. --- ## Resumo das Vantagens do IPv6 * **Espaço de Endereçamento:** $2^{128}$ (Fim do esgotamento). * **Fim do NAT:** Restaura a conectividade ponta-a-ponta. * **Autoconfiguração (SLAAC):** Simplifica o gerenciamento da rede. * **Cabeçalho Fixo:** Roteamento mais rápido e eficiente. * **Segurança:** IPsec nativo e obrigatório. * **Eficiência:** Fim do Broadcast (usa Multicast). * **Mobilidade:** Suporte nativo (MIPv6). * **Futuro:** Essencial para IoT, 5G, Cidades Inteligentes. ---