A entrada da tabela de roteamento parece ser ignorada no meu Mac

0

Eu tenho uma configuração bastante padrão em casa, que consiste em uma única sub-rede 192.168.240.0/24, e meu roteador DSL fica em 192.168.240.1. Outros dispositivos ocupam 192.168.240.64 em diante.

Mas agora adicionei um servidor Linux em 192.168.240.16, que possui dois NICs. Um, obviamente, sentou-se em 192.168.240.0/24 e outro sentado em 192.168.241.0/24 (192.168.241.16).

No momento, não há mais nada em 192.168.241.0/24, mas pretendo mover meu modem DSL para essa sub-rede em um futuro próximo.

Estou tentando configurar o roteamento na caixa do Linux entre as duas interfaces, e acredito que isso funcione. Mas antes de mover o modem DSL, pensei em me certificar de que o roteamento estava funcionando.

Eu verifiquei a tabela de roteamento no Mac (usando netstat -r ) antes de fazer qualquer coisa, o que (menos entradas irrelevantes) mostrou como:

Destination        Gateway           Flags        Refs      Use   Netif Expire
default            192.168.240.1     UGSc         4665        0     en0
192.168.240        link#4            UCS             8        0     en0

Então, configurei uma rota estática no Mac da seguinte forma:

route add -net 192.168.241.0/24 192.168.240.16

Em seguida, a tabela de roteamento no Mac mostrou:

Destination        Gateway           Flags        Refs      Use   Netif Expire
default            192.168.240.1     UGSc         4665        0     en0
192.168.240        link#4            UCS             8        0     en0
192.168.241        192.168.240.16    UGSc            0        1     en0

Quando tentei fazer o ping na segunda interface na minha caixa do Linux a partir do Mac, não recebi resposta. Verificando as tabelas de roteamento novamente, para meu espanto, apareceu uma linha extra.

Destination        Gateway           Flags        Refs      Use   Netif Expire
default            192.168.240.1     UGSc         4665        0     en0
192.168.240        link#4            UCS             8        0     en0
192.168.241        192.168.240.16    UGSc            0        1     en0
192.168.241.16     192.168.240.1     UGHDI           0       17     en0

Por que essa última linha apareceu e por que ela não honrou a rota que eu criara anteriormente? O que preciso fazer para forçá-lo a usar a rota estática que criei?

    
por Bryan 08.05.2011 / 20:57

2 respostas

1

Eu acho que o D em UGHDI significa dinâmico. A caixa do Linux disse ao Mac que ele não conhecia uma rota para essa sub-rede e disse que seria melhor rotear esses dados para o roteador DSL (porque esse é o gateway padrão da caixa do Linux e, portanto, assumiu saber como rotear em todos os lugares).

Isso implica que a caixa do Linux não está roteando dados entre seus NICs. Eu checaria sua configuração.

    
por 09.05.2011 / 11:13
0

Parece que você precisa não apenas adicionar a nova sub-rede, mas também adicionar uma nova rota padrão que parece ser o que você está fazendo errado.

Curiosamente, tenho problemas com a resolução básica de nomes e rede em dispositivos Apple ( ssh hostname falha com "não foi possível resolver hostname" mas nslookup hostname retorna o IP), então isso não me surpreende no menos.

    
por 08.05.2011 / 22:03