Existem possibilidades para adicionar ou remover um túnel ponto a ponto.
Uma boa informação adicional sobre a configuração de túneis fornecida através do comando ”ip” está aqui Configuring tunnels with iproute2 (article) (Mirror).
Um método comum para a criação de uma quantidade pequena de túneis.
Use-o para criar um dispositivo túnel (mas não depois, o TTL também deve ser especificado, porque seu valor default é 0).
# /sbin/ip tunnel add <device> mode sit ttl <ttldefault> remote ¬ <ipv4addressofforeigntunnel> local <ipv4addresslocal> |
Uso (exemplo genérico para 3 túneis):
# /sbin/ip tunnel add sit1 mode sit ttl <ttldefault> remote ¬ <ipv4addressofforeigntunnel1> local <ipv4addresslocal> # /sbin/ip link set dev sit1 up # /sbin/ip -6 route add <prefixtoroute1> dev sit1 metric 1 # /sbin/ip tunnel add sit2 mode sit ttl <ttldefault> ¬ <ipv4addressofforeigntunnel2> local <ipv4addresslocal> # /sbin/ip link set dev sit2 up # /sbin/ip -6 route add <prefixtoroute2> dev sit2 metric 1 # /sbin/ip tunnel add sit3 mode sit ttl <ttldefault> ¬ <ipv4addressofforeigntunnel3> local <ipv4addresslocal> # /sbin/ip link set dev sit3 up # /sbin/ip -6 route add <prefixtoroute3> dev sit3 metric 1 |
Esta não é uma maneira muito recomendada de se criar um túnel porque ele é um pouco estranho. Não há qualquer problema se voce adicionar somente um, mas se voce for configurar mais de um, voce não poderá desfazer os primeiros túneis criados e deixar os últimos em funcionamento.
Uso (exemplo genérico para 3 túneis):
# /sbin/ifconfig sit0 up # /sbin/ifconfig sit0 tunnel <ipv4addressofforeigntunnel1> # /sbin/ifconfig sit1 up # /sbin/route -A inet6 add <prefixtoroute1> dev sit1 # /sbin/ifconfig sit0 tunnel <ipv4addressofforeigntunnel2> # /sbin/ifconfig sit2 up # /sbin/route -A inet6 add <prefixtoroute2> dev sit2 # /sbin/ifconfig sit0 tunnel <ipv4addressofforeigntunnel3> # /sbin/ifconfig sit3 up # /sbin/route -A inet6 add <prefixtoroute3> dev sit3 |
Importante: NÃO USE ISSO, porque esta configuração habilita implicitamente um ”tunelamento automático” de qualquer lugar na internet, e isto é um risco, então não o utilize.
Também é possível configurar túneis no modo Non Broadcast Multiple Access (NBMA), pois é uma maneira fácil de adicionar muitos túneis de uma vez. Mas nenhum dos túneis pode ser numerado (o que não é uma característica).
Uso (exemplo genérico para 3 túneis):
# /sbin/ifconfig sit0 up # /sbin/route -A inet6 add <prefixtoroute1> gw ¬ ::<ipv4addressofforeigntunnel1> dev sit0 # /sbin/route -A inet6 add <prefixtoroute2> gw ¬ ::<ipv4addressofforeigntunnel2> dev sit0 # /sbin/route -A inet6 add <prefixtoroute3> gw ¬ ::<ipv4addressofforeigntunnel3> dev sit0 |
Importante: NÃO USE ISSO, porque esta configuração habilita implicitamente um ”tunelamento automático” de qualquer lugar na internet, e isto é um risco, então não o utilize.
Nem sempre é necessário fazer isso manualmente, mas pode ser usado em scripts para uma limpeza ou restart de uma configuração IPv6.
Uso para remover um dispositivo túnel:
# /sbin/ip tunnel del <device> |
Uso (exemplo genérico para 3 túneis):
# /sbin/ip -6 route del <prefixtoroute1> dev sit1 # /sbin/ip link set sit1 down # /sbin/ip tunnel del sit1 # /sbin/ip -6 route del <prefixtoroute2> dev sit2 # /sbin/ip link set sit2 down # /sbin/ip tunnel del sit2 # /sbin/ip -6 route del <prefixtoroute3> dev sit3 # /sbin/ip link set sit3 down # /sbin/ip tunnel del sit3 |
Não somente a criação é estranha, como também o shutdown... voce tem que remover os tuneis na ordem inversa em que eles foram criados.
Uso (exemplo genérico para 3 túneis):
# /sbin/route -A inet6 del <prefixtoroute3> dev sit3 # /sbin/ifconfig sit3 down # /sbin/route -A inet6 del <prefixtoroute2> dev sit2 # /sbin/ifconfig sit2 down # /sbin/route -A inet6 add <prefixtoroute1> dev sit1 # /sbin/ifconfig sit1 down # /sbin/ifconfig sit0 down |
Isto é como remover rotas normais em IPv6.
Uso (exemplo genérico para 3 túneis):
# /sbin/route -A inet6 del <prefixtoroute1> gw ¬ ::<ipv4addressofforeigntunnel1> dev sit0 # /sbin/route -A inet6 del <prefixtoroute2> gw ¬ ::<ipv4addressofforeigntunnel2> dev sit0 # /sbin/route -A inet6 del <prefixtoroute3> gw ¬ ::<ipv4addressofforeigntunnel3> dev sit0 # /sbin/ifconfig sit0 down |
Às vezes é necessário configurar túneis ponto a ponto com endereços IPv6 como em IPv4. Isto somente é possível utilizando o primeiro (ifconfig+route - obsoleto) e o terceiro (ip+route) modo de configuração. Em tais casos, voce pode adicionar os endereços IPv6 na interface de túnel conforme é mostrado na configuração de uma interface.