Freebsd altera rota padrão do canal da Internet

10

Eu tenho dois canais da Internet e Gateway no freebsd. Quando troco de canal com o comando route change default chan2, o comando netstat -nrmostra a rota padrão alterada. Mas traceroutemostra que os pacotes passam pela rota antiga chan1.

Exemplo:

$netstat -nr 
Routing tables Internet: Destination Gateway  Flags    Refs   Use  Netif Expire
                         default     xxx.xxx.183.54 US 0 8432    em3

$sudo route change default xxx.xxx.144.125 
change net default: gateway> xxx.xxx.144.125

$netstat -nr
Routing tables Internet: Destination Gateway Flags Refs Use  Netif Expire
                         default     xxx.xxx.144.125   US  2  16450  em3

MAS

$ traceroute 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 64 hops max, 52 byte packets
 1  xxx.xxx.183.53 (xxx.xxx.183.53)  0.527 ms  0.415 ms  0.483ms

Tudo funciona se eu executar a seguinte combinação:

$ sudo route del default

$ sono 10

A rota $ sudo adiciona o padrão xxx.xxx.144.125

Taron
fonte
Qual versão você está executando ( uname -adeve mostrar)?
Chris S
FreeBSD 8.2-RELEASE FreeBSD 8.2-RELEASE # 0: Fri 15 de abril 12:45:40 MSD 2011 [email protected]: / usr / src / sys / amd64 / compile / IXI_8_2_PF_x64 amd64
Taron
O gateway na sua primeira tabela de roteamento e o primeiro salto no seu traceroute não são os mesmos (0,53 vs 0,54) - você copiou e colou ou redigitou isso? Você também pode postar a saída completa de netstat -rnf inet?
James O'Gorman
O traceroute executado no meu GW (.54), .53 é o dispositivo do primeiro provedor de IP.
Taron
5
Limpe o cache do ARP arp -d -ae / ou as tabelas de roteamento route flushantes de adicionar a nova rota padrão. Possivelmente, o espaço do kernel / usuário está consultando dados obsoletos.
inetplumber 8/13

Respostas:

0

Se você usar o route changecomando, precisará reiniciar o serviço de rede para aplicar as alterações, por exemplo:

$ sudo /etc/rc.d/netif restart
Vasil Jamalashvili
fonte
0

É possível que você tenha uma rota em cache para 8.8.8.8? A saída completa de netstat -nrmostraria isso. Nesse caso, você precisaria removê-lo antes de testar sua alteração - especificamente essa rota ou você poderia route flushadicionar e não alterar o gateway padrão (mas lembre-se de que isso interromperá o tráfego não local enquanto estiver entre os dois comandos) maneira).

user133831
fonte