Configurar o roteamento IPv6

3

Eu tenho endereços IPv6 do SIXXS. Meu host está conectado à rede SIXXS através de um túnel AICCU (interface "sixxs"). Meu endereço de host é 2001: :: 2, o host no final tem o endereço 2001: :: 1. No meu host IPv6 é totalmente acessível. Eu tenho problema com a configuração de rede IPv6 em VMs. Eu uso o VirtualBox, a VM (Ubuntu) usa tap1 (no host ligado por br0)

#!/bin/sh

PATH=/sbin:/usr/bin:/bin:/usr/bin:/usr/sbin

# create a tap
tunctl -t tap1
ip link set up dev tap1

# create the bridge
brctl addbr br0
brctl addif br0 tap1

# set the IP address and routing
ip link set up dev br0
ip -6 route del 2001:6a0:200:172::/64 dev sixxs
ip -6 route add 2001:6a0:200:172::1 dev sixxs
ip -6 addr add 2001:6a0:200:172::2/64 dev br0
ip -6 route add 2001:6a0:200:172::2/64 dev br0

Host: tabela de roteamento:

2001:6a0:200:172::1 dev sixxs  metric 1024 
2001:6a0:200:172::/64 dev br0  proto kernel  metric 256 
2001:6a0:200:172::/64 dev br0  metric 1024 
2000::/3 dev sixxs  metric 1024 
fe80::/64 dev eth0  proto kernel  metric 256 
fe80::/64 dev sixxs  proto kernel  metric 256 
fe80::/64 dev br0  proto kernel  metric 256 
fe80::/64 dev tap1  proto kernel  metric 256 
default via 2001:6a0:200:172::1 dev sixxs  metric 1024

Guest: interface eth1 (está conectado com tap1):

auto eth1
iface eth1 inet6 static
address 2001:6a0:200:172::3
netmask 64
gateway 2001:6a0:200:172::2

Convidado: tabela de roteamento

2001:6a0:200:172::/64 dev eth1 proto kernel metric 256
fe80::/64 dev eth0 proto kernel metric 256
fe80::/64 dev eth1 proto kernel metric 256
default via 2001:6a0:200:172::2 dev eth1 metric 1024

O convidado pinga para o host, o host pings para o convidado, o host pings para 2001: 6a0: 200: 172 :: 1, mas o convidado não pingar para 2001: 6a0: 200: 172 :: 1 . O convidado tenta fazer ping, no host (por tcdump) eu posso capturar seus pacotes, mas o host não os envia para 2001: 6a0: 200: 172 :: 1. O que perdi na configuração?

    
por godlark 27.06.2012 / 18:26

1 resposta

2

Verifique a saída do comando

 sysctl -a | grep ipv6 | grep forward

Isso deve mostrar um valor de 1 para todas as redes que você deseja encaminhar. Você deve ser capaz de ativar o encaminhamento com o comando:

sysctl net.ipv6.conf.all.forwarding=1

Eu consideraria seriamente a configuração de um firewall iptables para que você não abra seus sistemas inteiramente para a Internet IPv6. Ao contrário do IPv4, você não tem um dispositivo NAT que impeça conexões de entrada. O firewall Shorewall tem uma versão IPv6 que deve fornecer um firewall simples para configuração. A configuração de duas interfaces de exemplo deve ser um bom ponto de partida e pode ser configurada para habilitar o encaminhamento para você.

Meu artigo sobre Configurando o IPv6 em um roteador OpenWRT (Linux) pode dar-lhe alguns ponteiros. Configure seus hosts como o roteador.

EDIT: Eu revisei a documentação do SixXS e verifiquei que no túnel somente os endereços :: 1 (P0P e :: 2 (seu endpoint) são válidos. Você deveria ter recebido um 'default routed / 64' que você pode usar Atribua um endereço à sua ponte (Tradicionalmente, o endereço :: 1 é o roteador.) Você pode configurar um daemon radvd para anunciar rotas na rede interna. Se você usa radvd da sua caixa virtual a imagem deve ser configurada automaticamente com um endereço e uma rota.

Se você deseja rotear outros dispositivos locais, adicione eth1 ou eth0 'conforme apropriado para a ponte.

    
por 28.06.2012 / 03:13