Gofynnwch a all wal dân Windows weithredu fel switsh diffodd ar ei phen ei hun a chewch ddau ateb hyderus ac anghyson. Mae un yn dweud bod y rheol math rhyngwyneb yn gwneud y gwaith i gyd; mae'r llall yn dweud na all weithio heb sgriptio. Mae'r ddau yn disgrifio hanner yr un mecanwaith. Gall y wal fynegi'r bloc, ac mae a yw'r canlyniad yn methu ar gau yn dibynnu ar dri pheth: sut mae Windows yn dosbarthu'r addasydd twnnel, a yw'r eithriad man terfyn yn goroesi, ac a yw datrysiad enwau ac IPv6 wedi eu cynnwys. Cewch unrhyw un ohonynt yn anghywir a bydd y peiriant naill ai'n gollwng neu'n colli pob cysylltiad.

Tri amod, yn y drefn hon

Yr amod gyntaf yw dosbarthiad, ac mae'n penderfynu a yw'r rheol rydych ei heisiau hyd yn oed yn fynegiadwy. Gellir cyfyngu rheolau wal dân Windows yn ôl math rhyngwyneb: â gwifren, diwifr, neu fynediad o bell. Nid yw polisi sy'n rhwystro traffig allgymorth ar y mathau corfforol tra'n caniatáu'r twnnel yn gweithio oni bai bod Windows yn adnabod y twnnel fel mynediad o bell.

Yr ail amod yw'r eithriad man terfyn. Cyn bod twnnel o gwbl, rhaid i'r cleient gyrraedd gweinydd VPN dros yr addasydd corfforol, felly mae bloc cyffredinol ar yr addasydd hwnnw'n rhwystro'r union gysylltiad a fyddai'n gwneud y bloc yn ddiangen. Rhaid i'r eithriad enwi'r gweinydd a'i borth, a rhaid llwybro'r pecyn allan trwy'r giât gorfforol yn hytrach nag i mewn i dwnnel nad yw eto wedi codi.

Y trydydd yw'r sylw. Mae set o reolau sy'n rhwystro IPv4 ac yn anghofio IPv6, neu'n caniatáu i'r datryswr lleol chwilio'r man terfyn ac felly'n caniatáu pob chwiliad arall, yn methu'n agored yn union yn y ffenestr y mae'r switsh diffodd yn bodoli i'w chynnwys. Mae hynny'n fwlch dylunio yn hytrach na nam yn y wal. Dyma hefyd y bwlch sy'n goroesi pob prawf ar ddesg.

Dosbarthiad yw'r giât gyntaf

Edrychwch beth mae Windows yn ei feddwl o'r addaswyr cyn ysgrifennu un rheol. Mae cysylltiad VPN brodorol Windows fel arfer yn ymddangos fel mynediad o bell. Mae cleient trydydd parti sy'n creu ei addasydd rhithwir ei hun yn aml yn ymddangos fel un â gwifren, sy'n golygu bod bloc wedi'i gyfyngu i addaswyr â gwifren hefyd yn rhwystro'r twnnel.

Get-NetConnectionProfile | Select-Object Name,InterfaceAlias,NetworkCategory
Get-NetAdapter | Select-Object Name,InterfaceDescription,Status,ifIndex
Get-NetFirewallProfile | Select-Object Name,Enabled,DefaultOutboundAction

Mae'r drydedd orchymyn yn dweud a yw bloc allgymorth diofyn eisoes mewn grym, sy'n newid siâp cyfan y dyluniad. Os yw'r diofyn eisoes yn floc, rydych yn ysgrifennu rheolau caniatáu yn hytrach nag eithriadau i linell sylfaen ganiataol, ac mae hwnnw'n osgo haws o lawer i resymu yn ei gylch.

Os yw eich addasydd twnnel yn adrodd fel un â gwifren, nid wal dân yn unig yw'r offeryn cywir ar gyfer dyluniad sy'n methu ar gau, ac nid yw unrhyw faint o ddiwygio rheolau yn newid hynny. Dyma'r achos lle mae'r ail farn ym mhob edefyn fforwm yn gywir.

Mae'r eithriad man terfyn angen llwybr yn ogystal â rheol

Gadewch inni dybio bod y dosbarthiad yn gweithio. Mae'r eithriad yn ddwy ran, ac maent yn byw mewn is-systemau gwahanol. Mae'r rheol wal dân yn caniatáu'r traffig; mae llwybr y gwesteiwr yn ei wneud i adael trwy'r rhyngwyneb cywir tra mae'r twnnel i lawr.

New-NetFirewallRule -DisplayName "VPN endpoint allow" -Direction Outbound -Action Allow \
  -Protocol TCP -RemoteAddress 203.0.113.9 -RemotePort 443 -InterfaceType Wired,Wireless
New-NetRoute -DestinationPrefix 203.0.113.9/32 -InterfaceIndex 12 -NextHop 192.168.1.1
Get-NetRoute -DestinationPrefix 203.0.113.9/32

