Jak odstranit zastaralou trasu, kterou zanechal VPN ve Windows
Najděte záznam, který je opravdu zastaralý, zobrazte náhled jeho odstranění proti správnému úložišti zásad a ověřte, že vyhledání vybere rozhraní, které očekáváte.
Relace skončila před hodinami, adaptér je pryč a trasa stále zůstává v tabulce a ukazuje na rozhraní 42. Smazání toho řádku stojí jeden příkaz; rozhodnutí, že je to správný řádek, stojí čtyři kontroly. Tabulka tras je sdílená, takže plošné odstranění vezme i cesty, které jiná připojení stále používají, včetně té, která nese tunel. Každý krok níže zužuje cíl, dokud nemůže odpovídat jen jeden záznam.
1. Rozhodněte, zda je záznam zastaralý, nebo záměrný
Záznam, který přežil restart, byl někde zapsán, a to někde je obvykle rozhodnutí, ne náhoda. Rozdělené tunelování závisí na trasách, které vypadají přesně jako zbytky, a zásadu, která protlačí jeden prefix tunelem, nelze v jediném výpisu odlišit od zastaralého záznamu. Zeptejte se, kdy se trasa objevila: ta, která existuje jen po dobu tunelu, patří ke konfiguraci klienta, takže příkaz na úklid je špatný nástroj. Odstraňte záměrnou trasu a příští připojení selže v kroku, který nikdo nesleduje.
Trasa ke koncovému bodu si zaslouží vlastní varování. Když klient přidá hostitelskou trasu k serveru VPN, aby se k němu šifrované pakety dostaly přes místní připojení, smazání této trasy zhroutí tunel při příštím připojení a symptom se čte jako porucha serveru. Porovnejte cíl s adresou, ke které se klient připojuje, než na cokoli sáhnete: jediná veřejná adresa, která odpovídá serveru VPN, je vnější cesta, ne odpad.
2. Zapište si čtyři pole, která záznam pojmenovávají
Samotný prefix není identita, protože dvě rozhraní mohou držet trasy ke stejnému cíli. Poznamenejte si cílový prefix, index rozhraní, další skok a úložiště zásad, protože tyto čtyři hodnoty popisují přesně jeden záznam. Jeden výpis vám dá všechny:
Get-NetRoute -AddressFamily IPv4 | Sort-Object RouteMetric
Setřídění podle metriky vytáhne nahoru trasy, které stroj skutečně preferuje, a právě tam obvykle sedí zbytek. Porovnejte záznam, když je tunel nahoře, a znovu poté, co spadne: trasa, která zmizí s adaptérem, byla klientova, a ta, která zůstane, byla zapsána něčím jiným. Úložiště zásad je pole, které lidé přeskakují, a právě to vysvětluje znovuobjevení, protože záznam odstraněný z aktivního úložiště se vrátí po příští obnově zásad. Než spustíte cokoli, co mění stav, zapište si čtyři hodnoty.
3. Zobrazte náhled odstranění a pak odstraňte jeden záznam
Remove-NetRoute přijímá stejný prefix a index rozhraní, které vypsal Get-NetRoute, a má přepínač náhledu, takže se nemusí nic hádat. Spusťte dvojici v tomto pořadí:
Remove-NetRoute -DestinationPrefix 10.20.0.0/16 -InterfaceIndex 42 -WhatIf
Remove-NetRoute -DestinationPrefix 10.20.0.0/16 -InterfaceIndex 42
Náhled vypíše objekt, který by smazal, takže před uvolněním přepínače porovnejte prefix, rozhraní a další skok se svými poznámkami. Ani jeden z řádků nedosáhne trvalého záznamu, protože aktivní úložiště je výchozí; přidejte -PolicyStore PersistentStore, když identifikovaná trasa žije tam, jinak se odstranění jeví jako úspěšné a záznam se vrátí při příští obnově zásad. Když je relace vzdálená, mějte připravenou mimopásmovou cestu obnovy, protože smazání trasy, která nese vaše vlastní připojení, ho ukončí. Nikdy nesahejte po příkazu, který tabulku vyčistí.
4. Najděte, která komponenta ji vrací
Smazání není oprava, dokud je vlastník stále nastaven tak, aby trasu instaloval. Vlastník je obvykle jeden ze tří: profil klienta VPN s jeho seznamem rozděleného tunelování, skript nebo naplánovaná úloha, která přidává trasy při přihlášení, nebo doménová zásada aplikovaná na stroj. Zkontrolujte nejprve profil, protože se spouští při každém připojení:
Get-VpnConnection | Select-Object Name,SplitTunneling,ServerAddress
Get-NetRoute -PolicyStore PersistentStore
Trvalé záznamy jsou viditelné bez připojování čehokoli, takže trasa, která se vrátí po restartu bez relace VPN, téměř vždy žije v tomto úložišti nebo ve startovacím skriptu. Opravte tam vlastníka a ruční smazání se stane ověřením místo léčby.
5. Ověřte vyhledání, sousedy a poznámku
Čistý výsledek není „trasa je pryč“; je to vyhledání, které nyní vybere rozhraní, které jste očekávali. Zeptejte se stroje, kam by paket k dotčenému prefixu šel, protože zbytek stále jmenuje mrtvý index, zatímco čistá odpověď jmenuje rozhraní na spoji nebo správnou bránu. Find-NetRoute to zodpoví pro jednu adresu po druhé:
Find-NetRoute -RemoteIPAddress 10.20.4.7
Pak otestujte souseda: vyberte druhý prefix, který rozdělené tunelování ještě potřebuje, a potvrďte, že jeho vyhledání je beze změny, protože odebrání jedné trasy navíc je chyba, ke které tato očista vyzývá. Zkuste znovu aplikaci, která původně selhala, a poznamenejte si, která komponenta teď prefix vlastní. Dokumentace Microsoftu k Get-NetRoute vypisuje pole, která jste si zapsali ve druhém kroku. Za šest měsíců právě ta poznámka zabrání tomu, aby byl stejný záznam diagnostikován dvakrát.