Linux routing - podivná záhada

Pavel Troller patrol na sinus.cz
Čtvrtek Červenec 30 08:56:54 CEST 2015


Zdravím,
  ano, takto to skutečně funguje. Default route mi jako první vypisují
úplně všechny stroje, které jsem teď zkusil (asi 6) a routing tam je vždy
v pořádku, až na tento jeden...
  Zdraví Pavel
>
> Nie.
>
> Specifickejsie pravidla (tie co maju dlhsi prefix) sa vyhodnotia skor. 
> Takze default route (prefix dlzky 0) sa vyhodnoti nakoniec.
>
> -m-
>
>
> On 30. 7. 2015 8:52, Jozef RAČEK wrote:
>> Preco je default GW ako prve pravidlo ? Ostatne pravidla sa nepouziju.
>>
>> V Linuxoch byva ako posledne.
>> Vyhodnocovanie byva - pravidlo za pravidlom, a ked sa najde pouzitelne, tak sa pouzije a vyskoci z prehladavania dalsich.
>> Dalsie problemy mozu byt v pripade, ze je na zariadeniach nastavene rozne staticke routovanie a odpoved sa vrati "inou trasou" ako odchadzala. Vtedy FW zatvaraju spojenia a pod...
>>
>> Dodo
>>
>> ________________________________________
>> From: Hw-list [hw-list-bounces na list.hw.cz] on behalf of Pavel Troller [patrol na sinus.cz]
>> Sent: Thursday, July 30, 2015 8:36
>> 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
>> _______________________________________________
>> HW-list mailing list  -  sponsored by www.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
>
> _______________________________________________
> 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