Hostitel VPN odpovídá na jednom rozhraní a odmítá posílat odpovědi zpět tunelem, a výchozí trasa vypadá správně. V tomto bodě hlavní tabulka přestává být celým příběhem. Linux může vybrat směrovací tabulku pro každý paket pomocí pravidel zásad a VPN mohla nějaké nainstalovat. Přečtěte si pravidla, než se dotknete výchozí trasy.

Na pořadí záleží: nejprve pravidla, potom tabulka, kterou každé pravidlo vybere.

Přečtěte pravidla v pořadí priority

Spusťte ip rule show a čtěte shora dolů. Číslo priority řídí pořadí vyhodnocování a nižší číslo se kontroluje dříve. Výchozí pravidlo na 32766 je obvykle poslední, na kterém záleží. Pokud je seznam dlouhý, uložte ho do souboru, než cokoli změníte.

U každého pravidla si poznamenejte prioritu, shodu (zdroj, značka, rozhraní nebo cíl) a tabulku, na kterou odkazuje. Pravidlo bez použitelné tabulky je slepá ulička, ne trasa.

Totéž udělejte pro IPv6 pomocí ip -6 rule show. Zásada, která existuje jen v rodině IPv4, nechává druhou rodinu na hlavní tabulce.

Přečtěte tabulku, kterou každé pravidlo vybere

Pro každou odkazovanou tabulku použijte ip route show table <name or number>. Porovnejte její trasy s rozhraním a dalším skokem, který očekáváte. Prázdná nebo neúplná tabulka vysvětluje selhání, které hlavní tabulka vysvětlit nedokáže.

Hlavní tabulka může stále obsahovat výchozí trasu a to je v pořádku. Pokud pravidlo pošle váš tok nejprve do tabulky 51820, hlavní výchozí trasa je pro tento paket nepodstatná.

Pokud vám číslo není známé, vyhledejte název tabulky v /etc/iproute2/rt_tables. Toto hledání zabere sekundu a zabrání dlouhé oklice.

Zjistěte, kdo pravidlo nainstaloval

NetworkManager, wg-quick a další skripty mohou pravidla instalovat dynamicky. Smazání pravidla za běhu se může při dalším připojení vrátit. Před přidáním konkurenčního pravidla zkontrolujte konfiguraci správce.

Například wg-quick přidává označené pravidlo a tabulku pro povolené adresy tunelu. Právě kvůli tomuto pravidlu provoz na tyto adresy obchází hlavní výchozí trasu. Pokud ho odstraníte bez změny konfigurace, další spuštění ho obnoví.

Během kontroly zachovejte vnější trasu koncového bodu a přístup pro správu. Nevypírejte všechna pravidla na živé vzdálené bráně, abyste zjednodušili výstup. Administrativní relace, která změnu přežije, je součástí testu.

Otestujte kontext zdroje, na kterém záleží

Obecný ip route get odpovídá na jinou otázku než tok aplikace. Přidejte adresu zdroje a značku, pokud ji VPN používá, abyste viděli cestu skutečného paketu. Otestujte zahrnutý i vyloučený cíl se stejným kontextem zdroje. Potom totéž zopakujte pro IPv6, pokud hostitel používá dvojitý zásobník.

Po schválené opravě znovu spusťte obě stejná hledání a porovnejte je. Veďte záznam o zamýšleném pravidle, tabulce a o tom, jak dlouho pravidlo přežije restart. Právě tento záznam činí příští restart služby vysvětlitelným místo záhadným. Stránka manuálu ip-rule dokumentuje voliče shody a syntaxi tabulek.

Související články