Técnica de utilização do mecanismo de transição “Tunnel Broker” para a
comunicação do protocolo IPv6 em redes IPv4.
Everton Bergamin 10189160086-1
José Oséas Ferreira 10189134248-1
Curso de Pós Graduação em Redes e Segurança de Sistemas
Pontifícia Universidade Católica do Paraná
Curituba-PR, Fevereiro de 2013
Resumo
O objetivo é oferecer a proposta de utilização do mecanismo de transição “Tunnel
Broker” em ambiente Linux para a comunicação do protocolo IPv6 sobre uma rede de
comunicação IPv4. O artigo é orientado a desenvolvedores e pesquisadores que querem uma
plataforma de túnel IPv6 estável.
1. Tunel Broker
TABELA 1 - Siglas do Tunnel Broker
TC
Tunnel Client
TB
Tunnel Broker
TS
Tunnel Server
Tunnel Broker é uma alternativa para se conseguir conectar a internet via IPv6, quando
ela ainda não está disponível em sua rede ou em seu provedor de Internet. Esta é uma técnica
onde permite que hosts IPv6/IPv4 isolados em uma rede IPv4 acessem redes IPv6. Essa
abordagem é útil para estimular o crescimento de redes IPv6, aumentando os host que
possuam suporte ao novo protocolo de IP.
A ideia do Túnel Broker é uma abordagem alternativa baseada na oferta de servidores
dedicados, a gerenciar automaticamente os pedidos vindos dos túneis dos usuários.
O túnel pode ser visto como um provedor virtual, que proporciona conectividade para
os usuários já conectados na rede IPv4.
QUADRO 1 - Topologia Lógica do Tunnel Broker [1]
+------+
/|
|
/ |server|
/ |
|
/
+------+
Autenticação
+----------+
+------+/
+------+
|
Nó
|
|
|
|túnel |
|Pilha Dupla|<--->| TB |<--->|server|
|
(TC)
|
|
|
|
|
+----------+
+------+\
+------+
|
\
+------+
túnel end-point
v
\ |túnel |
/\
+---+
\ |server|
||
|DNS|
\|
|
||
+---+
+------+
||
||
túnel end-point
||
/\
||
||
Pacotes IPv6 Encapsulados na Rede IPv4
|+---------------------------+|
+-----------------------------+
IPv6 sobre túnel IPv4
O TC envia um pacote pela Internet IPv4 para autenticar-se e requisitar o serviço do
TB. O TB é onde o usuário se conecta para registrar e ativar o túnel. Na continuidade, o TB
gerencia a criação, alteração e exclusão do túnel pelo usuário e cria registros para utilizar de
nomes de IPv6 no DNS.
1.2 Tunnel Server
O TS é um roteador de pilha dupla (IPv4 e IPv6) conectado a Internet global. Após a
recepção de uma ordem do TB, o TS cria, modifica ou excluí o servidor de cada túnel,
podendo também manter as estatísticas dos mesmos. O TS é o servidor que fecha o túnel com
o cliente do túnel, trabalhando para fazer o interfaceamento entre o IPv6 e o IPv4.
1.3 Utilizando o Tunnel Broker
O usuário do Tunel Broker é um roteador IPv6 de Pilha-Dupla (dual-stack) conectado
a internet IPv4. Antes do usuário se conectar com o TB, o cliente deve se identificar e inserir
as credenciais de autenticação do usuário, de modo que o túnel seja adequado conforme a
configuração. O TB é o responsável por receber as requisições de túnel e autenticação dos
seus clientes e também é o responsável por fazer as trocas de pacotes IPv6 e IPv4 entre o TS e
o TC para o fechamento do túnel.
Após a autorização do cliente a acessar o serviço, se a maquina cliente conter um
serviço de roteamento IPv6, ela estará disposta a distribuir endereços de IPv6 para vários host.
O TS gerencia o cliente da seguinte maneira:

Escolhe o prefixo IPv6 a ser alocado para o cliente;

Determina uma vida útil para o túnel;

Registra automaticamente no DNS os endereços de IPv6 globais;

Configura o TB;

