IPAddress-Lookup.com

IPv4 vs IPv6: Qual é a diferença (e por que é importante)

IPAddress-Lookup.com ·

Todos os dispositivos que se ligam à Internet precisam de um endereço, e esse endereço pode ser de dois tipos: IPv4 ou IPv6. Se alguma vez deu uma vista de olhos num ecrã de definições de rede e viu algo como 192.168.1.42 ao lado de uma sequência misteriosa como 2001:0db8:85a3::8a2e:0370:7334, já se deparou com ambos os protocolos. Eles desempenham a mesma função fundamental de enviar pacotes de um computador para outro, mas assentam em bases muito diferentes. Compreender a diferença não é apenas uma curiosidade académica. Determina a sensação de velocidade da sua ligação, o nível de segurança do seu tráfego e se a Internet pode continuar a crescer. Este guia explica o que é cada protocolo, como se comparam característica a característica, por que razão a transição está a demorar tanto tempo e o que tudo isto significa para si, enquanto utilizador comum ou proprietário de um site.

Se o próprio termo «endereço IP» for novo para si, vale a pena ler primeiro o nosso guia introdutório sobre o que é um endereço IP e, em seguida, voltar aqui para uma análise aprofundada das duas versões.

O que é o IPv4?

O IPv4, abreviatura de Protocolo de Internet versão 4, tem sido o pilar da Internet desde que foi padronizado em 1981. É nele que quase todas as ligações se basearam durante décadas e ainda hoje transporta a maior parte do tráfego. Um endereço IPv4 é um número de 32 bits. Trinta e dois bits proporcionam exatamente 2 elevado a 32 combinações possíveis, o que equivale a 4 294 967 296 endereços, ou cerca de 4,3 mil milhões.

Como um número binário bruto de 32 bits é ilegível para os seres humanos, os endereços IPv4 são escritos na notação decimal pontuada. Os 32 bits são divididos em quatro blocos de 8 bits chamados octetos, cada um convertido num número decimal entre 0 e 255 e separados por pontos. Assim, o endereço 172.16.254.1 é, na verdade, a sequência binária 10101100.00010000.11111110.00000001. Cada octeto pode conter 256 valores (de 0 a 255) e, ao multiplicar os quatro octetos entre si, obtém-se esse limite máximo de 4,3 mil milhões.

Classes de endereços e os primórdios da Internet

No início, o espaço IPv4 foi dividido em classes de endereços rígidas. As redes de Classe A utilizavam o primeiro octeto para a parte da rede e os três restantes para os anfitriões, resultando num punhado de redes enormes com cerca de 16 milhões de endereços cada. A Classe B dividia o endereço ao meio para redes de tamanho médio, e a Classe C utilizava três octetos para a rede e apenas um para os anfitriões, permitindo apenas 254 endereços utilizáveis por rede, mas um número muito grande dessas redes. As Classes D e E estavam reservadas para multicast e uso experimental.

Este sistema baseado em classes era um desperdício. Uma organização que precisasse de 300 endereços não cabia num bloco de Classe C de 254, pelo que recebia um bloco de Classe B de cerca de 65 000 e deixava dezenas de milhares de endereços ociosos. Para resolver esta situação, o setor adotou o Routing Inter-Domínios Sem Classes (CIDR), que permite dimensionar as redes de acordo com as necessidades reais, utilizando um comprimento de prefixo como /24. Se quiser compreender como funcionam esses números com barra, o nosso guia sobre sub-redes e CIDR aborda o assunto em pormenor.

Esgotamento e a ascensão do NAT

Quatro mil milhões de endereços pareciam infinitos em 1981, quando um computador era uma máquina rara e cara. Deixaram de parecer infinitos quando cada telefone, computador portátil, termóstato, campainha e carro passou a precisar do seu próprio endereço. O conjunto de endereços IPv4 de nível superior não atribuídos esgotou-se a nível global em 2011 e, desde então, os registos regionais têm vindo a operar com base em listas de espera e espaço reciclado.

