Pokouším se pingnout z konkrétního rozhraní, mám kabelové i bezdrátové připojení, které jde do mého notebooku.
Můj kabelový adaptér eth0
je na IP 172.16.109.75
Můj wifi adaptér wlan0
je na IP 192.168.1.69
Když pingnu na google s mým eth0
unplugged pomocí následujícího příkazu:
[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
Funguje to podle očekávání dobře. Připojím svůj eth0
připojte kabel a spusťte totéž znovu:
[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
Podle výstupu nahoře to vypadá, že to posílá z eth0
(která v práci nebude moci pingnout, protože se zablokuje), ale wifi
je další odkaz na samostatnou síť, kde jsem přímo na netu, a proto odesílám požadavek ping z wlan0
měl by pracovat. Co se děje? Jak to mám opravit?
Přijatá odpověď:
Pravděpodobně, když připojíte ethernetový kabel, vaše výchozí směrovací brána se změní pomocí dhcp. Odesíláte pakety z wlan0, ale váš systém neví, kdo je bránou k jejich předání. Tímto způsobem můžete pingovat pouze systémy v rámci sítě 192.168.1, ale ne dále. Pokud chcete získat odpověď ze serveru google, budete muset buď změnit výchozí bránu zpět na bezdrátový směrovač, nebo přidat konkrétní trasu pro tento 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