Sto provando a eseguire il ping da un'interfaccia specifica, ho una connessione cablata e una wireless che entrano entrambe nel mio laptop.
Il mio adattatore cablato eth0
è sull'IP 172.16.109.75
Il mio adattatore wifi wlan0
è sull'IP 192.168.1.69
Quando eseguo il ping di Google con il mio eth0
scollegato con il seguente comando:
[email protected]:~$ ping -I wlan0 www.google.co.uk
PING www.l.google.com (74.125.230.115) from 192.168.1.69 wlan0: 56(84) bytes of data.
64 bytes from 74.125.230.115: icmp_seq=1 ttl=51 time=32.7 ms
64 bytes from 74.125.230.115: icmp_seq=2 ttl=52 time=28.7 ms
64 bytes from 74.125.230.115: icmp_seq=3 ttl=52 time=28.9 ms
64 bytes from 74.125.230.115: icmp_seq=4 ttl=52 time=28.3 ms
Funziona bene come previsto. Collego il mio eth0
cavo e ripeti lo stesso:
[email protected]:~$ ping -I wlan0 www.google.co.uk
PING www.l.google.com (74.125.230.112) from 172.16.109.75 wlan0: 56(84) bytes of data.
From mcr-pc-29334.local (192.168.1.69) icmp_seq=2 Destination Host Unreachable
From mcr-pc-29334.local (192.168.1.69) icmp_seq=3 Destination Host Unreachable
From mcr-pc-29334.local (192.168.1.69) icmp_seq=4 Destination Host Unreachable
From mcr-pc-29334.local (192.168.1.69) icmp_seq=5 Destination Host Unreachable
From mcr-pc-29334.local (192.168.1.69) icmp_seq=6 Destination Host Unreachable
From mcr-pc-29334.local (192.168.1.69) icmp_seq=7 Destination Host Unreachable
Dall'output in alto sembra inviarlo da eth0
(che al lavoro non sarà in grado di eseguire il ping perché viene bloccato), ma il wifi
è un altro collegamento a una rete separata dove sono direttamente in rete e quindi mando la richiesta ping dal wlan0
dovrebbe funzionare. Cosa sta succedendo? Come devo risolverlo?
Risposta accettata:
Probabilmente, quando si collega il cavo ethernet, il gateway di percorso predefinito cambia da DHCP. Invii pacchetti da wlan0 ma il tuo sistema non sa chi è il gateway a cui inoltrarli. In questo modo è possibile eseguire il ping solo dei sistemi all'interno della rete 192.168.1 ma non oltre. Se desideri ricevere una risposta dal server di Google, dovrai ripristinare il gateway predefinito sul router wireless o aggiungere un percorso specifico per questo server.
route add -host 74.125.230.112/32 gw 192.168.1.1 # assuming 192.168.1.1 is the wireless router's ip