A principal razão pela qual o IPv4 sobreviveu até agora é a Tradução de Endereços de Rede (NAT). O NAT permite que muitos dispositivos partilhem um único endereço IPv4 público. Dentro da sua casa ou escritório, os dispositivos utilizam endereços privados de intervalos reservados, tais como 192.168.x.x ou 10.x.x.x. Estes não são roteáveis na Internet pública. Quando um dispositivo envia um pacote para o exterior, o seu router reescreve o endereço de origem para o seu próprio endereço IP público único e regista a tradução numa tabela, juntamente com os números das portas. Quando a resposta chega, o router consulta a tabela e reencaminha o pacote para o dispositivo interno correto. Na prática, centenas de dispositivos escondem-se por trás de um único endereço público. O NAT proporcionou à Internet mais uma ou duas décadas de vida, mas também quebrou o design original de ponta a ponta, no qual qualquer anfitrião podia aceder diretamente a qualquer outro anfitrião. Está curioso para saber qual é o seu endereço IPv4 público neste momento? Pode verificá-lo instantaneamente com a nossa ferramenta «Qual é o meu IPv4?».

O que é o IPv6?

O IPv6 foi concebido no final da década de 1990 especificamente para resolver o problema do esgotamento de endereços de uma vez por todas. Em vez de 32 bits, um endereço IPv6 tem 128 bits. Isso não é quatro vezes maior, é astronomicamente maior. 2 elevado a 128 equivale a aproximadamente 340 undecilhões de endereços, um número com 39 dígitos (340 282 366 920 938 463 463 374 607 431 768 211 456, para ser exato). Para se ter uma ideia, isso é suficiente para atribuir triliões de endereços a cada grão de areia da Terra e ainda sobrar muitos. A escassez de endereços simplesmente não é uma preocupação no IPv6.

Um número de 128 bits é demasiado longo para a notação decimal com pontos, pelo que o IPv6 utiliza a notação hexadecimal. O endereço é escrito como oito grupos de quatro dígitos hexadecimais separados por dois pontos, desta forma: 2001:0db8:85a3:0000:0000:8a2e:0370:7334. Cada grupo representa 16 bits, e os dígitos vão de 0 a 9 e, em seguida, de a a f.

Regras de encurtamento e os dois pontos duplos

Como os endereços IPv6 são longos e contêm frequentemente muitos zeros, duas regras de compressão tornam-nos mais fáceis de ler. Em primeiro lugar, os zeros à esquerda em qualquer grupo podem ser omitidos, pelo que 0db8 torna-se db8 e 0000 torna-se 0. Em segundo lugar, uma sequência de grupos consecutivos compostos exclusivamente por zeros pode ser substituída por dois pontos duplos ::. Ao aplicar ambas as regras, o endereço acima é comprimido de forma clara:

  • Forma completa: 2001:0db8:85a3:0000:0000:8a2e:0370:7334
  • Comprimido: 2001:db8:85a3::8a2e:370:7334

O :: só pode aparecer uma vez num endereço, porque, caso contrário, não haveria forma de saber quantos grupos de zeros representa. O endereço de loopback, que no IPv4 é o conhecido 127.0.0.1, passa a ser simplesmente ::1 no IPv6.

Autoconfiguração, SLAAC e endereços locais de ligação

Uma das funcionalidades mais elegantes do IPv6 é a Autoconfiguração de Endereços sem Estado (SLAAC). No IPv4, os dispositivos obtêm normalmente o seu endereço a partir de um servidor DHCP, que tem de estar em funcionamento e a ser gerido. Com o SLAAC, um dispositivo pode gerar o seu próprio endereço global válido, combinando o prefixo de rede anunciado pelo router local com um identificador de interface derivado do seu próprio hardware. Não é necessário qualquer servidor central para a conectividade básica.

Cada interface IPv6 obtém também automaticamente um endereço «link-local» no fe80::/10 intervalo. Este endereço funciona apenas no segmento de rede local e nunca é encaminhado para além dele, mas permite que os dispositivos comuniquem com os seus vizinhos e com o router imediatamente após o arranque, antes de qualquer endereço global ser atribuído. Fundamentalmente, como cada dispositivo pode ter o seu próprio endereço globalmente único, o IPv6 restaura o modelo original de ponta a ponta e o NAT deixa de ser necessário para a conservação de endereços. Para verificar se a sua ligação já possui um endereço IPv6, visite What Is My IPv6.

