Entendendo o IPV6
Publicado em 03/09/2008 – 00:03por Carlos Morimoto
A massiva popularização da Internet trouxe um problema grave, que é a escassez de endereços disponíveis. Parte disso se deve à má distribuição dos endereços IPs atuais, onde algumas empresas possuem faixas de endereços classe A inteiras, fazendo com que grande parte dos endereços disponíveis simplesmente não sejam aproveitados.
Chegamos então ao IPV6, que promete colocar ordem na casa, oferecendo um volume brutalmente maior de endereços e uma migração suave a partir do padrão atual (IPV4). Embora só recentemente o tema tenha ganhado popularidade, o IPV6 não é exatamente um projeto novo. O padrão vem sendo desenvolvido desde 1995, quando a Internet ainda engatinhava. Entre os dois existiu o "IPV5", que era uma padrão de streaming que nunca chegou realmente a ser usado.
No IPV6 são usados endereços com nada menos do que 128 bits. Prevendo o tamanho do problema que seria ter que futuramente migrar novamente para um novo padrão, o IEFT (o órgão responsável) resolveu não correr riscos. O número de endereços disponíveis é simplesmente absurdo. Seria o número 340.282.366.920 seguido por mais 27 casas decimais.
A princípio, o novo sistema de endereçamento adotado pelo IPV6 parece algo exótico, e até caótico, mas as coisas se tornam mais simples se você tiver em mente que ele é apenas um novo sistema de endereçamento.
Nada muda com relação ao cabeamento da rede; você continua utilizando os mesmos cabos de par trançado, fibra ótica e links wireless e os mesmos hubs, switches, pontos de acesso e roteadores. A rede continua funcionando exatamente da mesma forma, os endereços TCP/IP continuam contendo informações sobre o endereço da rede e o endereço do host dentro dela, as portas TCP e UDP continuam sendo utilizadas da mesma forma e continuamos utilizando basicamente os mesmos aplicativos de rede. Muda apenas o sistema de endereçamento propriamente dito, uma simples questão de alterar a configuração da rede e atualizar os programas para versões compatíveis com ele.
Nos endereços IPV4, dividimos os endereços em 4 grupos de 8 bits, cada um representado por um número de 0 a 255, como em "206.45.32.234". Usar esta mesma nomenclatura seria inviável para o IPV6, pois teríamos nada menos do que 16 octetos, criando endereços-mostro, como "232.234.12.43.45.65.132.54.45.43.232.121.45.154.34.78".
Ao invés disso, os endereços IPV6 utilizam uma notação diferente, onde temos oito quartetos de caracteres em hexa, separados por ":".
No conjunto hexadecimal, cada caracter representa 4 bits (16 combinações). Devido a isso, temos, além dos números de 0 a 9, também os caracteres A, B, C, D, E e F, que representariam (respectivamente), os números 10, 11, 12, 13, 14 e 15. Um exemplo de endereço IPV6, válido na Internet, seria: 2001:bce4:5641:3412:341:45ae:fe32:65.
Uma forma de compreender melhor, seria imaginar que cada quarteto de números hexa equivale a 16 bits, que poderiam ser representados por um número de 0 a 65.535. Você pode usar uma calculadora que suporte a exibição de números em hexa para converter números decimais. No KCalc, por exemplo, clique no "Configurações > Botões lógicos". Digite um número decimal qualquer, entre 0 e 65.535 e marque a opção "Hex" para vê-lo em hexa (e vice-versa):

Fazendo a conversão, o endereço "2001:bce4:5641:3412:341:45ae:fe32:65" que coloquei acima, equivaleria aos números decimais "8193 48356 22081 13330 833 17835 65034 101".
Um atenuante para esta complexidade dos endereços IPV6 é que eles podem ser abreviados de diversas formas. Graças a isso, os endereços IPV6 podem acabar sendo incrivelmente compactos, como "::1" ou "fee::1".

Em primeiro lugar, todos os zeros à esquerda dentro dos quartetos podem ser omitidos. Por exemplo, em vez de escrever "0341", você pode escrever apenas "341"; em vez de "0001" apenas "1" e, em vez de "0000" apenas "0", sem que o significado seja alterado. É por isso que muitos quartetos dentro dos endereços IPV6 podem ter apenas 3, 2 ou mesmo um único dígito. Os demais são zeros à esquerda que foram omitidos.
É muito comum que os endereços IPV6 incluam seqüências de números 0, já que atualmente poucos endereços são usados, de forma que os donos preferem simplificar as coisas. Graças a isso, o endereço "2001:bce4:0:0:0:0:0:1" pode ser abreviado para apenas "2001:bce4::1", onde omitimos todo o trecho central "0:0:0:0:0".
Ao usar o endereço, o sistema sabe que entre o "2001:bce4:" e o ":1" existem apenas zeros e faz a conversão internamente, sem problema algum.
» Leia mais: Entendendo o IPV6



3 respostas para “Entendendo o IPV6”
Acabei de descobrir que este blog existe! Sou leitor antigo das coisas que você escreve, Morimoto! Já adicionei o feed no meu leitor (Google Reader), mas de cara já estranhei o fato de eu não poder ler os posts no próprio leitor, pois eles vêm (bem) incompletos. No meu caso posts completos nos feeds seria algo bem desejável, já que todos os outros que leio (ex.: Meio Bit, UnderGoogle e todos os blogspot) vêm completos e me permitem fazer a leitura sem ter que entrar no blog.
Essa questão dos feeds completos é uma velha polêmica. Dê uma olhada nesse artigo do Marcos Elias, por exemplo:
http://www.explorando.viamep.com/2008/05/4-motivos-para-nao-liberar-feeds-rss-completos.html
Compreendo! Vejo que já fez sua escolha e tem seus motivos. Pra mim é bem mais cômodo poder ler no Reader, por uma série de motivos (por exemplo: se fico offline depois de ter carregado o Reader, os textos completos ficariam lá), mas diante dos argumentos do link que você passou, acabo meio que concordando contigo.