Proč vaše směrovací tabulka VPN ve Windows ukazuje 0.0.0.0/1 a 128.0.0.0/1
Volba výchozí brány přidává dvě poloviny výchozí trasy, ne jednu. Přečtěte si prefix, metriku a rozhraní, než na klientovi přidáte nebo odeberete trasu.
Připojte se k VPN ve Windows a otevřete směrovací tabulku — dvě položky upoutají pozornost: 0.0.0.0/1 a 128.0.0.0/1. Nejsou to překlepy a nenahrazují výchozí trasu. To, zda se objeví, závisí na jedné volbě profilu, a tato dvojice je způsob, jakým se staví plný tunel, nikoli funkce rozděleného tunelu. Přečtěte si volbu, prefix a rozhraní společně, než změníte jediný řádek.
Co volba výchozí brány nainstaluje
Volba profilu, která posílá vše tunelem, funguje tak, že přidá tyto dva prefixy. Zrušte volbu a zmizí, zůstane trasa pokrývající jen podsíť přidělenou adaptéru tunelu. Zaškrtávací políčko ovládá dvojici; nepřepisuje jedinou výchozí trasu. Proto tabulka po odškrtnutí vypadá jako částečné přepsání, nikoli smazání.
0.0.0.0/1 pokrývá spodní polovinu prostoru IPv4 a 128.0.0.0/1 horní polovinu, takže společně pokrývají každou unicastovou adresu. Každý je konkrétnější než výchozí 0.0.0.0/0, což znamená, že shoda nejdelšího prefixu posílá běžný provoz do tunelu, zatímco fyzická výchozí trasa zůstává tam, kde byla. Zachovat tuto výchozí trasu není kosmetika: pakety, které obalují šifrovaný obsah, jsou adresovány na veřejnou adresu serveru a musí odejít přes fyzický adaptér. Nahraďte výchozí trasu místo jejího rozdělení a transport samotného tunelu se pokusí vstoupit do tunelu, což je smyčka, nikoli spojení.
Doslovaná 0.0.0.0/0 mířící na adaptér VPN proto stojí za zastavení. Nativní klient ji obvykle nezapisuje, takže tabulku za vašimi zády změnila ruční trasa nebo konfigurace jiného klienta. Najděte ji, než začnete ladit cokoli níže.
Demontáž je levnější než uložená brána
Demontáž je praktický argument pro dvě položky místo jedné. Klient vlastní přesně dvě trasy, dokud je připojen, a při odpojení je smaže, takže zůstane to, co fyzický adaptér v tu chvíli drží. Klient, který by nahradil jedinou výchozí trasu, by si musel pamatovat předchozí bránu a po změně lease DHCP by mohl obnovit takovou, která už neexistuje. Dvě vlastněné položky takový stav nenesou.
Jiní klienti dospěli ke stejnému návrhu. Profil OpenVPN s redirect-gateway def1 nainstaluje tyto dva prefixy místo smazání výchozí trasy a klient Windows následuje stejný vzor ze stejného důvodu v routování.
Proto může tabulka vypadat jako plný tunel, když jste čekali rozdělení. Dvojice je způsob, jak se plný tunel staví, nikoli důkaz chyby rozděleného tunelu. Pokud je profil nastaven na použití vzdálené brány, směruje se vše, ať už jedna lokální aplikace dosáhne čehokoli.
Nejdelší prefix vyhrává před jakoukoli metrikou
Délka prefixu rozhoduje o vyhledání před jakýmkoli jiným polem. Metrika jen rozbíjí remízu mezi trasami se stejným prefixem, takže položka /1 porazí výchozí /0, i když má horší metriku. Vazba na rozhraní rozhoduje o tom, co zbyde, když dvě trasy sdílejí prefix a Windows musí zvolit, který adaptér paket odešle.
route print -4
Get-NetRoute -AddressFamily IPv4 | Sort-Object DestinationPrefix
Find-NetRoute -RemoteIPAddress 10.50.5.20
Tabulka rozděleného tunelu obsahuje fyzickou výchozí trasu, dvě poloviny výchozí trasy, trasu pro podsíť tunelu a jakýkoli kancelářský prefix, který jste přidali. Fyzická výchozí trasa může mít nižší nebo vyšší metriku podle klienta a profilu a dokud dvojice /1 existuje, tento rozdíl nic nemění. Vše změní v okamžiku, kdy se dvojice odstraní, tehdy se vynoří zastaralá brána nebo špatné rozhraní. Čtěte celou tabulku, ne ten jeden řádek, který jste čekali, že se změní.
Zvolte jednoho vlastníka kancelářského prefixu
Pro rozdělený tunel pojmenujte jen prefix, který musí používat VPN, a zvolte jeden způsob, jak ho vlastnit. Nasměrování trasy na přidělenou adresu tunelu funguje, dokud se tato adresa nezmění, zatímco vazba na rozhraní přežije změnu adresy, ale zlomí se, když se index po přestavbě profilu přiřadí znovu. Cmdlet vázaný na profil se vyhýbá oběma problémům za cenu potřeby profilu.
route -p add 10.50.0.0 mask 255.255.0.0 172.16.8.1
route -p add 10.50.0.0 mask 255.255.0.0 0.0.0.0 IF 31
Add-VpnConnectionRoute -ConnectionName Office -DestinationPrefix 10.50.0.0/16
Cmdlet váže prefix na pojmenovaný profil, takže trasa se objeví se spojením a odejde s ním, což spravovaný notebook chce. Trvalá trasa přežije restartování a přežije profil, který ji vyvolal, a tak vyřazená VPN nechává položky roky za sebou. Zvolte jednu metodu na prefix a volbu poznamenejte, protože trvalá trasa plus trasa z profilu pro stejný prefix vytvářejí duplikáty, které se při demontáži bolestně rozplétají. Ať zvolíte cokoli, vlastnictví má být vidět v tiketu, ne jen na stroji.
Vlastnictví je otázka, na kterou tato část odpovídá, ne syntaxe. Dva vlastníci pro jeden prefix je režim selhání, kterému stojí za to se vyhnout.
Ověřujte cílem, ne webovou stránkou
Testujte cíl, který musí projít tunelem, ne web, který hlásí výstupní adresu. Find-NetRoute vrací zvolenou trasu a zdrojovou adresu, takže vidíte, zda vyhrál kancelářský prefix nebo fyzická výchozí trasa, a potom otevřete samotné sdílení.
Find-NetRoute -RemoteIPAddress 10.50.5.20
Get-VpnConnection -Name Office
Web s výstupní adresou je slabá kontrola, protože DNS, IPv6 a proxy prohlížeče mohou tento požadavek poslat každý jinou cestou. IPv4 a IPv6 mají ve stejném dialogu i oddělená nastavení a zrušení jednoho políčka nechá druhou rodinu nedotčenou, takže stroj s duálním zásobníkem může nést IPv6 tunelem, zatímco IPv4 sleduje rozdělenou trasu. Zkontrolujte obě rodiny, než profil označíte za rozdělený. Pokud je trasa správná a služba stále selhává, zbývající vrstvou je filtrování, ne směrování.
Firewall spravovaný klientem může zablokovat kancelářskou podsíť i s dokonalou směrovací tabulkou. Tato politika patří tomu, kdo profil rozeslal, ne člověku, který upravuje trasy.