como definir qual rota seria adicionada ao trazer a interface para cima

5

Eu tenho uma duas interfaces em uma máquina, uma é a conexão com a Internet que obtém seu IP de um DHCP, sem problemas.

A outra interface (eth1) é para máquinas locais, e tem o gateway 192.168.3.1 definido em seu arquivo de configuração (distribuição baseada no Ubuntu).

O problema é que, quando estou trazendo a interface eth1 , ela adiciona automaticamente uma rota padrão (0.0.0.0) à tabela de rotas (como deveria), e não consigo me conectar à Internet , uma vez que tenta enviar os pacotes para a rede local. Até agora eu tive que fazê-lo manualmente excluindo a rota padrão com o 192.168.3.1 gateway.

Existe uma maneira de definir que não adicionaria uma rota padrão depois que eu trouxesse a interface? Ainda estou precisando que o gateway 192.168.3.1 permaneça no arquivo de configuração, pois preciso ter uma rota específica para a rede 3.x .

Aqui está minha tabela de rotas:

192.168.3.0     *               255.255.255.0   U     0      0        0 eth1
192.168.1.0     *               255.255.255.0   U     0      0        0 eth0
default         192.168.3.1     0.0.0.0         UG    100    0        0 eth1
default         DD-WRT          0.0.0.0         UG    100    0        0 eth0
    
por Hanan N. 15.12.2011 / 19:08

2 respostas

3

Não declare 192.168.3.1 como um gateway. Gateway significa praticamente "rota padrão". Se o endereço da interface estiver dentro da rede 192.168.3.1/24, então netmask 255.255.255.0 é tudo que você precisa.

Se esse não for o caso, adicione a rota necessária, como parte do script de configuração da interface. No Debian / Ubuntu, coloque uma cláusula up em /etc/network/interfaces ou adicione um script em /etc/network/if-up.d . O comando a executar é route add 192.168.3.1 eth1 && route add -net 192.168.3.0/24 gw 192.168.3.1

    
por 16.12.2011 / 09:18
0

Faça um ip route list primeiro e depois verifique o mesmo novamente na interface eth1. Coloque a mesma coisa no arquivo /etc/sysconfig/network-scripts/route-eth1 para fazer toda vez que a interface for reiniciada, a configuração da rota a partir do arquivo de interface a ser aplicado. Por outro lado, se você quer executar algo específico para isso, você pode colocar em /etc/rc.d/init.dnetwork script para fazer isso para você toda vez que a rede for reiniciada, ele também lerá o arquivo route-eth1 e aplicará a configuração da rota.

    
por 15.12.2011 / 19:18