Įdiekite VPN klientą Hyper-V pagrindiniame kompiuteryje, atidarykite ten naršyklę, ir išėjimo adresas pasikeičia; atidarykite tą patį puslapį virtualioje mašinoje, ir ji gali rodyti seną adresą arba visiškai nieko. Įprasta išvada, kad virtualioji mašina sugedusi arba reikia įjungti suskaidytą tunelį. Nė viena iš to neišplaukia. VPN klientas nėra mašinos savybė; tai maršrutų rinkinys, virtualus adapteris ir dažnai prie konkrečių sąsajų prijungtas filtras. Ar svečio srautas kada nors sutiks šį mechanizmą, priklauso nuo virtualaus jungiklio, kurį naudoja svečias.

Mitas, pasakytas tiesiai

Tikima, kad pagrindiniame kompiuteryje įdiegtas VPN apsaugo visą mašiną, įskaitant virtualiąsias mašinas, nes virtualioji mašina tėra procesas, veikiantis toje mašinoje. Tai patogus tikėjimas, nes antivirusinė programa ir pagrindinio kompiuterio užkardos paprastai taip elgiasi. Tinklo keliai ne.

Svečio kadrą pagrindinio kompiuterio VPN dėklas paliečia tik tada, kai pagrindinis kompiuteris jį maršrutizuoja arba filtruoja. Nurašykite šį sakinį ant lipnaus lapelio, nes kiekvienas atvejis žemiau yra jo variantas.

Trys jungiklių tipai, trys keliai

Išorinis jungiklis susieja virtualų adapterį su fizine tinklo plokšte, o svečias siunčia kadrus per tą ryšį savo MAC adresu. Svečias tampa lygiavertis fiziniame tinkle, turėdamas savo DHCP nuomą, tinklų sietuvą ir DNS serverius. Pagrindinio kompiuterio VPN numatytasis maršrutas gyvena pagrindinio kompiuterio dėkle ir nejudina tų kadrų, nes jie sujungiami tiltu, o ne maršrutizuojami per pagrindinį kompiuterį. Štai kodėl išorinis jungiklis virš Wi-Fi adapterio yra bloga idėja: dauguma belaidžių tvarkyklių neperneša kadrų antram MAC adresui.

Vidinis jungiklis jungia svečius prie pagrindinio kompiuterio virtualaus adapterio. Vienas jis nesuteikia interneto išėjimo; NAT objektas pagrindiniame kompiuteryje atlieka vertimą, kaip aprašyta Hyper-V NAT vadove. Dabar svečio paketai tikrai patenka į pagrindinio kompiuterio maršrutizavimą ir NAT kelią, todėl VPN kliento maršrutai ir filtrai vėl tampa svarbūs. Tai konfigūracija, kai virtualioji mašina tikrai seka pagrindinio kompiuterio VPN ir kai kill switch gali visiškai atjungti svečią.

Privatus jungiklis neturi pagrindinio kompiuterio adapterio ir neturi viršutinės jungties. Svečiai kalba tarpusavyje ir su niekuo kitu, tad jei virtualioji mašina privačiame jungiklyje neturi interneto, trūkstamas maršrutizatorius yra priežastis, o VPN neaktualus.

Numatytasis jungiklis yra atskira konfigūracija

Windows pateikia numatytąjį jungiklį, kuris sujungia vidinį jungiklį su NAT ir DNS tarpine. Jo potinklį renkasi pagrindinis kompiuteris, jis gali pasikeisti po paleidimų iš naujo ir nėra tas pats objektas kaip jūsų sukuriamas NAT tinklas. Perstatyti jį kaip laboratorinį tinklą yra būdas, kuriuo žmonės atsiduria su dviem NAT ir svečiu, vis dar neturinčiu maršruto.

Jei virtualioji mašina yra numatytajame jungiklyje, perskaitykite svečio gautą adresą ir palyginkite jį su pagrindinio kompiuterio NAT lentele prieš liesdami VPN klientą. Svečio tinklų sietuvo ir NAT priešdėlio neatitikimas paaiškina daugiau gedimų nei bet koks kliento nustatymas.

Keturi faktai, kurie išsprendžia klausimą

Surinkite tai prieš ką nors keisdami: jungiklio tipą ir jo viršutinę jungtį, prie virtualiosios mašinos prijungtą adapterį, paties svečio adresą, tinklų sietuvą ir DNS, taip pat pagrindinio kompiuterio NAT ir numatytojo maršruto būseną. Tik skaitymo komandos yra Get-VMSwitch, Get-VMNetworkAdapter -VMName "TestVM", Get-NetNat, ir Get-NetRoute -DestinationPrefix 0.0.0.0/0; o svečio viduje ipconfig /all duoda likusią dalį.

Tada nuspręskite, ką svečias turėtų daryti. Jei jis turi likti už VPN ribų, gaukite teikėjo palaikomą išimtį būtent tam keliui, nes pagrindinio kompiuterio vykdomosios bylos išimtis neatleidžia persiunčiamo virtualiosios mašinos srauto. Jei jis turi naudoti VPN, patvirtinkite kliento dokumentuotą virtualiosios mašinos srauto tvarkymą, o ne manykite, kad bandymas pagrindinio kompiuterio naršyklėje tai apima.

Bandymas svečio viduje yra vienintelis įrodymas, kuris skaičiuojamas. Patikrinkite išėjimo adresą iš svečio, išspręskite vidinį vardą, iš naujo prijunkite VPN ir pakartokite. Pagrindinio kompiuterio naršyklės rezultatas nepakeičia nieko iš to.

Kiek kainuoja mitas

Žmonės išjungia kill switch, prideda statinius maršrutus arba ištrina ir iš naujo sukuria jungiklius tik kad bandymas praeitų. Kiekvienas trumpinys pakeičia gedimo būdą: svečias gali pasiekti internetą keliu, kurio niekas neketino, arba pagrindinis kompiuteris gali prarasti ryšį, kai išorinis jungiklis iš naujo susieja savo fizinę plokštę.

Išorinio jungiklio perrišimas pertraukia paties pagrindinio kompiuterio prieigą, todėl laikykite atvirą už juostos esantį kelią ir venkite trinti jungiklius, kol dar diagnozuojate. Teisingas rezultatas yra numatytas svečio kelias, įskaitant tai, kaip jis vėl prisijungia ir kaip nepavyksta, o ne žalias varnelė po vieno puslapio įkėlimo.

Patvarus atsakymas yra viena eilutė kiekvienai virtualiajai mašinai inventoriuje: kokį jungiklį ji naudoja ir kuris komponentas tiekia jos tinklų sietuvą. Kai tai užrašyta, kitas VPN pakeitimas yra paieška, o ne popietė spėlionių.

Susiję straipsniai