Hvernig á að athuga hvað VPN í Windows beinir í raun í PowerShell
Tengd VPN-flís sannar ekki þekju. Lestu vistaða sniðsflagg, lifandi leiðatöflu og NRPT-reglur í þessari röð.
Ég tengdi VPN-viðskiptavininn á Windows 11 fartölvu, flísin fór í Connected, innri skráadeiling opnaðist og opinber vefsíða hlaðist enn beint frá Wi-Fi skrifstofunnar. Þessi blanda lítur út eins og brotin göng. Hún er eðlileg útkoma sniðs sem sendir hluta umferðar um VPN og lætur restina vera á líkamlega millistykkinu. Þvinguð göng breyta því hvaða sjálfgefna leið Windows kýs; hún eyðir ekki nákvæmari leiðum og lofar ekki að umferð stöðvist þegar tengingin dettur. Hér á eftir er sú röð sem ég fer í gegnum þegar viðskiptavinur fullyrðir þekju: staða viðskiptavinar, vistað snið, beittar leiðir, leysir og síðan raunveruleg flæði.
Byrjaðu á viðskiptavininum og hættu svo að treysta honum
Viðskiptavinurinn er rétti staðurinn til að byrja eingöngu vegna þess að hann segir þér hvaða snið er virkt. Opnaðu eiginleika tengingarinnar og skráðu nákvæmt sniðsheiti, hvort það var búið til fyrir núverandi notanda eða alla á vélinni, og hvaða millistykki birtist í ncpa.cpl eftir tengingu. Á prófartölvunni minni bar millistykkið sniðsheitið, sem gerði úttak leiðanna auðlesið. Á öðrum vélum birtist það sem WAN Miniport færsla og heitið segir þér ekkert.
Það sem viðskiptavinurinn getur ekki sagt þér er þekjan. Tengd flís lýsir ástandi ganganna, ekki skrá yfir áfangastaði. Þriðja aðila viðskiptavinir halda líka eigin stillingum, svo innfædda Windows-sniðið og hver eiginleiki sem þú lest úr því geta átt ekkert sameiginlegt með því sem sá viðskiptavinur setti upp. Ef VPN kom í gegnum AnyConnect, OpenVPN GUI, WireGuard eða umboðsmann birgis eiga PowerShell-athuganirnar hér að neðan yfirleitt ekki við og þú ættir frekar að lesa eigin split-tunnel og leiðastillingar þess viðskiptavinar.
Lestu vistaða sniðið, ekki flísina
Fyrir innfætt Windows-snið (IKEv2, L2TP, SSTP eða það sem MDM ýtir) er vistuð split-tunnel ákvörðun einn eiginleiki:
Get-VpnConnection -Name 'Office' | Select-Object Name, ServerAddress, SplitTunneling, DnsSuffix
Bættu -AllUserConnection við þegar sniðið var búið til fyrir alla á tækinu. Án þess lestu lista núverandi notanda, sem getur verið tómur eða haldið annarri færslu með svipuðu heiti. Gildið False í SplitTunneling þýðir að sniðið var vistað sem full göng: Windows setur upp sjálfgefna leið í gegnum VPN-millistykkið. True þýðir split tunnel og þekjan fer þá algjörlega eftir leiðunum og nafnleysingarreglunum sem sniðið ýtir.
Meðhöndlaðu þetta gildi sem stillingu, ekki athugun. Það skráir hvað sniðið bað um við tengingu. Windows getur endað með aðrar beittar leiðir vegna nákvæmari leiðar annars tengis, stefnustillingar eða leifar frá fyrri tengingu, svo Boolean-rökgildið leysir spurninguna aldrei eitt og sér.
Berðu vistaða gildið saman við beittu leiðatöfluna
Eftir tengingu skaltu telja upp leiðirnar á göngumillistykkinu í stað þess að skruna alla töfluna:
$vpn = Get-NetAdapter | Where-Object InterfaceDescription -match 'VPN|WAN Miniport'
Get-NetRoute -InterfaceIndex $vpn.ifIndex | Sort-Object DestinationPrefix
Find-NetRoute -RemoteIPAddress 10.20.4.15 | Select-Object -First 1
Find-NetRoute er gagnlega helmingurinn. Það svarar spurningunni sem viðskiptavinurinn svarar aldrei: fyrir þennan áfangastað, hvaða tengi og hvaða upprunavistfang mun Windows í raun nota? Keyrðu það fyrir innri hýsil, opinberan hýsil og hvað sem þú telur viljandi undantekningu. Fullgöngusnið ætti að sýna göngutengið fyrir opinbera vistfangið. Split-tunnel snið sýnir þar yfirleitt líkamlega millistykkið á meðan innri forskeyti leysast enn til VPN.
Tvær gildrur útskýra flestar tilkynningar um «það beinir í ranga átt». Nákvæmasta forskeytið vinnur alltaf, svo /24 á líkamlega millistykkinu vinnur sjálfgefna leið á VPN sama hversu lág mælieining ganganna er. Mælieiningin ræður aðeins jafntefli milli leiða fyrir sama forskeyti. Og IPv4 og IPv6 eru ákveðin sitt í hvoru lagi: snið sem nær yfir 0.0.0.0/0 getur skilið IPv6 eftir á staðbundnu tenginu, sem lætur tvístafla vefsíðu líta hálf-gönguð út. Athugaðu Get-NetRoute -AddressFamily IPv6 áður en þú ályktar að göngin séu í lagi.
| What you see | Most likely cause | Check next |
|---|---|---|
| Public traffic leaves the physical adapter while SplitTunneling reads False | A more specific route on that adapter wins over the tunnel default | Find-NetRoute for the exact destination, then look for a /24 or host route on the physical interface |
| Internal name fails, internal IP works | No NRPT rule for that namespace, or a broader rule matches first | Get-DnsClientNrptPolicy and the namespace order |
| A dual-stack site opens directly while IPv4 uses the tunnel | The profile covers only the IPv4 default route | The IPv6 route table on both interfaces |
| Routes look right but one app still goes direct | The app uses its own proxy, or the client keeps a per-app list | The app's proxy settings and the client's application list |
Athugaðu nafnleysingu sérstaklega með NRPT
Innri nöfn sem mistakast á meðan innri IP-vistföng virka benda til stefnu leysisins, ekki leiðar. Windows ákveður DNS fyrir hvert nafnrými í gegnum töflu nafnleysingarstefnu, sem er óháð leiðatöflunni:
Get-DnsClientNrptPolicy -Effective | Select-Object Namespace, NameServers
Get-DnsClientServerAddress -InterfaceIndex $vpn.ifIndex
Þegar regla passar við *.corp.example fara fyrirspurnir fyrir það nafnrými til DNS-þjóna ganganna jafnvel þótt gagnaleiðin til þeirra þjóna haldist á líkamlega millistykkinu í split-tunnel ham. Það er hönnunin, og þess vegna segir vafrapróf sem opnar opinbera síðu þér ekkert um innri nöfn. Ef millistykkið telur upp væntanlegu þjónana en leitir fara samt annað, berðu saman röð NRPT-reglna og athugaðu hvort nákvæmara nafnrými passi fyrst.
Staðfestu flæðin og ákveddu svo hvað þú baðst í raun um
Farðu í gegnum áfangastaði í föstum röð svo niðurstöður séu samanburðarhæfar milli véla: opinbert vistfang, innra vistfang, innra nafn og ein viljandi undantekning eins og staðbundin prentari eða myndsímtal. Skráðu tengið og upprunavistfangið sem Find-NetRoute skilar fyrir hvert. Eftir hverja stefnubreytingu skaltu tengja aftur og endurtaka sömu fjórar athuganir; leiðataflan eftir endurtengingu er eina sönnunin fyrir því að nýja sniðið hafi tekið gildi.
Aðskildu svo leiðarstýringu frá framfylgd. Þvinguð göng kjósa göngin fyrir þekta umferð meðan þau eru uppi. Það er ekki kill switch. Ef krafan er að ekkert fari frá vélinni þegar göngin falla verður það að koma frá blokkarhönnun: eldveggjasniði bundnu við ástand ganganna, sívirku sniði með umferðarsíum eða eigin lokun-við-bilun valkosti birgja. Þvinguð göng verða líka að láta eigið vistfang VPN-þjónsins vera aðgengilegt utan ganganna, og að loka fyrir það í nafni «að þvinga allt» er áreiðanleg leið til að læsa þig út úr tengingunni sem þú ert að reyna að framfylgja.
Áður en þú breytir einhverju skaltu fara í gegnum þennan lista. Hver liður sem mistekst þrengir að því hvar raunverulega vandamálið er.
- Sniðsheiti og umfang staðfest, með
-AllUserConnectionnotað fyrir snið á vélarstigi. SplitTunnelinglesið og meðhöndlað sem stilling, ekki sönnun þekju.- Leiðir göngumillistykkis taldar upp sérstaklega fyrir IPv4 og IPv6.
Find-NetRoutekeyrt fyrir einn opinberan, einn innri og einn undantekningarstað.- NRPT-reglur athugaðar áður en leiðirnar voru kenndar um nafnbilun.
- Blokkunarkrafan endurlesin: valin leiðarstýring er ekki það sama og framfylgd blokkun.
Ákvörðunin um full eða split göng tilheyrir þeim sem á sniðið, og leiðarstýringarathugasemdir Microsoft lýsa hegðuninni sem Windows útfærir þegar snið stillir hana. Microsoft: þvinguð og split göng er tilvísunin sem ég held opinni meðan ég les úttakið.