RE: Linux routing - podivná záhada
Šerých Jakub
Serych na panska.cz
Čtvrtek Červenec 30 08:45:42 CEST 2015
A jak vypadá
# arp
a případně nepomůže:
# arp -d *
Jakub Šerých
> -----Original Message-----
> From: Hw-list [mailto:hw-list-bounces na list.hw.cz] On Behalf Of Pavel Troller
> Sent: Thursday, July 30, 2015 8:36 AM
> To: hw-list na list.hw.cz
> Subject: Linux routing - podivná záhada
>
> Zdravím,
> jak asi víte, jsem v okolí považován za Linuxáka a dokonce o tom i učím :-).
> Ale co se mi děje na jednom stroji v poslední době mne natolik mate, že se s
> tím obrátím sem, schválně, jestli někdo přijde na to, čím to je a jak to vyřešit
> bez rebootu stroje :-).
> Zbláznil se tam routing. Pakety si chodí, kudy chtějí a ne tudy, kudy mají.
> Nastalo to po úpravách routingu kvůli vnějším zásahům.
> Takže, vzhůru k problému.
> root na box:~# route -n
> Kernel IP routing table
> Destination Gateway Genmask Flags Metric Ref Use Iface
> 0.0.0.0 x.x.x.126 0.0.0.0 UG 1 0 0 eth0
> 10.0.0.0 x.x.x.8 255.0.0.0 UG 0 0 0 eth0
> 192.168.0.0 x.x.x.8 255.255.0.0 UG 0 0 0 eth0
> x.x.x.0 0.0.0.0 255.255.255.128 U 0 0 0 eth0
> O co tu jde: Default gateway vede na jednu IP, privátní rozsahy jsou z toho
> vyčleněny a mají separátní statické routy vedoucí na jiný router v téže síti.
> x.x.x.0 je síť, v níž je stroj umístěn, jeho vlastní IP je x.x.x.5.
>
> Ale, viz následující případy:
> root na box:~# traceroute 192.168.20.3
> traceroute to 192.168.20.3 (192.168.20.3): 1-30 hops, 46 byte packets
> 1 x.x.x.8 (x.x.x.8) 0.130 ms (ttl=64!) 0.104 ms (ttl=64!) 0.91 ms (ttl=64!)
> 2 192.168.192.200 (192.168.192.200) 12.2 ms 11.6 ms 11.9 ms
> 3 192.168.20.27 (192.168.20.27) 13.3 ms 13.2 ms 16.3 ms
> 4 192.168.20.3 (192.168.20.3) 13.1 ms (ttl=248!) * 16.3 ms (ttl=248!) Zde je
> vše OK, šlape to, jak má.
>
> root na box:~# traceroute 192.168.20.4
> traceroute to 192.168.20.4 (192.168.20.4): 1-30 hops, 46 byte packets
> 1 x.x.x.126 (x.x.x.126) 0.819 ms 0.568 ms 0.500 ms
> 2 x.x.x.161 (x.x.x.161) 7.7 ms 5.67 ms 5.65 ms
> 3 * * *
> 4 * * *
> Bum! Místo do statické route se to snaží hnát do default route! A to se
> prosím ta IP liší jen o 1 v posledním oktetu! Tím je osud paketu samozřejmě
> zpečetěn.
>
> A to nejlepší na konec:
> root na box:~# traceroute 192.168.20.5
> traceroute to 192.168.20.5 (192.168.20.5): 1-30 hops, 46 byte packets
> 1 x.x.x.5 (x.x.x.5) * 7.4 ms (ttl=64!) !H * Tak to už je úplně špatně - ten
> paket není poslán vůbec nikam a jeví se to, jako by měl být doručen v lokální
> síti a příslušný stroj byl nedostupný.
> A opět jde jen o velmi blízkou IP adresu.
>
> S rozlišením na individuální IP adresy (viz tyto příklady) je "kdesi"
> zapamatován tento nesmyslný routing. Je to v čase stálé, jednotlivé IP failují
> vždy stejným způsobem (buď do default gw místo do statiky nebo úplný fail).
> Jiné problémy to nemá, tj. routing mimo ty privátní rozsahy správně vede do
> default route.
>
> Networking uvedeného stroje byl několikráte zcela reinicializován - všechny
> routy pryč, všechny interface down atd. a poté znovu zadán. Na tento
> problém to však nemá žádný vliv, po zadání to začne routovat úplně stejně
> nesmyslně, jako před tím.
>
> Ještě poznámka - na stroji se používá "advanced routing", kdy na základě
> pravidel (ip rule ...) se volí individuální směrovací tabulka (ip route ... table X).
> Avšak v těchto tabulkách jsou jen výjimky, 1 - 2 řádky.
> Napsal jsem si script na výpis všech 256 speciálních routovacích tabulek jádra
> a tyto nesmysly nejsou v žádné z nich.
>
> Ještě info - jádro 3.1.0. Celkem vykopávka, ale jde o produkční stroj, u
> kterého jsou updaty značně nežádoucí, pokud stroj funguje, jak má :-).
>
> Zdraví Pavel
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
Další informace o konferenci Hw-list