rota padrão do linux ipv6 para loopback

0

Estou tentando entender qual é a razão pela qual nos kernels linux recentes existe uma rota padrão ipv6 para o loopback

::/0                           ::                         !n   -1  1     4 lo

é para evitar loops? Por que existem duas rotas na saída abaixo?

root@ubuntu:/# ip -6 route show table all
fd00:1::/64 dev eth0  proto kernel  metric 256  expires 2591833sec
fd00:1::/64 dev eth1  proto kernel  metric 256  expires 2591833sec
fd00:2::/64 via fd00:1::1 dev eth0  metric 1 
fe80::/64 dev eth0  proto kernel  metric 256 
fe80::/64 dev eth1  proto kernel  metric 256 
default via fe80::21f:12ff:fe31:5600 dev eth0  proto kernel  metric 1024  expires 1309sec
default via fe80::21f:12ff:fe31:5600 dev eth1  proto kernel  metric 1024  expires 1309sec
unreachable default dev lo  table unspec  proto kernel  metric -1  error -101
local ::1 via :: dev lo  table local  proto none  metric 0 
local fd00:1::250:56ff:fe8a:596a via :: dev lo  table local  proto none  metric 0 
local fd00:1::250:56ff:fe8a:596b via :: dev lo  table local  proto none  metric 0 
local fd00:1::18ec:2a1:3b2e:8302 via :: dev lo  table local  proto none  metric 0 
local fd00:1::59b1:42d0:b380:a32d via :: dev lo  table local  proto none  metric 0 
local fe80::250:56ff:fe8a:596a via :: dev lo  table local  proto none  metric 0 
local fe80::250:56ff:fe8a:596b via :: dev lo  table local  proto none  metric 0 
ff00::/8 dev eth0  table local  metric 256 
ff00::/8 dev eth1  table local  metric 256 
unreachable default dev lo  table unspec  proto kernel  metric -1  error -101
root@ubuntu:/# route -nA inet6           
Kernel IPv6 routing table
Destination                    Next Hop                   Flag Met Ref Use If
fd00:1::/64                    ::                         UAe  256 0     1 eth0
fd00:1::/64                    ::                         UAe  256 0     0 eth1
fd00:2::/64                    fd00:1::1                  UG   1   0     0 eth0
fe80::/64                      ::                         U    256 0     0 eth0
fe80::/64                      ::                         U    256 0     0 eth1
::/0                           fe80::21f:12ff:fe31:5600   UGDAe 1024 0     0 eth0
::/0                           fe80::21f:12ff:fe31:5600   UGDAe 1024 0     0 eth1
::/0                           ::                         !n   -1  1     4 lo
::1/128                        ::                         Un   0   1    12 lo
fd00:1::250:56ff:fe8a:596a/128 ::                         Un   0   1     0 lo
fd00:1::250:56ff:fe8a:596b/128 ::                         Un   0   1     0 lo
fd00:1::18ec:2a1:3b2e:8302/128 ::                         Un   0   1     0 lo
fd00:1::59b1:42d0:b380:a32d/128 ::                         Un   0   1     0 lo
fe80::250:56ff:fe8a:596a/128   ::                         Un   0   1     0 lo
fe80::250:56ff:fe8a:596b/128   ::                         Un   0   1     0 lo
ff00::/8                       ::                         U    256 0     0 eth0
ff00::/8                       ::                         U    256 0     0 eth1
::/0                           ::                         !n   -1  1     4 lo
root@ubuntu:/# 

A saída é forma

root@ubuntu:/# uname -a
Linux ubuntu 3.5.0-23-generic #35~precise1-Ubuntu SMP Fri Jan 25 17:13:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
    
por user2206433 25.03.2013 / 07:45

1 resposta

1

Como os sinalizadores !n indicam, isso é uma rejeição do tráfego para IN6ADDR_ANY. O significado desta entrada de rota é que o dispositivo lo nunca será usado como rota padrão.

A linha equivalente na tabela ip route mostrada aqui é:

unreachable default dev lo  table unspec  proto kernel  metric -1  error -101

(Observe também que, conforme a página man avisa, o comando route está obsoleto e você deve usar ip route .)

    
por 27.03.2013 / 04:38