Jak vyčistit nakešované routy?

Jak vyčistit nakešované routy?
« kdy: 30. 05. 2011, 18:02:25 »
Ahoj, mám zvláštní problém.

Můj notebook má v domácí síti výchozí bránu nastavenu na 192.168.10.1, Internet se však ve skutečnosti schovává za 192.168.10.138. (Stroj .1 má default GW na .138 a když cíl leží v Internetu, pošle ICMP redirect).

Problém mám, pokud počítač odpojím od sítě, uspím, převezu do zcela jiné sítě a probudím... Síť se normálně spustí, skoro všechno funguje jak má. Problém je, že se nedostanu na IP adresy, na které jsem přistupoval chvíli před uspáním počítače, třeba adresu IMAP serveru..., www serveru otevřeného v prohlížeči, atd…

Posloucháním na síťovém rozhraní jsem zjistil, že při pokusu o navázání komunikace na některou z těchto nefunkčních adres se mi počítač snaží ARP protokolem zjistit adresu 192.168.10.138, přestože routování takto už nastavené dávno není...

Pravděpodobně se kernelu nechce zapomenout přijaté ICMP redirecty... Nenašel jsem jiný způsob, jak cache vyčistit, než je restart PC. Napadá někoho něco?


Re: Jak vyčistit nakešované routy?
« Odpověď #1 kdy: 30. 05. 2011, 18:17:34 »
Update: Pomocí
Kód: [Vybrat]
ip rou show cache se dá cache vypsat, včetně nemocných záznamů:
Kód: [Vybrat]
# ip route show cache | grep 138
91.213.160.12 via 192.168.10.138 dev wlan0  src 192.168.15.131

Cache rout se dá i vymazat, příkazem ip route flush cache. Ale vzápětí se v ní nemocné záznamy znovu objeví.

Čili otázka z titulku threadu by měla znít: Jak vymazat cache ICMP redirectů? Ta totiž zřejmě stojí ještě nad cache rout.

MilanK

Re: Jak vyčistit nakešované routy?
« Odpověď #2 kdy: 30. 05. 2011, 21:34:58 »
Ahoj,

tak jsem to schválně zkoušel, protože jsem nevěřil, že by byl ještě jiný mechanismus než route cache. A skutečně: u mne způsobí přijatý ICMP redirect nový záznam v route cache a pomocí "ip route flush cache" se ho zase _natrvalo_ zbavím... Jádro 2.6.32.

Re: Jak vyčistit nakešované routy?
« Odpověď #3 kdy: 30. 05. 2011, 21:56:40 »
No, vypadá to na něco v kernelu 2.6.39, (možná i 2.6.38), protože cestuji pořád stejně a nikdy dříve jsem se s podobnými problémy nesetkal... Zkusím vymyslet nějaký minimální případ, jak to otestovat a eventuálně nahlásit.