IPv6 - Saindo do armário
IPv6 é a nova versão do protocolo IP, que de novo não tem nada, pois a RFC do protocolo data de 1998! O problema é que houve uma grande procrastinação do IPv4 com as técnicas de mitigação do esgotamento de endereços. O IPv6 elimina o problema da falta de endereços válidos e uso de NAT em redes locais, entre outras novidades. Com 128 bits para endereçamento não faltarão endereços por toda via láctea.
Boa parte da Internet já funciona em IPv6 e a grande maioria dos dispositivos novos vêm com ele habilitado por padrão. Você já está usando IPv6 e e talvez não saiba...
Ele está lá na sua rede, os hosts tentam fechar tuneis IPv6 para atravessar o seu firewall, fazem autoconfiguração e se comunicam por IPv6, tudo debaixo do seu nariz. Então saia do armário e comece a estudar o assunto antes que seja tarde. :-)
Quando se toca no assunto o pessoal fala de lado, olha pro chão. Alguns dizem que é moleza, que basta sair do decimal e estudar números hexadecimais, ou que vai demorar muito até ser implantado. Nada mais ingênuo. O IPv6 é um protocolo totalmente novo e tem muitas diferenças do antecessor. Os endereços IPv4 estão dando os últimos suspiros, e a medida que a rede cresce o uso de NAT deixa tudo exponencialmente mais complexo e caro.
A parte mais simples é o novo esquema de endereçamento. Basicamente os endereços agora têm 128 bit e são escritos em hexa. Para ser breve, vou pular essa parte. Dê uma olhada em http://ipv6.br e procure pelo curso e-learning para saber mais.
Para começar veja algumas características importantes:
- Link-local address : FE80:: /10 - Endereços não roteáveis que valem apenas no enlace. Análogos aos endereços IPv4 169.254.0.0/16.
- Unique Local address (ULA): FC00:: /7 - Endereços análogos aos endereços IPv4 privados e podem ser usados em redes privadas livremente.
- Global unicast: 2000::/3 - Endereços globais únicos reservados para a internet.
Você pode quebrar o gelo com um simples IPCONFIG/IFCONFIG e verá que já existe um endereço de escopo "Link-local" atribuído à sua interface na faixa "fe80::/10. Geralmente este endereço é gerado com base no seu endereço MAC, sendo os últimos 64 bits do endereço correspondentes à ele no formato EUI 64:
Repare que na primeira imagem tenho 2 endereços IPv6, um de escopo global e outro Link-local, mas que terminam iguais. Ambos gerados a partir do MAC da interface. Esta implementação pode variar dependendo do sistema operacional.
Naturalmente você pode fazer testes dentro da sua rede acessando outros hosts pelos endereços IPv6 de Link-local, a começar pelo PING:
Você pode acessar compartilhamentos no Windows por IPv6 também, mas é um pouco mais complicado. Como os ":" do endereço tornariam o formato UNC inválido você deve substituí-los por traços e adicionar o sufixo ".ipv6-literal.net". Veja os exemplos abaixo:
O protocolo ARP foi totalmente substituído pelo ICMPv6 com o protocolo de descoberta de vizinhança(NDP - Neighbour discover protocol). Então o que seria equivalente à um "arp -a" agora é:
Boa parte da Internet já funciona em IPv6 e a grande maioria dos dispositivos novos vêm com ele habilitado por padrão. Você já está usando IPv6 e e talvez não saiba...
Ele está lá na sua rede, os hosts tentam fechar tuneis IPv6 para atravessar o seu firewall, fazem autoconfiguração e se comunicam por IPv6, tudo debaixo do seu nariz. Então saia do armário e comece a estudar o assunto antes que seja tarde. :-)
Quando se toca no assunto o pessoal fala de lado, olha pro chão. Alguns dizem que é moleza, que basta sair do decimal e estudar números hexadecimais, ou que vai demorar muito até ser implantado. Nada mais ingênuo. O IPv6 é um protocolo totalmente novo e tem muitas diferenças do antecessor. Os endereços IPv4 estão dando os últimos suspiros, e a medida que a rede cresce o uso de NAT deixa tudo exponencialmente mais complexo e caro.
A parte mais simples é o novo esquema de endereçamento. Basicamente os endereços agora têm 128 bit e são escritos em hexa. Para ser breve, vou pular essa parte. Dê uma olhada em http://ipv6.br e procure pelo curso e-learning para saber mais.
Para começar veja algumas características importantes:
- No IPv6 todas as interfaces recebem vários endereços de acordo com o escopo. Vide os tipos de endereços a seguir.
- O conceito de máscara e a notação CIDR permanece, mas a recomendação é que todos os enlaces utilizem prefixos /64.
- O novo endereço de loopback é 0:0:0:0:0:0:0:1/128, abreviado ::1
- Não há endereços de rede ou broadcast, nem mesmo o conceito de broadcast, este agora na forma de endereços multicast.
- Autoconfiguração(stateless) aprimorada. Os endereços podem ser aprendidos automaticamente por "router advertisement", assim como default gateway e servidores DNS, sendo o DHCPv6 opcional.
- Protocolo ARP foi substituído pelo ICMPv6(neigbour discovery), que agora carrega funções indispensáveis para o funcionamento da rede.
- Link-local address : FE80:: /10 - Endereços não roteáveis que valem apenas no enlace. Análogos aos endereços IPv4 169.254.0.0/16.
- Unique Local address (ULA): FC00:: /7 - Endereços análogos aos endereços IPv4 privados e podem ser usados em redes privadas livremente.
- Global unicast: 2000::/3 - Endereços globais únicos reservados para a internet.
Repare que na primeira imagem tenho 2 endereços IPv6, um de escopo global e outro Link-local, mas que terminam iguais. Ambos gerados a partir do MAC da interface. Esta implementação pode variar dependendo do sistema operacional.
Naturalmente você pode fazer testes dentro da sua rede acessando outros hosts pelos endereços IPv6 de Link-local, a começar pelo PING:
- No Linux com o comando "ping6": $ ping6 fe80::20f:eaff:feae:9044
- No Windows usando o parâmetro "-6": > ping -6 fe80::20f:eaff:feae:9044
Você pode acessar compartilhamentos no Windows por IPv6 também, mas é um pouco mais complicado. Como os ":" do endereço tornariam o formato UNC inválido você deve substituí-los por traços e adicionar o sufixo ".ipv6-literal.net". Veja os exemplos abaixo:
![]() |
Acesso pelo endereço de Loopback (::1) |
![]() |
Usando o endereço Link-local |
- No Windows pelo "netsh": > netsh interface ipv6 show neighbors
- No Linux: $ ip neigh
![]() |
netsh interface ipv6 show neighbors |
![]() |
ip neigh |
Uma notícia boa é que para o DNS não muda praticamente nada. Para cada consulta IPv4 ao DNS é solicitado um registro tipo "A" e para IPv6 registros tipo "AAAA". Não importa se o seu servidor DNS tem suporte ao IPv6 ou não. Você pode fazer o teste com qualquer domínio usando o comando "NSLookUp"(vale para Windows e Linux) especificando o tipo de "query" com a seguinte sintaxe:
> nslookup [-querytype=<Tipo de registro>] <domínio> [Servidor DNS]
Exemplo: nslookup -querytype=AAAA www.globo.com 8.8.8.8
No Linux, além do nslookup(e o dig), temos o comando "host" que pode trazer resultados mais completos:
Repare que o host "ipv6.google.com" tem apenas endereços IPv6 e obviamente apenas registros tipo "AAAA". Sendo assim você pode continuar usando seus servidores DNS de costume para navegar pela Internet IPv6.
O próximo passo é conseguir conectividade IPv6. O problema começa quando a maioria dos provedores não oferece IPv6 aos clientes. As vezes ainda não implementaram na rede ou as CPE's dos assinantes não oferece suporte. A saída mais fácil para estes casos é fazer um túnel com um provedor TunnelBroker. Exemplos são o Freenet 6 e o Hurricane Eletric.
Os links acima têm tutoriais completos. No meu exemplo escolhi o Hurricane por ser mais simples e usar recursos nativos para qualquer sistema operacional(no site da HE tem tutoriais para todos eles), no caso RouterOS. Em seguida, com o túnel fechado no gateway da rede, os hosts serão configurados automaticamente por "router advertisement" e terão conectividade IPv6 de forma rápida.
Basicamente o que deve ser feito é:
Vá em "IPv6 > Addresses" e configure o endereço IPv6 da interface do túnel com o endereço fornecido em "Client IPv6 address":
E adicione uma rota default IPv6 com o endereço em "Server IPv6 Address":
Por fim atribua um endereço do bloco "Routed /64"(vide a tabela "Routed IPv6 Prefixes" fornecida no site nas configurações do túnel) para a interface da sua rede interna habilitando o parâmetro "advertise"(para que os outros hosts aprendam a configuração). Este é o bloco designado para a sua rede. São endereços "Global unicast", por isso únicos no mundo. Sua rede será acessível por esta faixa e cada host terá um endereço "válido", eliminando o NAT.
Acesse qualquer host na rede e verá que rapidamente eles terão endereços na faixa anunciada pelo gateway. Faça um teste no site www.test-ipv6.com. Tendo acesso IPv6 você pode começar a praticar o novo protocolo e fazer a configuração do seu firewall e demais serviços.
O único problema de fazer acessos por túnel é o delay. No meu caso o túnel é fechado com um servidor em Maiami, então todo o meu tráfego v6 faz uma grande volta na América antes de chegar aos destinos, sendo em média 230ms a mais!
Os links acima têm tutoriais completos. No meu exemplo escolhi o Hurricane por ser mais simples e usar recursos nativos para qualquer sistema operacional(no site da HE tem tutoriais para todos eles), no caso RouterOS. Em seguida, com o túnel fechado no gateway da rede, os hosts serão configurados automaticamente por "router advertisement" e terão conectividade IPv6 de forma rápida.
Basicamente o que deve ser feito é:
- Estabelecer o túnel. Lembrando que o pacote IPv6 deve estar instalado no RouterOS.
- Configurar um endereço de escopo global para a interface de rede interna do roteador no bloco atribuído pelo provedor do túnel.
- "Setar" o router advertisement para que os hosts da rede aprendam os endereços segundo o prefixo anunciado.
Feito o cadastro na HE você pode criar a interface do túnel com o seu endereço IPv4 público e o endereço do servidor fornecido:
Vá em "IPv6 > Addresses" e configure o endereço IPv6 da interface do túnel com o endereço fornecido em "Client IPv6 address":
E adicione uma rota default IPv6 com o endereço em "Server IPv6 Address":
Por fim atribua um endereço do bloco "Routed /64"(vide a tabela "Routed IPv6 Prefixes" fornecida no site nas configurações do túnel) para a interface da sua rede interna habilitando o parâmetro "advertise"(para que os outros hosts aprendam a configuração). Este é o bloco designado para a sua rede. São endereços "Global unicast", por isso únicos no mundo. Sua rede será acessível por esta faixa e cada host terá um endereço "válido", eliminando o NAT.
Acesse qualquer host na rede e verá que rapidamente eles terão endereços na faixa anunciada pelo gateway. Faça um teste no site www.test-ipv6.com. Tendo acesso IPv6 você pode começar a praticar o novo protocolo e fazer a configuração do seu firewall e demais serviços.
O único problema de fazer acessos por túnel é o delay. No meu caso o túnel é fechado com um servidor em Maiami, então todo o meu tráfego v6 faz uma grande volta na América antes de chegar aos destinos, sendo em média 230ms a mais!
Comentários
Postar um comentário