Roteamento para o localhost, como funciona?

1

A saída de /sbin/route -n na minha caixa Linux não menciona o intervalo de endereços 127.x.x.x , nem menciona a interface lo . No entanto, ping localhost e ssh localhost estão funcionando bem.

Como o computador conhece a rota para 127.0.0.1 se não estiver na tabela de roteamento?

    
por ilya 29.06.2016 / 13:26

1 resposta

0

(copiado de link )

O comando route está obsoleto e não deve mais ser usado.

A nova maneira é usar o conjunto de comandos iproute, que são todos invocados com ip seguido por um objeto. Por exemplo:

$ ip route show
default via 192.168.1.254 dev eth0 
192.168.0.0/23 dev eth0  proto kernel  scope link  src 192.168.1.27 

Agora, ouvi dizer que esta é basicamente a mesma informação! Sim, mas esta não é toda a história. Antes das tabelas de roteamento (sim, plural) vem a tabela de regras:

$ ip rule show
    0:  from all lookup local 
32766:  from all lookup main 
32767:  from all lookup default 

A tabela de roteamento que vimos antes é a tabela de roteamento main . Sua pergunta diz respeito à tabela de roteamento local , que contém todas as rotas relacionadas às conexões locais. Esta tabela pode ser mostrada da seguinte forma:

$ ip ro sh table local
broadcast 127.0.0.0 dev lo  proto kernel  scope link  src 127.0.0.1 
local 127.0.0.0/8 dev lo  proto kernel  scope host  src 127.0.0.1 
local 127.0.0.1 dev lo  proto kernel  scope host  src 127.0.0.1 
broadcast 127.255.255.255 dev lo  proto kernel  scope link  src 127.0.0.1 
broadcast 192.168.0.0 dev eth0  proto kernel  scope link  src 192.168.1.27 
local 192.168.1.27 dev eth0  proto kernel  scope host  src 192.168.1.27 
broadcast 192.168.1.255 dev eth0  proto kernel  scope link  src 192.168.1.27

(Você pode abreviar ip opções / parâmetros contanto que eles ainda sejam únicos, por isso ip ro sh é o mesmo que ip route show .)

Aqui você pode ver as rotas de loopback.

Você pode fazer todo tipo de coisa maravilhosa com esse roteamento baseado em política , eu recomendo que você leia Política de roteamento com o Linux de Matthew G. Marsh para todas as informações que você precisa.

    
por 30.06.2016 / 02:53