comportamento da tabela de roteamento estático com gateway definido como * (linux)

0

Eu tenho a seguinte tabela de roteamento para um PC Linux. (Eu já habilitei a opção ip_forward)

Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
10.0.1.0        10.0.1.11       255.255.255.0   UG        0 0          0 p1p1
10.0.1.0        *               255.255.255.0   U         0 0          0 p1p1
10.0.2.0        *               255.255.255.0   U         0 0          0 p1p2
10.0.3.0        10.0.2.1        255.255.255.0   UG        0 0          0 p1p2
192.168.1.0     *               255.255.255.0   U         0 0          0 em1
  1. o que significa gateway *? É a mesma coisa que 0.0.0.0? Se não, quais são as diferenças?

  2. qual gateway ele enviará quando o pc receber um pacote 10.0.2.0? Ouvi algumas pessoas dizendo que encaminhará o pacote para todos os gateway disponíveis. A afirmação está correta? Em caso afirmativo, como ele sabe quais gateways estão disponíveis?

  3. qual entrada de roteamento será usada quando o PC tiver um pacote 10.0.1.0? (o primeiro ou o segundo? Não acho que este seja um exemplo de correspondência com prefixo mais longo)

Alex
fonte

Respostas:

3
  1. Gateway * significa que a rede de destino está conectada diretamente, não precisa passar por um roteador.

  2. Ele não passará por um gateway para chegar a 10.0.2.0/24, será enviado diretamente ao destino pela interface p1p2.

  3. Eu acho que ele deve usar a entrada de roteamento diretamente conectada para 10.0.1.0/24. Caso contrário, ele terá uma recursão infinita, pois o gateway para 10.0.1.0/24 está em 10.0.1.0/24.

Respondendo à pergunta em seu comentário, 0.0.0.0/0 é a rota padrão, usada para qualquer coisa sem uma rota mais específica.

Barmar
fonte
Obrigado por uma resposta tão rápida! Agora vejo a razão pela qual as entradas com gateway * estão na tabela antes de adicioná-las .... Você pode explicar como um gateway 0.0.0.0 também funciona?
desculpe, eu não disse a pergunta claramente. O que quero dizer é que, se houver uma entrada com destino 10.0.2.0 e Gateway 0.0.0.0, o que acontecerá se o PC tiver um pacote para 10.0.2.0 (suponha que eu não possua o asterisco e o gateway padrão não esteja definido )
Não tenho certeza se 0.0.0.0 é válido como um gateway. Se você realmente tem uma tabela de roteamento como essa, pode publicá-la em sua pergunta? Talvez as bandeiras vão esclarecer /
Barmar 30/03
Na verdade, eu vi a entrada no link. Possui apenas bandeira U. cyberciti.biz/faq/...
Alex
0.0.0.0 é o mesmo que *. Depende apenas se você deu a -nopção, que indica exibir endereços numéricos em vez de nomes.
Barmar 30/03
0

O anúncio 1 Asterix ( *) é impresso para redes para as quais o gateway não é necessário, porque eles estão conectados diretamente ao seu computador.

Anúncio 2 Você enviará seu pacote pela p1p2interface.

Anúncio 3 Acho que seguirá a *regra e a enviará pela interface para o host de destino.

kamituel
fonte
então, a primeira entrada na tabela não faz nada?