Heb y llwybr, dim ond tra mae llwybr diofyn yn dal i bwyntio at y giât gorfforol y mae'r eithriad yn helpu. Unwaith y bydd y cleient yn gosod ei lwybr diofyn ei hun ac yna'n marw, nid oes gan y pecynnau a ganiateir le synhwyrol i fynd ac ni ellir ailsefydlu'r cysylltiad. Mae'r methiant hwnnw'n edrych fel cleient wedi torri ac mewn gwirionedd yn llwybr ar goll.

Cadwch yr eithriad mor gul ag y mae'r cleient yn ei ganiatáu. Mae un cyfeiriad ac un porth yn adolygadwy; nid yw amrediad sy'n cynnwys rhwydwaith cyfan y darparwr. Mae'r rheol ehangach honno hefyd yn caniatáu unrhyw beth arall a gynhelir gan yr un darparwr, sy'n aml yn fwy nag y bwriadwyd.

DNS ac IPv6 yw'r mannau lle mae'n methu'n agored

Datrysiad enwau yw'r gollyngiad clasurol. Os mai enw gwesteiwr yw'r man terfyn, rhaid i'r cleient ei ddatrys cyn bod y twnnel, sy'n golygu bod yn rhaid caniatáu i'r addasydd corfforol gyrraedd datryswr. Mae'r un caniatâd yn gadael pob chwiliad arall allan tra mae'r twnnel i lawr, ac mae un chwiliad yn ddigon i ddatgelu'r hyn yr oeddech ar fin ei ymweld.

IPv6 yw'r ail. Nid yw rheolau a ysgrifennwyd ar gyfer IPv4 yn cynnwys y teulu arall, ac mae llawer o gleientiaid yn gosod llwybrau IPv4 yn unig. Felly gall peiriant â chysylltedd IPv6 brodorol barhau i siarad â'r rhyngrwyd tra mae ochr IPv4 wedi'i blocio'n gadarn, ac mae'r switsh diffodd yn adrodd llwyddiant drwy'r amser.

GapWhat leaksControl
Resolver permitted for endpoint lookupEvery name queried while downPin the endpoint as an address, or block non-tunnel DNS
Rules only for IPv4Full IPv6 connectivityAdd the same rules for the other family
Application bound to physical interfaceIts own trafficFirewall cannot fix this; change the binding

Mae'r drydedd res yn werth ei deall yn hytrach na'i hosgoi. Mae wal dân yn penderfynu am becynnau, nid am ba ryngwyneb y gofynnodd rhaglen am ei ddefnyddio, a gall rhaglen sy'n rhwymo'n benodol fod yn anodd ei chynnwys. Mae hynny'n ddadl dros switsh diffodd ar ochr y cleient sy'n gweithio o dan y rhaglen, nid dros fwy o reolau.

Profwch drwy atal y cleient, nid drwy dynnu'r cebl

Yr unig brawf ystyrlon yw'r un sy'n efelychu'r methiant rydych yn amddiffyn rhagddo. Ataliwch y gwasanaeth, lladdwch y broses, neu analluogwch yr addasydd a grëwyd gan y cleient, yna ceisiwch gyrraedd y rhyngrwyd ac enw:

Stop-Service -Name "YourVpnService" -Force
Test-NetConnection -ComputerName 1.1.1.1 -Port 443
Resolve-DnsName example.com
Test-NetConnection -ComputerName 2606:4700:4700::1111 -Port 443

Dylai'r tri fethu. Os bydd yr cyntaf yn llwyddo, nid yw'r bloc mewn grym; os bydd yr ail yn llwyddo lle methodd y cyntaf, mae gennych ollyngiad DNS; os bydd y trydydd yn llwyddo, nid yw IPv6 wedi'i gynnwys. Mae pob canlyniad yn pwyntio at un yn union o'r bylchau uchod.

Ailadroddwch y prawf ar ôl cysgu ac adael i'r peiriant ddeffro, oherwydd gall proffil y wal dân newid pan fydd Windows yn penderfynu bod rhwydwaith yn gyhoeddus neu'n breifat, ac mae rheolau wedi'u cyfyngu i broffil yn ei ddilyn. Mae dyluniad sy'n dal ar ddesg ac yn methu ar drên yn ddyluniad a brofwyd unwaith.

Os yw giât y dosbarthiad neu'r gofyniad DNS yn gwneud y dull wal-dân-yn-unig yn anweithredol, switsh diffodd ar ochr y cleient yw'r ateb gonest. Os yw'r twnnel yn gorffen ar lwybrydd yn lle hynny, dylai'r lwybrydd fod yn berchen ar y polisi, oherwydd mae un rheol yno'n cynnwys pob dyfais y tu ôl iddo ac nid yw'n dibynnu ar sut mae Windows yn labelu addasydd.

Erthyglau cysylltiedig