Sdílíte připojení Windows? Cesta VPN se pod tím mění
Sdílený adaptér mění počítač v router a přeposílaný provoz jde jinou cestou než aplikace na hostiteli. Testujte z klienta, ne z hostitele.
Notebook sdílí své Wi-Fi, hostitel bez potíží prochází tunelem a tablet na tomto sdílení nedosáhne nikam. Hostitel přestal být jen klientem v okamžiku, kdy se sdílení zapnulo: teď je to router a přeposílané pakety potkávají jinou sadu pravidel. Co funguje na hostiteli, nic neříká o zařízení za ním. Spusťte kontroly z níže položeného klienta a rozdíl přestane být teoretický.
Úspěch hostitele nic nedokazuje
Sdílení připojení dává jednomu stroji čtyři úlohy: přidělování adres, přeposílání, překlad a filtrování. Klient VPN, který chrání lokálně vytvářený provoz, může přeposílaný provoz považovat za mimo svůj rozsah, nebo ho záměrně blokovat jako únik. Ani jedno chování není chyba a ani jedno není napsané na obrazovce, kde se sdílení zapnulo. Jen test z níže položeného zařízení vám řekne, které máte.
Mnoho klientů přeposílá jen provoz hostitele a nic jiného, proto si přečtěte sekci o sdílení v dokumentaci klienta, místo abyste věřili, že tunel bude routovat za tablet. Viditelným příznakem je zařízení, které se přidruží, dostane adresu a pak selže při prvním požadavku. Klient, který odmítá přeposílat, vypadá na hostiteli pořád naprosto zdravě.
Který adaptér se sdílí, který obsluhuje klienty
Zapište oba adaptéry, protože nesou různé adresy a různé filtry, a změna na tom nesprávném vysvětluje mnoho matoucích výsledků. Hostitel sdílení obvykle zaujímá pevnou adresu na spodní straně a provozuje tam malou službu DHCP a DNS. Windows drží přeposílání po adaptérech, ne globálně, takže stav se musí číst rozhraní po rozhraní.
Get-NetAdapter | Where-Object Status -eq 'Up' | Select-Object Name,InterfaceIndex,LinkSpeed
Get-NetIPAddress -AddressFamily IPv4 | Select-Object InterfaceAlias,IPAddress,PrefixLength
Get-NetIPInterface | Select-Object InterfaceAlias,Forwarding,ConnectionState
Get-NetConnectionProfile
Pokud je přeposílání na sdíleném adaptéru zobrazeno jako Zakázáno, níže nebude fungovat nic, ať tunel dělá cokoli. Zapněte ho jen na stroji, jehož politika mu dovoluje routovat za jiná zařízení.
Přeposílání, překlad a filtrování
Přeposílaný paket musí dojít k tunelu, být přeložen na něco, co vzdálená strana přijme, a vrátit se stejnou překladovou cestou. Kterákoli z těchto tří fází se může porouchat a každá porucha dá stejný timeout prohlížeče. Zachycení paketů, hledání v routovací tabulce a log ze vzdálené strany mají větší cenu než další prohlídka dialogu sdílení. Která fáze selhává, to ukazuje, čí změna je potřeba.
Vzdálená strana může také potřebovat zpětnou routu pro sdílenou podsíť, rozsah, který server VPN nikdy neviděl. Kde klient překládá, vidí server jen adresu tunelu a zpětná ruta není potřeba. Kde nepřekládá, musí ten, kdo vlastní bránu, tu routu vědomě přidat, a to je žádost o změnu, ne nastavení klienta.
Kontroly dělejte na klientovi, ne na hostiteli
Každou kontrolu dělejte na klientovi, který selhává, ne na hostiteli, který funguje. Držte výchozí adresu, odpověď překladače a test aplikace v jedné relaci, protože výsledky sebrané s hodinovým odstupem nic neříkají o tom, jak se všechny tři kombinují.
Resolve-DnsName intranet.example.net -Type A
Resolve-DnsName intranet.example.net -Type AAAA
Invoke-RestMethod https://api.ipify.org
Test-NetConnection intranet.example.net -Port 443 -InformationLevel Detailed
Porovnejte výchozí adresu s vlastní adresou hostitele a poznamenejte, zda se shodují. Jiná odpověď znamená, že přeposílaná cesta obchází tunel, což je otázka politiky s vlastníkem, ne rychlá oprava. Shodná odpověď vedle selhávající aplikace přesouvá práci na překlad jmen nebo na politiku vzdálené strany. Nezastavujte se ani u výsledku IPv4: sdílení může projít každou kontrolou IPv4, zatímco IPv6 vychází jiným výstupem, takže zopakujte kontroly jmen a výstupu se záznamem AAAA a podrobným testem spojení.
Na spravovaném stroji potvrďte, že sdílení je vůbec povoleno, protože vystavení přístupu jinému zařízení je administrativní rozhodnutí, ne přepínač pohodlí. Po každé podporované změně zopakujte kontroly při opětovném připojení a znovu během výpadku. Čisté opětovné připojení hostitele neobnoví přeposílanou routu, kterou klient nikdy nepodporoval.