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.
Eu estou tentando obter o roteamento configurado na caixa do Linux entre as duas interfaces, e eu acredito que tenho que trabalhar. Mas antes de mover o modem DSL, pensei em garantir que o roteamento estivesse funcionando.
Eu verifiquei a tabela de roteamento no Mac (usando netstat -r
) antes de fazer qualquer coisa, 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 eu configurei uma rota estática no Mac da seguinte maneira:
route add -net 192.168.241.0/24 192.168.240.16
Então 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 eu tentei pingar a segunda interface na minha caixa Linux 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 não honrou a rota que eu criara anteriormente? O que preciso fazer para forçar a utilização da rota estática que criei?
Respostas:
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 toda parte).
Isso implica que a caixa do Linux não está roteando dados entre seus NICs. Eu checaria sua configuração.
fonte
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, frequentemente tenho problemas com a resolução básica de nomes e a rede em dispositivos Apple (
ssh hostname
falha com "não foi possível resolver o nome do host", masnslookup hostname
retorna o IP), então isso não me surpreende nem um pouco.fonte