Notifica informações relevantes para a configuração do cliente, incluindo parâmetros
do túnel e registros de DNS.
O cliente deve especificar a quantidade de endereços IPv6 que será utilizado,
possibilitando assim que o roteador possa resolver a conectividade para vários host na rede.
Os tipos de endereçamento IPv6 recebido pelo tuunel broker são unicast global, o
mesmo que receberia diretamente do provedor de Internet.
Após as etapas de configuração serem concluídas, o túnel IPv6 sobre IPv4 estará
ativado e operando, permitindo que o usuário possa ter acesso ao 6bone ou qualquer outra
rede IPv6.
2. Configuração e Cenário do Tunnel Broker
Figura 2 – Cenário do Tunnel Broker
TS Miami, FL, EUA [209.51.161.58]
3
A figura 2 demonstra o cenário que envolve as configurações presentes neste artigo.
1 - O Tunnel Client (TS) envia um pacote por sua rota IPv4 (Internet IPv4),
autenticando-se e requisitando serviço de túnel para o Tunnel Broker (TB);
2 - O TB envia um pacote ao Tunnel Server (TS), indicando o endereço IPv4 e o IPv6
que o TC utilizará para ser adicionado em sua tabela de roteamento;
3 - O TB envia um pacote para TS, indicando o endereço IPv4 e IPv6 do TS para que
se feche o túnel entre os dois pontos pela Internet IPv4.
O túnel é então estabelecido entre o TC e o TS. Após o fechamento túnel nas duas
pontas, no TC, os pacotes IPv6 são encapsulados e enviados no túnel via Internet IPv4
utilizando o protocolo 41, o protocolo é utilizado tanto para o TS quanto para o BC;
A partir deste ponto as estações da LAN podem utilizar o prefixo (obtido por RA do
BC) e auto-configurar seus endereços IPv6 de escopo global para que possam se comunicar
com o servidor WEB IPv6 como se estivessem conectados ao backbone IPv6;
Toda a comunicação interna em IPv6 da LAN continua a ser realizada normalmente
pelo endereço “FE80::/10” de escopo link-local possibilitando seu uso juntamente com o
cenário de pilha-dupla (IPv4/IPv6) e todos os recursos e serviços IPv6 disponíveis.
Os túneis utilizados para testes foram disponibilizados pela organização Hurricane
Eletric (HE) – Internet Service [3]. A empresa disponibiliza túneis gratuitos, permitindo o
acesso a Internet via tunelamento a partir dos seus roteadores IPv6. Os serviços de TB da HE
são orientados para desenvolvedores e pesquisadores que querem utilizar um túnel estável nos
estudos e implementação em seus aplicativos.
Algumas vantagens foram encontradas, o que motivou a escolha na utilização do
tunelamento da HE.
Principais vantagens de utilizar os serviços da HE:

Disponibiliza prefixo /48, se necessário;

Disponibiliza a visão das tabelas de roteamento;

Disponibiliza suporte aos problemas através do email: [email protected];

Habilita a utilização do túnel em poucos instantes;

TS disponíveis em diversas áreas geográficas;

