A internet é uma rede que interliga milhões de computadores e outros tipos de dispositivos ao redor do mundo. Por esse motivo ela é frequentemente chamada de “a rede mundial de computadores”. Como é de se imaginar, centenas de milhares de dispositivos interligados exige uma robusta infraestrutura. Neste artigo nós vamos falar sobre o que é IPv6.
Não há um consenso de quando surgiu a internet que nós conhecemos hoje, mas estimasse que tenha sido por volta do ano de 1980. Desde então, com a chegada dos computadores pessoais e a popularização dos dispositivos móveis, a rede que nós conhecemos hoje como a internet se viu numa situação em que chegou ao seu limite de dispositivos conectados.
O que é endereço IP?
Cada dispositivo conectado à internet precisa de um endereço IP. Seja um simples celular ou um servidor de uma aplicação complexa, todos precisam do IP para enviar e receber informações através da internet. De forma resumida, o endereço IP seria o endereço do dispositivo na internet.
Um exemplo de endereço IP (no caso dos servidores do Google):
216.58.202.238
Ao contrário do que se pode imaginar, esse endereço não é aleatório e muito menos pode se repetir. Cada dispositivo conectado à internet precisa ter um IP exclusivo para que possa receber as informações trafegadas pela internet. Excerto em alguns casos em que se utiliza o protocolo NAT, aí até podem ter o mesmo IP, porém não é nada recomendável.
Esses endereços IPs são geridos pela entidade IANA que tem a função de distribuir para entidades regionais e estas distribuem os endereços IPs para ISP que são organizações que oferecem serviços baseados na internet.
Um exemplo prático, a IANA distribui para a LACNIC (Organização responsável pela distribuição de IPs na região na América Latina e Caribe) blocos de IPs e depois esta distribui para empresas de hospedagem de sites, provedores de internet fixa e móvel, e várias outras empresas como o Google.
O endereço IP, na sua versão IPv4, é um número de 32 bits no formato X.X.X.X onde cada X é um número que pode ir de 0 a 255. Portanto, o IPv4, que é o protocolo amplamente utilizado e criado na época do surgimento da internet tem um limite de aproximadamente 4 bilhões de endereços possíveis.
Esgotamento de endereços IP
O limite teórico de endereços disponíveis no protocolo IPv4 é de 4.294.967.296 dispositivos (endereços). Mas existem alguns endereços que são reservados e não podem ser usados pelos ISP, como os blocos iniciados por 10.X.X.X, 127.X.X.X e alguns outros.
O número de endereços disponíveis é consideravelmente alto. Mas é importante lembrar que estamos num mundo cada vez mais conectado. Em todos os lugares encontramos internet Wi-Fi, 3G, 4G e agora o novo protocolo 5G.
São bilhões de dispositivos com acesso à internet, que vão desde celulares, televisores, geladeiras até carros autônomos. Todos esses dispositivos precisam de uma conexão que requer um IP exclusivo.
Este aumento exponencial de tecnologias conectadas a internet fez com que ocorresse o esgotamento dos endereços IPv4 disponíveis. Apesar do número consideravelmente alto de endereços disponíveis eles não foram suficientes.
Como medida paliativa, muitas empresas adotaram o uso de redes NAT ─ que é quando vários clientes compartilham o mesmo endereço IPv4, mas isso requer mudanças técnicas e também não é recomendado devido a algumas limitações.
Protocolo IPv6
A solução definitiva para esse problema seria então a criação de um novo protocolo para permitir um número maior de endereços IPs. Depois de vários anos de pesquisas e debates foi criado o novo protocolo IPv6 para substituir o esgotado IPv4.
O IPv6 foi concebido para facilitar a implementação, não se trata de um novo protocolo e sim de uma versão melhorada do protocolo existente, uma evolução do IPv4.
Oficializado em 2012, o IPv6 é fruto da cooperação promovida pela IETF para a criação de uma “nova geração” do endereço IP e está sendo implantado gradativamente na internet e deve funcionar junto ao IPv4 por um bom tempo ainda.
Numa situação chamada de “pilha dupla” ou “dual stack” os dois protocolos trabalham lado a lado. Mas o objetivo a longo prazo é que o IPv6 substitua seu antecessor IPv4, que suporta um número bem menor de conexões.
Composição do IPv6
No protocolo IPv6 os endereços são compostos por 8 grupos de 16 bits, separados por “:” e escritos em com dígitos hexadecimais (0-F).
No caso do Google o endereço IPv6 dele seria:
2a00:1450:4007:816:0000:0000:0000:200e
Pode ser usado tanto caracteres maiúsculos quanto minúsculos. Além disso os endereços podem ser abreviados para reduzir seu tamanho e assim economizar espaço e facilitar a memorização. Mas vamos combinar, se no protocolo IPv4 já é difícil a memorização, imagina no IPv6.
Por se tratar de um endereço grande, podem ser aplicadas algumas abreviações. Algo comum nestes endereços é uma sequência de números 0000:0000:0000 que pode ser substituída por um zero ou um único espaço vazio “:”.
Endereço IP:
2a00:1450:4007:080a:0000:0000:0000:2004
Abreviação com 0
2a00:1450:4007:80a:0:0:0:2004
Abreviação com apenas um espaço vazio
2a00:1450:4007:80a::2004
Pelas regras definidas pelo comitê, 0 a esquerda podem ser ignorados, por exemplo o 080a pode ser representado como 80a. E não são permitidas abreviações de 0 em grupos separados.
Exemplo de abreviação errada:
2a00:1450::080ª::2004 <— ERRADO
Note que a ocorrência do “::” (duplo) deve ser em apenas um local do endereço IPv6. No exemplo acima ele aparece em dois locais e isso geraria ambiguidade.
Tipos de endereços IPv6
Assim como ocorre com seu antecessor, o IPv6 também possui alguns grupos. Os grupos de endereço do IPv6 são:
- Unicast ─ Este é o endereçamento um-para-um ou ponto-a-ponto, onde a informação é enviada por um remetente e recebida por apenas um receptor. É forma predominante de comunicação na internet.
- Anycast ─ Endereçamento um-para-um-de-muitos. Um pacote de dados é enviado a um conjunto de interfaces e é recebido pela interface que estiver mais próxima da origem.
- Multicast ─ Endereçamento um-para-muitos. Semelhante ao Anycast, também identifica um conjunto de interfaces, porém o pacote é entregue a todas as interfaces do conjunto.
IPv6 e suas vantagens
O protocolo IPv6 é uma versão melhorada do seu antecessor, por isso possui algumas características não encontradas na versão anterior deste protocolo de comunicação. Entre as principais vantagens do IPv6 podemos citar:
Roteamento mais eficiente
IPv6 reduz o tamanho das tabelas de roteamento e torna o roteamento mais eficiente e hierárquico. O IPv6 permite que os ISPs agreguem os prefixos das redes de seus clientes em um único prefixo e anunciem este prefixo à Internet IPv6. Além disso, nas redes IPv6, a fragmentação é tratada pelo dispositivo de origem, em vez do roteador, usando um protocolo para a descoberta da unidade de transmissão máxima (MTU) do caminho.
Processamento de pacotes mais eficiente
O cabeçalho de pacote simplificado do IPv6 torna o processamento de pacotes mais eficiente. Comparado com o IPv4, o novo protocolo não contém soma de verificação de nível de IP, portanto, a soma de verificação não precisa ser recalculada em cada salto do roteador. Livrar-se da soma de verificação de nível de IP foi possível porque a maioria das tecnologias de camada de link já contêm recursos de checksum e controle de erros. Além disso, a maioria das camadas de transporte, que lidam com conectividade de ponta a ponta, tem uma soma de verificação que permite a detecção de erros.
Fluxos de Dados Direcionados
OIPv6 suporta multicast ao invés de broadcast. O multicast permite que fluxos de pacotes intensivos de largura de banda (como fluxos multimídia de voz, vídeo e etc.) sejam enviados para vários destinos simultaneamente, economizando largura de banda da rede. Os hosts desinteressados não precisam mais processar pacotes de transmissão. Além disso, o cabeçalho IPv6 possui um novo campo, denominado Flow Label, que pode identificar os pacotes pertencentes ao mesmo fluxo.
Configuração Simplificada da Rede
A configuração automática do endereço (atribuição de endereços) está incorporada no IPv6. Um roteador enviará o prefixo do link local em seus anúncios do roteador. Um host pode gerar seu próprio endereço IP anexando seu endereço de camada de enlace (MAC), convertido no formato de 64 bits do Identificador Universal Estendido (EUI), aos 64 bits do prefixo de enlace local.
Suporte para novos serviços
Ao eliminar a conversão de endereços de rede (NAT), a verdadeira conectividade de ponta a ponta na camada IP é restaurada, permitindo serviços novos e valiosos. Redes peer-to-peer são mais fáceis de criar e manter, e serviços como VoIP e Quality of Service (QoS) se tornam mais robustos.
Mais segurança com IPv6
O IPSec de segurança, que fornece confidencialidade, autenticação e integridade de dados, é ativado no IPv6. Devido ao seu potencial para transportar malware, os pacotes ICMP IPv4 são frequentemente bloqueados por firewalls corporativos, mas o ICMPv6, a implementação do Protocolo de Mensagens de Controle da Internet para IPv6, pode ser permitido porque o IPSec pode ser aplicado aos pacotes ICMPv6.
Adoção do IPv6 pelas hospedagem de sites
Muitas empresas de hospedagem de sites ainda não adotaram o IPv6, o que torna seu site ainda incompatível com esta nova tecnologia. Geralmente não é necessário fazer qualquer modificação ou configuração em seu site para que o mesmo seja compatível com a nova tecnologia. Para ele ser compatível basta que você utilize uma hospedagem de sites que tenha compatibilidade com o IPv6.
A configuração deste novo protocolo fica por conta da hospedagem de sites. Existem maneiras de adotar o uso do IPv6 mesmo que seu servidor não seja compatível. Isso é possível ao usar serviços como o CloudFlare, que habilita o suporte ao IPv6 ao intermediar as conexões entre o servidor da hospedagem de sites e o cliente.
Cabeçalho do IPv6
A mais nova versão IPv6 sofreu diversas mudanças, algumas delas bem significativas do ponto de vista técnico. Para o usuário final tais mudanças não são tão perceptíveis, mas no que diz respeito a softwares e sistemas os engenheiros e desenvolvedores precisam lidar com uma série de mudanças em relação a antiga versão IPv4.
O cabeçalho por exemplo sofreu mudanças significativas. Agora o header pode ter até o dobro do tamanho da versão anterior, com até 40 bytes de informações. Alguns campos foram removidos enquanto outros se tornaram opcionais. A não obrigatoriedade de certas informações podem tornar as aplicações mais rápidos ao mesmo tempo que os novos campos podem tornar o processo ainda mais eficiente.
Version ─ Informa a versão do protocolo usado pelo pacote. Que pode ser 4 ou 6, de acordo com a versão IP suportada pelo software.
Traffic class ─ Campo de 8 bits usado para informar a classe de serviço que o pacote pertence. No RFC 2460, os valores do campo Traffic Class não estão definidos, mas ele deve ser usado para classificar por exemplo se é algum pacote sensível que precisa ser entregue rapidamente como serviços de streaming.
Flow label ─ Campo de 20 bits randômico usado para identificar pacotes de um mesmo fluxo de dados. Pacotes enviados pelo mesmo fluxo vão ter Source Address e Destination Address, juntamente com o Flow label iguais.
Payload length ─ Campo de 16 bits que como o próprio nome sugere serve para identificar em bytes o volume de dados do pacote.
Next header ─ Campo de 8 bits que indica o possível cabeçalho da extensão (se presente) ou o protocolo na camada superior PDU (como TCP, UDP ou ICMPv6) que será usado no transporte das informações.
Hop limit ─ Campo de 8 bits que indica o número máximo de hops (saltos) antes do pacote ser descartado. Em redes cada vez que um pacote é repassado ao próximo dispositivo (roteador, bridge, gateway e etc.) ocorre um hop (salto).
Source address ─ Campo de até 128 bits que indica o host de origem do pacote, ou seja, o IP do remetente do pacote.
Destination addres ─ Campo de até 128 bits que indica o destino do pacote. Na maioria dos casos, o endereço de destino é definido para o endereço de destino final. No entanto, se um cabeçalho de extensão de roteamento estiver presente, o endereço de destino pode ser definido para a próxima interface do roteador na lista de rotas de origem.
Como testar suporte de um site ao IPv6
Agora que você entendeu o que é o IPv6 é preciso testar se o seu site oferece suporte a este protocolo mais seguro, ágil e confiável. Com o surgimento de novas tecnologias há sempre uma grande preocupação em relação a adoção da mesma. No caso do IPv6 espera-se que as empresas de hospedagem de sites façam a adoção o quanto antes.
Se você já conta com um serviço de hospedagem de sites basta usar a ferramenta oficial para testar a compatibilidade do seu site com o IPv6. Para isso, basta seguir o passo a passo baixo.
- Acesse o site: http://validador.IPv6.br/
- Informe o endereço do seu site (sem HTTP:// ou HTTPS://)
- Clique no botão “Verificar”.
Se estiver tudo correto e o site for compatível vai ser exibida a mensagem como na imagem abaixo:
Como testar se meu provedor de internet tem suporte ao IPv6
No passo anterior você viu como testar se um site tem suporte ao IPv6. Mas pra que a conexão ocorra pelo novo protocolo ao acessar o site é necessário que seu provedor de acesso à internet tenha suporte ao novo protocolo. Caso não tenha suporte todos os sites que você acessar a conexão será realizada pela versão antiga, a IPv4.
Testar se o seu provedor oferece suporte é muito fácil também, existem algumas ferramentas que permitem realizar este teste. Mas é bom ressaltar que, segundo o Google, apenas 26% das pessoas no Brasil utilizam o IPv6 para acessar o site da empresa.
Para saber se você é uma dessas pessoas que tem a disposição o novo protocolo basta acessar o site https://test-IPv6.com
Conclusão
O protocolo IPv6 atualmente trabalha em conjunto com o IPv4 e por hora ambos vão permanecer trabalhando junto ainda por um bom tempo. Existem muitos provedores de internet que ainda não tem tecnologias compatíveis com o novo protocolo. E alguns sistemas antigos precisam ser revistos para anteder a nova tecnologia.
Mas se você tem um site, blog ou loja virtual não tem motivos para se alarmar por hora. A adoção desta nova tecnologia ocorre gradativamente e muitos sistemas antigos já a suportam. Não precisa sair por aí procurando empresas de hospedagem de site que suportem esta tecnologia.
A boa notícia é que você pode adicionar o suporte ao IPv6 ao seu site sem gastar nada usando o serviço da CloudFlare. Assim os visitantes do seu site terão os benefícios do novo protocolo e você não vai precisar se preocupar com nada.
Fontes: euclid.nmu.edu, wikipedia.org ,IPv6.br, microsoft.com