Vamos ver as principais diferenças entre os protocolos IPv4 e IPv6.
Endereçamento
O protocolo IPv4 tem 32 bits de endereçamento. Isso permite que 4 bilhões de dispositivos estejam diretamente conectados à Internet. Mas, a Internet caminha para ter tudo conectado nela: computadores, relógios, eletrodomésticos, e qualquer tipo de sistema eletrônico.
A Internet das coisas está em implantação. Porém, os 4 bilhões de endereços do protocolo atual, não permitem isso. O IPv6 possui 128 bits de endereçamento. Isso permite um número quase infinito de endereços. Para exemplificarmos isso, algumas analogias são usadas:
- É possível atribuir 48 octilhões de endereços por habitante do mundo;
- Cada micrômetro quadrado da Terra pode conter 4 bilhões de redes com 64 milhões de hosts cada uma;
- Cada átomo da superfície da Terra, poderia conter cerca de 3 milhões de endereços IPs (considerando o átomo de hidrogênio).
Esses são alguns exemplos, que servem para demostrar a quantidade de endereços possíveis numa Internet IPv6.
Roteamento
No protocolo IPv6, a distribuição de endereços é hierárquica, ao contrário do que ocorre no IPv4. Com isso, a tabela de roteamento dos roteadores é bem menor, melhorando o desempenho. Também, é mais comum o uso de protocolos de roteamento dinâmicos, como o OSPF e BGP, ao contrário do RIP, que é muito usado em redes IPv4.
Cabeçalhos
O protocolo IPv4 possui cabeçalhos com 12 campos, com tamanhos que variam de 20 a 60 Bytes. Já o IPv6, contém cabeçalhos de apenas 8 campos com tamanho fixo de 40 Bytes.
Além disso, o IPv6 pode ter cabeçalhos de extensão para funções específicas. Esses cabeçalhos de extensão não são lidos pelos roteadores, a menos que isso seja realmente necessário.
Os demais cabeçalhos são lidos apenas pelo host destino. Isso torna o cabeçalho do IPv6 mais simples do que o do IPv4. Também é importante o fato do IPv6 ser quatro vezes maior do que o IPv4, mas ter o cabeçalho apenas duas vezes maior. Essas características fazem com que os roteadores consigam analisar o tráfego de IPv6 de forma mais eficiente, melhorando o desempenho.
IPsec
A implantação do protocolo de criptografia IPsec, usado principalmente em VPN, é opcional no protocolo IPv4. Já no IPv6, ele é obrigatório.
Porém, seu uso é opcional. Isso significa que, em caso de necessidade de criptografar o tráfego da rede, como numa VPN, isso pode ser feito diretamente no protocolo, sem a necessidade de softwares adicionais.
Resolução de endereço físico
No IPv4, os protocolos ARP e RARP, cuidam das resoluções de endereços físicos, conhecidos como MAC address. No IPv6, essa função foi transferida para o protocolo ICMP, o famoso ping.
Com isso, ARP e RARP foram descartados, enquanto que o ICMP passou a ter maior importância. Este último, passou a ser vital para o funcionamento da rede. Por isso, não é possível bloquear totalmente o tráfego ICMP, como era feito no IPv4.
Se você deseja bloquear uma função em especial, como o ping, deve-se bloquear apenas a função específica do ICMP, e não o protocolo todo, com risco do protocolo parar de funcionar. Na maioria dos caso, portanto, é aconselhável permitir o tráfego ICMP em uma rede IPv6.
Formas de configuração
Em uma rede IPv4, é possível fazer dois tipos de configuração: manual e automática. A configuração automática é feita através de um servidor DHCP. Há ainda uma opção, em que a estação de trabalho pode se configurar automaticamente usando um endereço aleatório da rede 169.254.0.0/16.
Porém, esta última forma não configura DNS e nem a rota padrão; portanto, ela nem é considerada.
No IPv6, além da configuração manual, que você verá que nem deverá ser usada na prática, existem duas outras formas de configuração: automática
stateless e automática
statefull.
Quando uma estação de trabalho IPv6 entra na rede, ela automaticamente gera um primeiro endereço chamado de Link Local, usando um endereço aleatório da rede fe80::/64 (semelhante a rede 169.254.0.0/16 do IPv4).
Com esse endereço, ela passa e perguntar quem são os roteadores e os DNS da rede. A estação também pode perguntar pelos endereços do site (semelhantes às rede 192.168.0.0/16, 10.0.0.0/8 e 172.16.0.0/20 do IPv4), bem como dos endereços disponíveis globalmente (que funcionam como os endereços públicos IPv4) e que serão usados para a comunicação da estação com o mundo.
Todo esse processo é transparente para a estação e pode ser usado quando não é necessário um controle sobre o processo de distribuição de IP.
Já a autoconfiguração
statefull, requer um servidor DHCP, como no IPv4. Porém, pode-se fazer uma mistura entre o processo
stateless e
statefull, sendo que o servidor DHCP, pode fornecer apenas os endereços IP deixando para a estação descobrir os endereços dos DNS e dos roteadores.
Conflitos de IP
No IPv6, antes da estação configurar o IP, ela envia um pacote na rede perguntando se alguma outra estação já possui esse endereço. Se ela não receber nenhuma resposta, então, o endereço estará disponível para ser usado. Caso receba uma reposta, então, ela terá que usar outro endereço. Se a configuração for manual, a estação não conseguirá entrar na rede. Isso evita o conflito de IP.
NAT
NAT (Network Address Translator) é uma tecnologia que permite a equipamentos dentro da rede local acessar a Internet usando o IP público do gateway. Isso é muito comum hoje e retardou bastante a adoção do IPv6.
Porém, essa prática quebra o modelo fim-a-fim da Internet proposto desde o seu nascimento. Softwares de VPN e P2P podem não funcionar corretamente quando o host está atrás de um NAT. Quem trabalha com redes, sabe como é chato configurar estações para usarem NAT, principalmente quando estas precisam ser acessadas pela internet.
O IPv6 resolve o problema do NAT, simplesmente não implementando-o. Alguém poderá pensar que isso é uma falha de segurança, pois o cliente fica conectado diretamente na rede pública.
Isso não é verdade. Cada cliente possui um IPv6 público, mas, deve haver um Firewall e outros sistemas de segurança entre o cliente e a Internet, como acontece no IPv4. O NAT foi criado para funcionar como um paliativo à falta de endereços IPv4. Como o número de endereços IPv6 disponíveis é quase infinito, não vemos qualquer motivo para usar NAT. Aleluia!
Roaming
Com a mobilidade que possuímos hoje (e isso só vai aumentar), é normal você possuir um Smartphone conectado em rede Eireless da empresa e no momento seguinte, já estar conectado na rede 3G da operadora de telefonia.
O problema que isso acarreta, é a mudança de endereço IP do dispositivo móvel, acarretando na quebra de conexões. Com o IPv6, é possível mudar de uma rede para outra preservando o endereço IPv6. Como isso, as conexões não são perdidas. Agora sim, você pode ficar conectado o tempo todo!
Fragmentação de pacotes
Em uma comunicação através da Internet, os dados podem passar pelos mais variados tipos de rede. Cada um deles permite um tamanho máximo dos pacotes de dados.
Antes de enviar um dados pela rede, o nó precisa dividir o pacote em pedaços menores, para que caibam na rede em questão. Esse pacote, por sua vez, pode ainda ser dividido em novos fragmentos. Isso gera lentidão nos roteadores.
No IPv6, a fragmentação é feita somente na origem. Há mecanismos que permitem saber qual o menor tamanho máximo permitido em todo o trajeto. Os roteadores não fragmentam os dados. Isso melhora o desempenho.
QOS
Algumas aplicações, como VoIP e Stream, precisam ter um mínimo de banda disponível para que funcionem corretamente.
No IPv4, você precisa de softwares especiais para permitir que essas aplicações tenham essa banda garantida. A isso, chamamos de Qualidade de Serviço (Quality Of Service - QOS).
No IPv6, o QOS está implementado diretamente no protocolo; não há necessidade de softwares especiais para essa finalidade.
Tamanho do frame
O protocolo IPv4 permite um tamanho máximo para o frame de 1,5 Kb. No IPv6, o tamanho máximo é de 4 GB, embora, ainda não exista aplicação que se beneficie disso. Mas, num futuro próximo, o Jumbo Frame poderá agilizar as comunicações em rede.
Broadcast
No protocolo IPv4, quando uma estação quer descobrir um MAC address, ou um servidor DHCP, a estação envia um broadcast para a rede. Esse broadcast é recebido por todos os hosts.
A resolução de nomes NetBIOS, usada muito em redes Windows, também usa broadcast, principalmente, quando não há um servidor WINS. Quanto mais broadcast na rede, mais lenta ela será.
O IPv6 acaba com o broacast. Eu seu lugar ocorre o "anycast". O conceito é um pouco diferente, pois não usa, como no IPv4, o último endereço da rede para fazer broadcast.
O protocolo IPv6 possui um mecanismo que permite descobrir qual é o host mais próximo que atende a um certo requisito e que possui o mesmo prefixo IPv6. Um pacote anycast, será recebido apenas pelo host mais próximo.
Em outras palavras, em uma mesma rede, pode haver máquinas com prefixos diferentes. Um anycast só afetará as máquina do mesmo prefixo, ao contrário do que ocorre num broadcast IPv4.
Endereços de rede e de broadcast
Em uma VLAN IPv4, o primeiro e o último endereço são reservados para serem usados como Endereço de Rede e de Broadcast, respectivamente. No IPv6, isso não existe. Todos os endereços de uma VLAN podem ser usados.
Tamanho mínimo de uma VLAN
O tamanho mínimo para uma rede IPv4 é /30, onde temos 4 endereços de hosts. Excluindo-se, os endereços de rede e de broadcast, temos dois hosts possíveis nesta rede.
No IPv6, o recomendável é usar no mínimo um /64, pois, disso depende a autoconfiguração. Em outras palavras, uma rede IPv6 terá, no mínimo, 16 quintilhões de endereços disponíveis.
Não se assuste com esses números! Será comum empresas terem à disposição mais de 65 mil redes com 16 quintilhões de endereços disponíveis cada uma. Mesmo sendo em uma rede ponto-a-ponto, é aconselhável reservar um /64.
Mas, lembre-se: isso é apenas uma recomendação.
Resumo
Segue abaixo, um resumo das diferenças entre os protocolos IPv4 e IPv6:
IPv4 |
IPv6 |
32 bits |
128 bits |
Cabeçalho complexo (12 campos, entre 20 e 60 bytes) |
Cabeçalho mais simples (8 campos fixos, 40 bytes, podendo ter cabeçalhos de extensão) |
Distribuição aleatória |
Distribuição hierárquica |
IPsec opcional |
IPsec obrigatório |
ARP |
ICMP (problema em bloquear input no firewall - RFC 4890) |
DHCP |
Autoconfiguração e DHCP (stateless, statefull) |
Possível conflito de IP |
Não há conflito de IP (a segunda máquina fica sem acesso) |
Uso de NAT |
Não necessita de NAT |
Roaming com alteração de IP |
Roaming sem alteração de IP |
Fragmentação do pacote em todo o trajeto |
Fragmentação do pacote apenas na origem |
QOS baseado em aplicação |
QOS nativo no protocolo |
Frames de 1500 bytes |
Frames de até 4 gigabytes (jumbo frame) |
Faz broadcast |
Não faz broadcast (anycast) |
O primeiro e o último endereço da VLAN são reservados |
Todos os endereços da VLAN podem ser usados |
Rede mínima com 2 hosts (/30) |
Rede mínima com 16 quintilhões de hosts (/64) |
Quando será a virada?
Não há uma data para a implantação do IPv6.
A migração será um processo e ocorrerá aos poucos. Durante algum tempo, as máquinas terão dois protocolos, o IPv4 e o IPv6, algo semelhante ao que ocorreu quando as empresas migraram da rede Netware para a Windows NT nos anos 90; por um momento, os equipamentos tinham dois protocolos: o IPX, o NetBIOS e, às vezes, tinham também o IPv4.
Como sabemos, não há mais endereços IPv4 disponíveis no IANA. Na APNIC, que cuida da Internet na Ásia, também não há mais endereços disponíveis. Ou seja, não vai demorar para aparecerem máquinas apenas com endereços IPv6.
E é aí que a coisa complica. Como fazer uma máquina só com IPv6 conversar com outra somente IPv4?
E se você acha que isso não lhe diz respeito, na empresa onde trabalho, temos uma parceria com a Sony japonesa. E se eu não implantar o IPv6, mais cedo ou mais tarde, teremos problemas.