Testar a conectividade de uma interface

4

Eu tenho um raspberry Pi com três interfaces eth0 (Ethernet), wlan0 (WiFi) e wwan0 (por meio de um modem GSM)

Como posso testar se uma conexão com a Internet está disponível através de uma determinada interface? por exemplo. meu modem GSM (wwan0) está conectado à Internet?

Se eu tentar executar o ping www.google.com - Como sei qual interface está sendo usada?

Como posso forçar a conectividade através de uma determinada interface, se houver mais de uma?

    
por OneGuyInDc 02.10.2014 / 19:24

2 respostas

4

Verifique sua tabela de roteamento

route -n

Os resultados mostrarão a você qual ordem de precedência as interfaces estão configuradas para Receber / Transmitir e para quais endereços essas operações executam. As rotas no topo são as que usam a força. Duas regras para a mesma interface significam que a que está no topo é a usada.

Tente executar o seu comando ping ou traceroute enquanto visualiza a saída de iftop .

iftop -i $iface
  • [- i] especifica qual interface (ou seja, tap0, lun0, eth0, wlan0, conforme especificado pela saída de ifconfig .

Isso mostrará as estatísticas de uma interface específica.

iftop -f $IP/$NETMASK
  • [- f especifica rede, máscara de rede (isto é, 192.168.1.0/24)

Isso mostrará as estatísticas de uma sub-rede específica.

    
por 02.10.2014 / 19:28
3

Como posso testar se uma conexão com a Internet está disponível através de uma determinada interface? por exemplo. o meu modem GSM (wwan0) está conectado à Internet? Se eu tentar executar o ping www.google.com - Como sei qual interface está sendo usada?

Você poderia especificar a interface.

ping -I $INTERFACE $DOMAIN_OR_IP_ADDRESS

por exemplo:

ping -I wwan0 8.8.4.4

Usar um endereço IP conhecido elimina possíveis problemas de DNS durante a solução de problemas.

Como posso forçar a conectividade através de uma determinada interface se existir mais de uma?

Você pode definir a rota padrão. Endereçamento estático com o Debian, certo? Abra /etc/network/interfaces com um editor de texto. Encontre a interface de rede desejada e adicione a opção gateway x.x.x.x , em que x.x.x.x é o gateway. Salvar e reiniciar a rede:

/etc/init.d/networking restart

Caso contrário, acredito que seria necessário usar um roteamento baseado em políticas mais avançado para isso.

    
por 02.10.2014 / 19:46