Proč lokální trasa poráží výchozí trasu VPN
Připojená podsíť a široká výchozí trasa tunelem jsou různé druhy tras. Přečtěte si volbu jádra a pak vyřešte překryv, aniž byste vršili trasy k hostitelům.
Tiskárna na stole funguje dál i poté, co tunel naběhne, zatímco server v druhé kanceláři se tiše přeloží na něco lokálního. Obě chování plynou ze stejného pravidla: vyhrává nejkonkrétnější trasa a přímo připojený prefix je tak konkrétní, jak to jde. Obvykle je to design, který chcete, a zároveň je to způsob, jak duplicitní privátní rozsah ukradne vzdálenou adresu. Když si nejdřív přečtete volbu jádra, záhadné selhání se změní na srovnání prefixů.
Připojený prefix je konkrétnější než výchozí trasa
Tunel obvykle instaluje výchozí trasu nebo sadu prefixů, zatímco lokální rozhraní nese připojený prefix plus trasu do celé LAN. Mezi nimi rozhoduje shoda nejdelšího prefixu, takže cíl uvnitř prefixu LAN se do tunelu nikdy nedostane. Proto tiskárna, administrační stránka routeru a lokální NAS zůstávají dostupné, dokud je VPN zapnutá. Proto také vzdálený prostředek uvnitř překrývajícího se rozsahu jde na špatný stroj.
Privátní adresní prostor není jedinečný a dva areály, které zvolí stejný prefix, jsou dost časté na to, aby se s tím počítalo. Když se rozsahy překryjí, lokální odpověď dorazí rychle a vypadá autoritativně, takže se selhání snadno přečte jako problém s přihlášením. Cíl odpověděl, jen to nebyl ten, který jste mysleli.
Přečtěte si volbu, kterou by jádro udělalo
Zeptejte se jádra, kterou trasu by použilo pro přesný cíl, místo abyste četli tabulku odshora. Pak hledejte pravidla zásad, která by mohla vybrat jinou tabulku. Dva příkazy odpoví na obě otázky během několika sekund.
ip route get 10.20.30.41
ip route show table all | grep -E '10\.|default'
ip rule show
První výstup uvádí rozhraní, další skok a zdrojovou adresu, které by jádro použilo, a to je odpověď, na které záleží. Hodnota dev ukazující na lokální most znamená, že paket do tunelu nikdy nevstoupí, ať si stavový panel VPN klienta tvrdí cokoli. Filtrovaný výpis tabulek ukazuje, zda jiná tabulka drží stejný prefix, a seznam pravidel ukazuje pořadí, v jakém se tyto tabulky procházejí. Pravidlo zásad může poslat prefix přes konkrétní tabulku i tehdy, když hlavní tabulka nesouhlasí, takže to pořadí je součástí odpovědi.
Lokální přístup je samostatné oprávnění
Mít trasu není totéž jako mít oprávnění ji použít. Většina klientů umí zablokovat lokální síťovou komunikaci, dokud je tunel nahoru, a to nastavení je rozhodnutí zásad, ne artefakt směrování. Když do návrhu patří důvěryhodná blízká služba, zapněte podporovanou volbu lokálního přístupu, místo abyste vymýšleli trasy. Když je zařízení na veřejné Wi-Fi, nechte ji vypnutou.
Obě vrstvy selhávají jinak. Zablokovaná lokální cesta vyvolá časový limit, i když trasa existuje, zatímco překrývající se trasa vrátí odpověď od špatného hostitele. Rozlišit je stojí jeden dotaz a ušetří odpoledne změn firewallu, a uspořádání přesměrování je popsáno v poznámky strongSwanu k přesměrování.
Vyřešte překryv bez hromadění tras k hostitelům
Trasa k hostiteli pro jednu adresu vypadá, že překryv vyřeší, a selže ve chvíli, kdy je potřeba druhá adresa ze stejného rozsahu. Po dvaceti takových už nikdo neřekne, který prefix je směrodatný. Trvalá řešení jsou změna adresace, zdokumentovaná topologie, která se duplicitnímu rozsahu vyhýbá, nebo překlad na jednom konci. Každé stojí čas na plánování jednou, místo údržby navěky.
Pokud je dočasná trasa k hostiteli opravdu nutná, zapište vedle ní důvod, vlastníka a datum, aby se dala později odstranit. Pak otestujte přesnou adresu a službu plus veřejný cíl, protože změna lokálního přístupu, která tiše vyloučí nesouvisející aplikace z tunelu, je horší než původní závada. Držte lokální prefix a vzdálený prefix zapsané zvlášť; ten zvyk brání tomu, aby se funkční lokální ping předával jako důkaz, že vzdálená kancelář je dostupná.