Como rotear o tráfego em uma interface específica no linux (debian)?

1

Gostaria de encaminhar o tráfego através do usb0 (um modem celular) quando está disponível em vez de eth0. O endereço ip para usb0 pode mudar com o tempo. Como faço para criar uma rota neste cenário, uma vez que o endereço IP pode mudar?

Eu tentei: ip route add default dev usb0

mas quando eu faço isso, eu sou capaz de pingar a partir de usb0, mas não mais através de eth0. Alguma idéia do porquê?

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         172.24.1.1      0.0.0.0         UG    10     0        0 eth0
172.19.200.136  *               255.255.255.252 U     0      0        0 usb0
172.24.1.0      *               255.255.255.0   U     0      0        0 eth0
    
por Felix 17.05.2018 / 03:32

1 resposta

0

Nos comentários, você mencionou que está usando udhcpc como seu cliente DHCP.

udhcpc irá passar o endereço do gateway (ou endereços, se houver vários) para o script que é executado (por padrão, /usr/share/udhcpc/default.script ) em uma variável chamada router . Este script deve então definir o gateway padrão de acordo.

Suponho que o script padrão omita a configuração do gateway padrão, se já houver um definido.

Por favor, veja: link

Você não pode simplesmente empurrar os pacotes para fora de qualquer interface de rede antiga. Se a interface emular Ethernet, como seu usb0 provavelmente faz, o pacote precisa de um endereço de destino da Camada 2 válido. O sistema pode obter isso automaticamente fazendo uma solicitação ARP para o endereço IP do gateway ... mas esse endereço IP do gateway deve ser conhecido primeiro.

    
por 17.05.2018 / 15:57