Como escolher entre múltiplas conexões de rede através da linha de comando?

0

Eu tenho duas conexões de rede - wifi e ethernet. Como escolher uma rede específica para usar enquanto estiver usando a linha de comando, por exemplo. ping google.com.

PS: Eu mencionei o ping como um exemplo. Eu posso estar executando um script python ou curl e deve usar a mesma interface para todos estes.

    
por Bytemare 07.08.2017 / 04:53

1 resposta

0

Pode não ser possível fazer isso sem desativar uma das conexões, a menos que você tenha uma configuração especial.

De um modo geral, as rotas do Linux são controladas pela tabela de rotas, e o tráfego será enviado pela rota com a menor métrica - você pode ver o que é isso usando o comando "ip route" ou "route". Neste caso, a solução mais fácil seria remover a rota que você não quer (usando ip route ou route) ou derrubar a interface que você não quer (usando ifconfig ou ip addr).

Se você tiver um roteamento mais complexo, é possível que seu sistema esteja usando roteamento de origem e, em seguida, roteie os pacotes com base no IP de origem ou de destino por meio de tabelas diferentes. Nesse caso, a maneira mais fácil de fazer isso seria informar ao comando (se suportado) para enviar pacotes com o endereço IP ou a interface de origem (use man COMMAND para ver como isso funcionaria). No ping, seria ping -I INTERFACE, em mtr seu mtr -a SOURCE.IP.ADDRESS

    
por 07.08.2017 / 07:15