IPv6 – Túneis 6over4 (IPv6-over-IPv4)

Quando a utilização de pilha dupla não é possível, umas das alternativas a ser considerada é a utilização de túneis. As técnicas de tunelamento fazem o encapsulamento de pacotes IPv6 em pacotes IPv4. Este encapsulamento é conhecido como 6in4 ou IPv6-in-IPv4 (RFC 4213). Ele consiste em colocar o pacote IPv6 dentro de um pacote IPv4, adequar os endereços de origem e destino para o IPv4 e colocar no cabeçalho o tipo 41 (29 em hexadecimal). Esse tipo de encapsulamento é conhecido por 6in4,  ou como “protocolo 41”. Quando o destino receber o pacote com tipo 41 ele irá remover o cabeçalho IPv4 e tratar o pacote como IPv6. A figura 13 ilustra esse comportamento.

Também é possível, de forma análoga, encapsular pacotes IPv4 em pacotes IPv6, técnica conhecida como 4in6. Algumas das técnicas de transição estudadas mais à frente fazem isso.

img13

Figura 13: funcionamento 6in4

Uma das formas de utilizar-se túneis é criando-os manualmente. A técnica 6over4 (RFC 4213) utiliza um túnel manual estabelecido entre dois nós IPv4 para enviar o tráfego IPv6. Todo o tráfego IPv6 a ser enviado é encapsulado em IPv4 usando 6in4, explicado anteriormente. A configuração manual consiste em definir quais serão os IPs v4 de origem e destino que serão utilizados em cada ponta do túnel. Ao ser recebido pelo nó destino, o pacote IPv6 é desencapsulado e tratado adequadamente.

Esse tipo de túnel pode ser utilizado para contornar um equipamento ou enlace sem suporte a IPv6 numa rede, ou para criar túneis estáticos entre duas redes IPv6 através da Internet IPv4.

É importante entender a diferença entre 6over4 e 6in4. O túnel 6over4 é um túnel estabelecido manualmente que tem o objetivo de permitir conexão IPv6 entre dois nós de rede conectados por uma rede via IPv4. Ele usa o encapsulamento 6in4. Já o encapsulamento 6in4, com a utilização do tipo 41, pode ser utilizado também em outras técnicas de transição que transportam pacotes IPv6 em redes IPv4, como poderá ser observado ao longo deste texto.

Criar um túnel 6over4 é bastante fácil. A seguir serão mostrados exemplos de como fazer esta implementação no Linux e com roteadores Cisco. A topologia da implementação em Linux é:
img14

Figura 14: túnel manual 6over4 entre dois dispositivos

Os computadores Host A e Host B são computadores Linux e os roteadores simplesmente representam uma rede somente IPv4 ou a Internet IPv4. Os computadores devem ser configurados com os seguintes passos:

No Host A, basta digitar os comandos:


ip tunnel add toHostB mode sit ttl 64 remote 192.0.2.130 local 192.0.2.2
ip link set dev toHostB upip -6 route add 2001:db8::b0ca dev toHostB

De forma análoga, no Host B:

ip tunnel add toHostA mode sit ttl 64 remote 192.0.2.2 local 192.0.2.130 ip link set dev toHostA up
ip -6 route add 2001:db8::ba1a dev toHostA

Para verificar o correto funcionamento pode-se utilizar o comando ping6 antes e depois de fazer as configurações. Será possível notar que as duas máquinas passaram a comunicar-se via IPv6.

Para o exemplo de configuração em roteadores Cisco de túneis 6over4 a topologia será:
img15

Figura 15: túnel manual 6over4 entre dois roteadores

Para a configuração do túnel somente é necessária a configuração do Roteador A e do Roteador B.

No Roteador A:

configure terminal
interface Tunnel10
ipv6 address 2001:db8:100::1/64
tunnel source 198.51.100.5
tunnel destination 203.0.113.198
tunnel mode ipv6ip
end

Ainda no Roteador A, é necessário ativar o roteamento IPv6 e criar uma rota para a rede do Roteador B, apontando para o Túnel 6over4:

ipv6 unicast-routing
ipv6 route 2001:db8:20::/64 2001:db8:100::2

De forma análoga, no Roteador B:


configure terminal
interface Tunnel20ipv6 address 2001:db8:100::2/64
tunnel source 203.0.113.198
tunnel destination 198.51.100.5
tunnel mode ipv6ip
endipv6 unicast-routing
ipv6 route 2001:db8:10::/64 2001:db8:100::1

Mais uma vez, é possível testar a configuração utilizando o ping para IPv6.

Fonte: http://ipv6.br/entenda/transicao/#tecnicas-6o4

Deixe um comentário