IPv4 vs IPv6: comparação característica a característica

A tabela abaixo apresenta lado a lado as principais diferenças técnicas. Esta é a forma mais rápida de perceber por que razão os dois protocolos se comportam de forma tão diferente na prática.

Característica IPv4 IPv6
Comprimento do endereço 32 bits 128 bits
Total de endereços ~4,3 mil milhões ~340 undecilhões
Notação Decimal com pontos (192.168.1.1) Hexadecimal com dois pontos (2001:db8::1)
Tamanho do cabeçalho Variável, 20 a 60 bytes Fixo em 40 bytes, mais simples de processar
Complexidade do cabeçalho Muitos campos, inclui soma de verificação Simplificado, sem soma de verificação, cabeçalhos de extensão
Segurança (IPsec) Opcional, adicionada posteriormente Integrado desde o início
Configuração automática Manual ou requer DHCP O SLAAC permite a autoconfiguração
NAT Amplamente utilizado para poupar endereços Não é necessário para a conservação
Distribuição de endereços Difusão, unicast, multicast Unicast, multicast, anycast (sem broadcast)
Fragmentação Efetuada pelos routers e pelo anfitrião de envio Realizada apenas pelo anfitrião de origem
Introduzido 1981 1998 (implementação em curso)

Algumas destas entradas merecem uma análise mais aprofundada. O cabeçalho no IPv6 tem um tamanho fixo de 40 bytes e elimina vários campos que os routers IPv4 tinham de inspecionar em cada pacote, incluindo a soma de verificação do cabeçalho. Menos campos significam que os routers podem processar os pacotes de forma mais eficiente. No que diz respeito ao endereçamento, o IPv6 elimina totalmente a difusão. As transmissões de difusão do IPv4 enviam um pacote para todos os dispositivos de um segmento, o que é ruidoso e ineficiente. O IPv6 substitui isto por multicast direcionado (envio para um grupo específico) e introduz o anycast (envio para o mais próximo de vários anfitriões equivalentes), sendo ambos muito mais escaláveis.

Por que razão a transição está a ser tão lenta

O IPv6 está pronto para utilização em produção há mais de duas décadas, mas a adoção global ainda se mantém bem abaixo da cobertura total. Por que razão a migração tem avançado a passos de caracol? A razão principal é que o IPv4 e o IPv6 não são diretamente interoperáveis. Um host que utilize apenas IPv6 não consegue comunicar com um host que utilize apenas IPv4 sem uma camada de tradução intermédia. Isso significa que a Internet não pode simplesmente premir um botão. Tem de executar ambos os protocolos em paralelo durante um período de sobreposição muito longo.

Outros fatores agravam o atraso:

  • O NAT funcionou demasiado bem. Ao tornar o esgotamento do IPv4 suportável, o NAT eliminou a pressão urgente para migrar.
  • O hardware e software antigos, que só reconhecem o IPv4, continuam em serviço em inúmeras redes.
  • Custo e inércia. Reciclar o pessoal, atualizar as regras das firewalls e testar as aplicações para o IPv6 é um trabalho árduo com poucos benefícios imediatos para a organização que o realiza.

Mecanismos de pilha dupla e de transição

A ponte mais comum é a dual-stack, em que um dispositivo ou rede executa o IPv4 e o IPv6 em paralelo. Um dispositivo dual-stack possui um endereço IPv4 e um endereço IPv6 e utiliza o protocolo que ambos os pontos finais suportarem, dando preferência ao IPv6 quando este estiver disponível. A pilha dupla é simples, mas requer a manutenção de duas configurações de rede completas em simultâneo. É por isso que a transição tem sido tão gradual e, na sua maioria, invisível: os seus dispositivos preferem discretamente o IPv6 sempre que possível e recorrem ao IPv4 quando necessário.

