Cynwysyddion Windows a VPN: pam mae rhwydweithio lleol yn torri
Mae cynhwysydd Windows yn defnyddio tabl llwybro'r gwesteiwr, felly mae VPN sy'n rhwystro'r isrwyd lleol yn mynd â rhagddodiad y cynhwysydd gyda hi. Mae modd Linux yn cymryd llwybr arall.
Ar un gliniadur, gydag un cleient VPN wedi'i gysylltu, mae cynwysyddion Linux yn parhau i siarad â'i gilydd ac mae cynwysyddion Windows yn stopio. Nid y ddelwedd yw'r newidyn; y llwybr y mae'r pecynnau'n ei gymryd i'r gwesteiwr yw'r newidyn. Mae cynwysyddion Windows ar y rhwydwaith rhagosodedig yn benthyg tabl llwybro a chyfieithiad y gwesteiwr, felly mae polisi sy'n newid llwybro'r gwesteiwr yn eu newid nhw hefyd. Cadarnhewch hynny gyda chwilfa llwybr cyn ailosod unrhyw beth.
Ble mae pecynnau cynhwysydd Windows yn dod i mewn i'r gwesteiwr
Mae cynhwysydd ar y rhwydwaith rhagosodedig nat yn cael cyfeiriad o ragddodiad y gwasanaeth Host Networking Service, fel arfer yn rhywle o fewn 172.16.0.0/12, ac yn cyrraedd y gwesteiwr drwy addasydd rhithwir. Y gwesteiwr sy'n berchen ar y llwybr ar gyfer y rhagddodiad hwnnw ac yn cyfieithu traffig tuag at ba bynnag addasydd sy'n weithredol. Nid oes peiriant rhithwir ar wahân yng nghanol y llwybr hwnnw.
Y dyluniad hwn sy'n gwneud y methiant yn fecanyddol. Pan fydd y cynhwysydd yn anfon pecyn, mae'r gwesteiwr yn gwneud chwilfa llwybr ar gyfer rhagddodiad y cynhwysydd. Pa lwybr bynnag sy'n ennill, dyna lle mae'r pecyn yn mynd, ac nid oes gan y cynhwysydd unrhyw farn am hynny.
Beth mae'r cleient VPN yn ei newid ar y llwybr hwnnw
Mae cleient corfforaethol yn aml yn gosod set eang o lwybrau a hidlydd sy'n gwrthod mynediad i'r isrwyd lleol tra bo'r twnnel i fyny. Mae'r bwriad yn amddiffynnol: ni ddylai rhwydwaith lleol sydd wedi'i beryglu gyrraedd peiriant gwarchodedig. Y sgil-effaith yw nad yw llwybr y gwesteiwr i ragddodiad y cynhwysydd bellach yn rhwydwaith NAT lleol.
Yn lle hynny, mae'r chwilfa yn cyfateb i'r twnnel ac mae'r pecyn yn cael ei drosglwyddo i'r porth, nad yw erioed wedi clywed am y cyfeiriad cynhwysydd hwnnw. Mae Ping yn methu, mae'r cymhwysiad yn rhedeg allan o amser, ac mae'r cynhwysydd yn edrych yn doredig tra bo eicon VPN yn disgleirio. Edrychwch ar dabl y gwesteiwr tra bo chi wedi cysylltu ac mae'r llwybr cystadleuol yn weladwy.
| Container mode | Outbound path | Typical result behind the VPN |
|---|---|---|
| Windows, default nat | Host routes and translates container traffic | Container prefix follows the tunnel and fails |
| Windows, transparent | Container sits on the physical link | Depends on the local subnet being allowed |
| Linux engine on Docker Desktop | VM egress proxied by a host process | Often keeps working |
Pam mae cynwysyddion Linux yn ymddwyn yn wahanol
Mae'r peiriant Linux yn rhedeg cynwysyddion y tu mewn i beiriant rhithwir ysgafn, ac mae cysylltiadau allanol o'r peiriant hwnnw'n cael eu hagor gan ddirprwy ar ochr y gwesteiwr ar ran y cynhwysydd. Y gwesteiwr sy'n dechrau'r soced, felly nid yw rheol y VPN am ragddodiad y cynhwysydd yn gymwys iddo yn yr un ffordd, ac mae'r llwyth gwaith yn parhau i gyrraedd y rhwydwaith.
Mae'r gwahaniaeth hwnnw hefyd yn esbonio pam nad yw ryseitiau Linux yn trosglwyddo. Mae cynhwysydd Linux sydd angen ei dwnnel ei hun yn cael dyfais TUN ynghyd â gallu NET_ADMIN. Nid yw cynwysyddion Windows yn datgelu unrhyw ryngwyneb fel dyfais, felly nid oes cyfateb i'r patrwm hwnnw ar yr ochr honno.
Profwch y llwybr, yna dewiswch ddyluniad
Casglwch dystiolaeth o'r gwesteiwr, nid o'r cynhwysydd, oherwydd y gwesteiwr sy'n gwneud y chwilfa:
docker network inspect nat --format "{{range .IPAM.Config}}{{.Subnet}}{{end}}"
route print -4
Get-NetRoute -AddressFamily IPv4 | Where-Object DestinationPrefix -like "172.16.*"
Rhedwch allbwn y llwybrau unwaith cyn i'r VPN gysylltu ac unwaith wedyn. Os yw rhagddodiad y cynhwysydd yn awgrymu addasydd y twnnel yn yr ail allbwn, mae'r diagnosis yn gyflawn ac ni fydd ailgychwyn cynwysyddion yn helpu.
Mae'r opsiwn cyntaf yn benderfyniad polisi: gofynnwch i berchennog y rhwydwaith a ellir caniatáu mynediad LAN lleol i'r ddyfais hon. Mae sawl cleient corfforaethol yn cynnig hynny fel gosodiad, ond mae'n gwanhau ffin fwriadol. Gofynnwch amdano fel eithriad dogfennedig gyda pherchennog a dyddiad adolygu. Togl fesul dyfais nad oes neb yn ei ailymweld yw'r ffordd y mae polisi amddiffynnol yn diflannu'n dawel.
Lle mae'n rhaid i'r polisi sefyll, symudwch y llwyth gwaith yn lle ymladd â'r llwybr. Mae rhwydwaith tryloyw gydag isrwyd a phorth penodol yn rhoi cynwysyddion ar y cyswllt lleol, mae llwyth gwaith Linux yn rhedeg y tu ôl i ddirprwy'r peiriant rhithwir, ac mae peiriant rhithwir ar wahân â'i gleient ei hun yn cadw ei bolisi ei hun. Dewiswch un yn fwriadol a'i brofi o fewn y cynhwysydd, oherwydd dyna lle mae cais y defnyddiwr yn tarddu.