Fornece até cinco túneis para cada usuário cadastrado.
2.1 Implantações do Tunnel Broker
O objetivo desta implantação foi de túneis experimentais plataforma Linux. O trabalho
compreende os seguintes componentes:
a.
Implementação de duas maquinas com suporte IPv6 através de TB;
b.
Criar túneis regulares disponíveis no HE;
c.
Verificar o IP real da rede;
d.
Configurar o TB em plataforma Linux Ubuntu 11.10 Desktop.
2.2 Implementação do TB com Suporte IPv6
Foi implementado e testado o TB em um Sony Vaio VGN-NS130E - Pentium DualCore, 2.00 GHz, 2.00 GHz, 3,0 GB RAM, 160 HD, 1 Adaptador Ethernet Conexão Local
(Marvel Yukon 88E8055).
A implantação do TB na plataforma Linux Ubuntu 11.10 Desktop foi realizada através
de software de virtualização de sistemas operacionais. O software de virtualização utilizado
foi o Oracle Virtual Box Versão 3.2.8.
2.3 Criação de Túneis Regulares
A Hurricane Eletric® é um provedor de serviços de tunelamento sobre redes IPv4
possibilitando o alcance do IPv6 aos hosts.
Após a realização do cadastro e ativação da conta, o usuário pode solicitar até cinco
túneis pelo site.
Na seção User Functions, foi aberto o link Create Regular Tunnel. A página foi
redirecionada para configuração do túnel. Nesta etapa, foi informado no campo IPv4 endpoint
o endereço de IP valido na internet de onde o túnel será utilizado. Logo foi selecionado o
servidor mais próximo à localidade de Paranaguá-PR. Foi realizado um teste de ping em cada
servidor para saber o tempo de resposta e analisar o servidor mais próximo e com respostas
mais rápidas. O Servidor selecionado foi Miami, FL, EUA [209.51.161.58].
2.4 Configuração do TB no Ubuntu 11.10
O prefixo router atribuído ao endereço IPv6 é um /64.
ID do Túnel: 193200
Data de criação do Túnel: 30 de Janeiro de 2013
IPv6 Tunnel Endpoints
Server IPv4 Address: 209.51.161.58 (Endereço IPv4 do servidor TS)
Server IPv6 Address: 2001:470:4:d24::1/64 (Endereço IPv6 do servidor TS)
Client IPv4 Address: 201.89.73.86 (Endereço IPv4 real – cliente local)
Client IPv6 Address: 2001:470:4:d24::2/64 ((Endereço
fornecido – cliente local).
2.4.1 Ativando o túnel e configurando endereço IPv6:
Configuração Linux-net-tools
de
escopo
global
IPv6
root@ubuntu:/# ifconfig sit0 up
root@ubuntu:/# ifconfig sit0 inet6 tunnel ::209.51.161.58
root@ubuntu:/# ifconfig sit1 up
root@ubuntu:/# ifconfig sit1 inet6 add 2001:470:4:d24::2/64
root@ubuntu:/# route -A inet6 add ::/0 dev sit1
Para configurar o IPv6 no Linux como router Ipv6:
root@ubuntu:/# modprobe ipv6
root@ubuntu:/# ip tunnel add he-ipv6 mode sit remote 209.51.161.58 local
201.89.73.86 ttl 255
root@ubuntu:/# ip link set he-ipv6 up
root@ubuntu:/# ip addr add 2001:470:4:d24::2/64 dev he-ipv6
root@ubuntu:/# ip route add ::/0 dev he-ipv6
root@ubuntu:/# ip -f inet6 addr
A configuração ficou a seguinte:
root@ubuntu:/# ifconfig
eth0 Link encap:Ethernet Endereço de HW 08:00:27:b0:a0:38
inet end.: 192.168.1.115 Bcast:192.168.1.255 Masc:255.255.255.0
endereço inet6: fe80::a00:27ff:feb0:a038/64 Escopo:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Métrica:1
pacotes RX:141175 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:108851 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:1000
RX bytes:39466100 (39.4 MB) TX bytes:14141214 (14.1 MB)
he-ipv6 Link encap:IPv6 sobre IPv4
endereço inet6: fe80::c959:4956/128 Escopo:Link
endereço inet6: 2001:470:4:d24::2/64 Escopo:Global
UP POINTOPOINT RUNNING NOARP MTU:1480 Métrica:1
pacotes RX:0 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:0 erros:60 descartados:0 excesso:0 portadora:60
colisões:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
lo Link encap:Loopback Local
inet end.: 127.0.0.1 Masc:255.0.0.0
endereço inet6: ::1/128 Escopo:Máquina
UP LOOPBACK RUNNING MTU:16436 Métrica:1
pacotes RX:70 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:70 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:0
RX bytes:9368 (9.3 KB) TX bytes:9368 (9.3 KB)
sit0 Link encap:IPv6 sobre IPv4
endereço inet6: ::127.0.0.1/96 Escopo:Desconhecido
endereço inet6: ::192.168.1.115/96 Escopo:Compat
UP RUNNING NOARP MTU:1480 Métrica:1
pacotes RX:0 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:0 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
sit1 Link encap:IPv6 sobre IPv4
endereço inet6: fe80::c0a8:173/64 Escopo:Link
endereço inet6: 2001:470:4:d24::2/64 Escopo:Global
UP POINTOPOINT RUNNING NOARP MTU:1480 Métrica:1
pacotes RX:54025 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:53575 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:0
RX bytes:15871634 (15.8 MB) TX bytes:5555652 (5.5 MB)
Para que o roteamento da rede IPv6 funcione, é necessário que o router esteja
habilitado para encaminhar o Protocolo 41. Dentro do cabeçalho IPv4, o Protocolo 41 é
definido para encapsular o pacote IPv6. O firewall deve estar habilitado para este protocolo.
Pode ser utilizado o DHCPv6 para encaminhar endereços IPv6 automático na rede
privada, também é possível fazer NAT na versão para IPv6, a rede privada com o NAT6
ficaria com escopo de link-local “FE80::/10”.
3. Testes Realizados
Foi realizado testes de ping6 e traceroute6 via shell do Ubuntu:
ubuntu@ubuntu:~$ ping6 www.google.com
PING www.google.com(2800:3f0:4001:802::1013) 56 data bytes
64 bytes from 2800:3f0:4001:802::1013: icmp_seq=1 ttl=55 time=368 ms
64 bytes from 2800:3f0:4001:802::1013: icmp_seq=2 ttl=55 time=325 ms
...
--- www.google.com ping statistics --10 packets transmitted, 10 received, 0% packet loss, time 9018ms
rtt min/avg/max/mdev = 325.060/373.204/739.370/122.752 ms
ubuntu@ubuntu:~$ traceroute6 ipv6.br
traceroute to ipv6.br (2001:12ff:0:4::22), 30 hops max, 80 byte packets
1 ehtoberga-3.tunnel.tserv12.mia1.ipv6.he.net (2001:470:4:d24::1) 194.450 ms 200.911
ms 201.267 ms
2 gige-g2-3.core1.mia1.he.net (2001:470:0:8c::1) 213.355 ms 214.763 ms 215.983 ms
O site www.test-ipv6.com fornece resultado detalhado quanto a conectividade IPv6:
Figura 3 Teste de Conectividade IPv6 em Escopo Global
4. Conclusão
Neste trabalho foi apresentada e desenvolvida a técnica de transição tunner broker,
possibilitando aos pesquisadores, estudantes e desenvolvedores de softwares, a conexão em
IPv6, ainda que o mesmo não esteja nativo na rede através de seus provedores de internet.
Este trabalho não teve como finalidade apresentar a solução para a escassez dos endereços de
IP, a técnica apresentada possibilita a implementação e testes de novos serviços em IPv6,
garantindo que a transição do IPv4 para o IPv6 seja realizada gradativamente e sem muito
transtornos aos administradores.
Foram encontrados varias dificuldades para a elaboração deste artigo, em primeiro foi
à dificuldade de encontrar artigos de configurações e explicações detalhados da técnica TB e a
implantação em diversas plataformas de sistemas.
Em seguida, foi encontrado dificuldades para se implantar o TB em plataforma apenas
para teste de funcionalidade no Windows, onde a única solução foi, além das configurações
do túnel e de endereços IPv4 e IPv6 no promt do Windows, a configuração de uma
VPN/PPTP, possibilitando um túnel seguro entre o TC e o TS.
Concluindo, o trabalho teve uma compensação muito grande na vida profissional dos
acadêmicos participantes deste trabalho, possibilitou uma propulsão maior na criação e
implantação de projetos, hoje podemos dizer que, a vida nos dá o que buscamos e corremos
atrás.
5. Bibliografia
[1]
DURAND, et al. RFC 3053. IPv6 Tunnel Broker. Published by Internet Engineering
Task Force (IETF). Internet Society (ISOC) RFC Ed. USA. Janeiro de 2001.
Disponível em: http://www.ietf.org/rfc/rfc3053.txt
[2]
SANTOS, Rodrigo Regis dos. Técnica de Transição – Tipos de Túneis. São Paulo,
Comitê Gestor da Internet no Brasil. Outubro de 2008. Disponível em:
http://www.ipv6.br/IPV6/ArtigoTecnicasTransicaoParte04.
[3]
Hurricane Electric. Acesso aos conteúdos em www.tunnelbroker.net.
[4]
WGA Networks Solutions. Tecnologia e Desenvolvimento – Material sobre IPv6 e
ATM. Disponível em http://wilson-redes.sites.uol.com.br/redes1.html.