Quando um segmento de rede suporta apenas um protocolo, entra em ação o tunelamento. O tunelamento encapsula pacotes de um protocolo dentro de pacotes do outro, para que possam atravessar infraestruturas incompatíveis. Por exemplo, uma técnica chamada 6to4 encapsula pacotes IPv6 dentro de pacotes IPv4 para transportar tráfego IPv6 através de uma rede exclusivamente IPv4. Tecnologias de tradução, como o NAT64, vão mais longe, reescrevendo ativamente os pacotes IPv6 para IPv4 (e vice-versa), para que os clientes que utilizam apenas IPv6 possam aceder a servidores que utilizam apenas IPv4. Estes mecanismos mantêm a Internet em transição interligada, à custa de alguma complexidade adicional.

Considerações sobre o desempenho

O IPv6 torna a sua ligação mais rápida? A resposta honesta é: por vezes, marginalmente, e não pelas razões que as pessoas supõem. O IPv6, por si só, não transporta dados mais rapidamente do que o IPv4. No entanto, há dois aspetos que podem dar ao IPv6 uma vantagem no mundo real. Em primeiro lugar, o seu cabeçalho de tamanho fixo, mais simples, permite que os routers processem pacotes com um pouco menos de sobrecarga. Em segundo lugar, e mais importante ainda, o tráfego IPv6 evita frequentemente as camadas de NAT pelas quais o IPv4 tem de passar. Cada salto de NAT acrescenta uma pequena quantidade de latência e uma consulta de tradução, e o NAT de nível de operadora (em que o próprio ISP partilha um endereço entre muitos clientes) pode causar um atraso percetível. Ao restabelecer a conectividade direta de ponta a ponta, o IPv6 consegue eliminar esses desvios.

Em testes realizados em grandes redes de conteúdo, as ligações IPv6 são frequentemente concluídas um pouco mais rapidamente do que as suas equivalentes IPv4, embora a diferença seja pequena e varie consoante a rota. Para a maioria das pessoas, a diferença de desempenho é imperceptível. As maiores vantagens práticas são de natureza arquitetónica: acabam-se as dores de cabeça com a travessia do NAT para aplicações ponto a ponto, jogos e videochamadas, que funcionam de forma mais fluida quando ambas as extremidades têm endereços reais e acessíveis.

O que isto significa para os utilizadores comuns

Se é um utilizador doméstico ou móvel típico, a boa notícia é que esta transição foi concebida para ser imperceptível e não precisa de fazer nada. O seu sistema operativo, router e telemóvel gerem a pilha dupla automaticamente. Quando visita um site, o seu dispositivo opta discretamente pelo IPv6 se tanto o utilizador como o site o suportarem e, caso contrário, recorre ao IPv4. Raramente precisa de pensar nisso.

Onde isto se torna relevante é na resolução de problemas e na privacidade. Como o IPv6 atribui ao seu dispositivo um endereço globalmente único, algumas pessoas preocupam-se com o rastreio. Os sistemas operativos modernos resolvem esta questão com extensões de privacidade que alteram periodicamente a parte do endereço relativa ao anfitrião, para que o seu endereço IPv6 não seja uma «impressão digital» permanente. Algumas conclusões práticas que vale a pena recordar:

  • É quase certo que a sua rede doméstica já utiliza o IPv6 em conjunto com o IPv4.
  • Podes ter um endereço IPv4 e um endereço IPv6 ao mesmo tempo.
  • Os endereços IPv6 parecem intimidantes, mas raramente é necessário digitá-los ou memorizá-los.
  • Manter o firmware do seu router e os seus dispositivos atualizados é a melhor coisa que pode fazer para garantir que ambos os protocolos funcionem sem problemas.

O que isto significa para os proprietários de sites

Se gere um site ou um serviço online, ignorar o IPv6 reduz silenciosamente o seu alcance. Uma parte crescente das redes móveis e dos ISP residenciais dá prioridade ao IPv6, por vezes oferecendo aos clientes apenas conectividade IPv6 por trás de um NAT de nível de operadora. Disponibilizar o seu site através do IPv6 significa que esses utilizadores acedem diretamente a si, em vez de o fazerem através de um gateway de tradução congestionado, o que melhora a fiabilidade e pode aumentar a velocidade percebida.

