Como obter o IPv6 funcionando corretamente?

10

Então, meu problema é que simplesmente não consigo fazer o IPv6 funcionar. Ping6 apenas me diz connect: Network is unreachable quando tento pingar ipv6.google.com por exemplo.

ifconfig parece (um pouco censurado):

eth0      Link encap:Ethernet  HWaddr **:**:e9:b6:35:7e  
          inet addr:***.*.65.177  Bcast:***.*.65.191  Mask:255.255.255.224
          inet6 addr: fe80::16da:e9ff:feb6:357e/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:* errors:0 dropped:0 overruns:0 frame:0
          TX packets:* errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:*  TX bytes:*
          Interrupt:28 Base address:0xc000 
lo        ...

route -6 retorna:

Destination                    Next Hop                   Flag Met Ref Use If
fe80::/64                      ::                         U    256 0     0 eth0
fe80::/64                      ::                         U    256 0     0 tap0
::/0                           ::                         !n   -1  1  5400 lo
::1/128                        ::                         Un   0   4269387 lo
fe80::16da:e9ff:feb6:357e/128  ::                         Un   0   1   391 lo
fe80::4c7b:2bff:fef4:9db/128   ::                         Un   0   1     0 lo
ff00::/8                       ::                         U    256 0     0 eth0
ff00::/8                       ::                         U    256 0     0 tap0
::/0                           ::                         !n   -1  1  5400 lo

Outra coisa estranha é que o ping do meu próprio endereço IPv6 só funciona se eu disser ping6 para usar especificamente a interface eth0 com -I eth0 caso contrário, retornarei unknown host .

Uma coisa que eu li é que eu preciso especificar meu roteador na tabela de roteamento de alguma forma, mas eu nem sei o endereço do roteador e eu não tenho idéia sobre como descobrir isso (porque eu sou nada como um especialista em rede e o IPv6 parece ainda mais confuso do que o IPv4 para mim).

Alguma ideia ou solução?

    
por Cobra_Fast 06.09.2012 / 14:18

2 respostas

12
     inet6 addr: fe80::16da:e9ff:feb6:357e/64 Scope:Link

fe80 :: / 10 como o "Escopo" por trás dele é um endereço Link-Local.

Para se conectar ao resto da internet, você precisa de um endereço global (portanto, de 2000 :: / 3 pelo menos pelos próximos anos) e, claro, você precisa de pelo menos um padrão (:: / 0) ou padrão (2000 :: / 3) rota para um roteador que realmente encaminha seus pacotes.

Assim, você tem duas opções:  1) peça ao seu ISP para lhe fornecer IPv6 nativo  2) obter um túnel (google para 'wikipedia ipv6 tunnel broker' para obter uma boa lista).

    
por 06.09.2012 / 15:26
5

Você não tem um endereço IPv6 público configurado em seu host (os endereços públicos começam com 2xxx ou 3xxx). Você só tem um endereço local de link (fe80: :) configurado, então você só pode executar ping em outros hosts em sua rede.

Você tem que setar "-I eth0" ao fazer o ping, porque você está pingando um endereço local de link (fe80 :: / 64), que está configurado em todas as suas interfaces, e ping não sabe qual interface usar.

Você precisa entrar em contato com o administrador da rede sobre as configurações de rede (endereço IP, gateway, dns) e configurá-lo. Como a publicidade do roteador é ativada por padrão na maioria das máquinas, provavelmente não há roteador enviando-as para fora, ou você teria um endereço IPv6 e autoconfigurado.

    
por 06.09.2012 / 15:26