As medidas práticas para os proprietários de sites incluem:

  1. Adicione um registo AAAA (o equivalente IPv6 de um registo A) no seu DNS, apontando para o endereço IPv6 do seu servidor.
  2. Confirme se o seu fornecedor de alojamento ou CDN suporta IPv6, uma vez que a maioria dos principais fornecedores o faz sem custos adicionais.
  3. Verifique se a sua firewall e o registo de aplicações lidam corretamente com o formato mais longo dos endereços IPv6.
  4. Utilize a configuração dual-stack para servir ambos os protocolos e não deixar nenhum visitante de fora.

Como verificar qual a versão que possui

A verificação é rápida. Na linha de comandos, execute ipconfig no Windows ou ifconfig / ip addr no macOS e no Linux, e observe os endereços. Qualquer endereço no formato decimal com pontos é IPv4; qualquer endereço com dois pontos é IPv6. Um endereço que comece por fe80:: é um endereço IPv6 local de ligação que só funciona na sua rede local, enquanto um endereço IPv6 global começa normalmente no 2000::/3 intervalo. O método mais simples de todos é abrir um navegador e utilizar uma ferramenta de pesquisa online, que apresenta instantaneamente os teus endereços públicos sem qualquer necessidade de utilizar a linha de comandos. Verifica o teu «Qual é o meu endereço IPv4» e o teu «Qual é o meu endereço IPv6» para veres exatamente o que a tua rede apresenta à Internet.

Perguntas frequentes

O IPv6 vai substituir completamente o IPv4?

Eventualmente, sim, mas não de um dia para o outro. Atualmente, os dois protocolos funcionam em paralelo através da pilha dupla, e o IPv4 permanecerá em serviço durante muitos anos devido à enorme base instalada de hardware e software antigos. Pense nisso como uma transição longa e gradual, em vez de uma mudança abrupta.

Um dispositivo IPv4 pode comunicar diretamente com um dispositivo IPv6?

Não diretamente, porque os dois protocolos não são interoperáveis ao nível dos pacotes. A comunicação entre eles requer um mecanismo de tradução, como o NAT64, ou um intermediário de pilha dupla que suporte ambos os protocolos. Esta falta de interoperabilidade nativa é a principal razão pela qual a transição está a demorar tanto tempo.

O IPv6 é mais rápido do que o IPv4?

Normalmente, apenas ligeiramente. O IPv6 não transmite dados mais rapidamente, mas o seu cabeçalho mais simples e o facto de evitar camadas NAT adicionais podem reduzir a latência em algumas rotas. A vantagem mais significativa é uma conectividade direta mais fluida para jogos, videochamadas e aplicações peer-to-peer. Na navegação quotidiana, é improvável que note uma diferença dramática.

O IPv6 é mais seguro do que o IPv4?

O IPv6 foi concebido com suporte integrado para o IPsec desde o início, enquanto no IPv4 este era um complemento opcional. Dito isto, a segurança na prática depende muito mais da forma como as redes são configuradas e como as firewalls são definidas do que da própria versão do protocolo. O IPv6 não é automaticamente mais seguro apenas por ser mais recente.

Porque é que ainda tenho um endereço IPv4 privado como 192.168.1.5?

Trata-se de um endereço privado atribuído pelo seu router dentro da sua rede local, o que é perfeitamente normal. O seu router utiliza NAT para partilhar um único endereço IPv4 público entre todos os seus dispositivos. O endereço privado nunca aparece na Internet pública; apenas o endereço público do router é visível.

Como posso descobrir quais os endereços que a minha ligação está a utilizar?

A forma mais rápida é utilizar uma ferramenta de pesquisa online. Verifique o seu «Qual é o meu endereço IPv4» e o seu «Qual é o meu endereço IPv6» para ver exatamente o que a sua rede apresenta à Internet. Se o resultado do IPv6 for vazio, significa que a sua rede ou o seu ISP ainda não ativaram o IPv6.