D'VPN um Host oder an der VM laufen? Entscheedungsleitfuedem
Den Eegentümer vum Tunnel entscheet, wat wat ofdeckt. Wielt d'Plaz um Host oder am Gaascht, a bestätegt se mat Kontrollen zu Route, DNS an Ausgang am Gaascht.
Den Tunnel am Gaascht opbauen an en um Host opbauen änneren allebéid d'Adress, déi e Browser mellelt, an do hält d'Ähnlechkeet op. En Tunnel am Besëtz vum Gaascht behält seng Schlësselen, seng Standardroute a säi Resolver am Kernel vum Gaascht, wärend den Host verschlësselt Paketen un eng eenzeg wäit Adress weidergëtt. En Tunnel am Besëtz vum Host ass d'Spuerbild: de Client vum Host hält d'Sitzung a setzt Route a Politiken duerch, an de Gaascht léint sech, wat erauskënnt. Wielt Dir de falschen Eegentümer, schéckt all spéider Symptom Iech op déi falsch Maschinn. Zwee Kommandoen entscheeden d'Fro an ongeféier enger Minutt, an de Rescht vun dësem Leitfuedem ass, wat Dir mat der Äntwert maacht.
Bestëmmt den Eegentümer, ier Dir de Client beréiert
D'Regel geet drëm, wou de verschlësselte Text entsteet, net drëm, wéi eng Maschinn en VPN-Symbol weist. Wann de Gaascht en erstellt, brauch de Gaascht eng funktionéierend Route zum VPN-Server an näischt anescht vum Host. Wann den Host en erstellt, muss de Wee vum Gaascht iwwer den Host all Politik iwwerstoen, déi de Client vum Host dem lokale Verkéier opsetzt.
Dräi Froen wielen d'Plaz meeschtens fir Iech. Muss de Verkéier vum Gaascht e Firmenclient um Host iwwerstoen? Dann gehéiert den Tunnel an de Gaascht. Brauche méi Gaascht eng eenzeg Umeldung an eng eenzeg Ausgangsadress? Dann gehéiert en um Host, mat Weiderleitung bewosst agericht. Soll de Verkéier vum Gaascht ganz baussen dem VPN vum Host bleiwen? Dann ass en Tunnel am Gaascht déi eenzeg Usuerdnung, déi Iech dat vu Konstruktioun un gëtt.
Schreift d'Äntwert an enger Linn niewent dem VM-Numm: guest-owned oder host-owned. An engem Laboratoire mat sechs Maschinnen spuert déi Notiz méi Zäit wéi all Schrëtt hei drënner, well se Iech dorun hindert, en Tunnel ze diagnostizéieren, dee ni an der Maschinn war, op déi Dir Iech ageloggt hutt.
WSL1 an WSL2 sinn entgéintgesat Fäll
WSL1 ass keng virtuell Maschinn, dofir verdämpt d'Plazfro gréisstendeels. Seng Linux-Binärdateie lafen iwwer eng Iwwersetzungsschicht géint de Netzwierkstack vu Windows, an e Linux-VPN-Client huet keng onofhängeg Interface fir ze konfiguréieren. Wat funktionéiert, ass en Tunnel op der Windows-Säit, woubäi d'Distributioun d'Resultat benotzt, ouni eppes ze besëtzen.
WSL2 ass d'Géigendeel. Et bedreift e richtege Kernel an enger liichter Hëllefs-VM hannert engem virtuelle Hyper-V-Schalter, a säi Adressraum gëtt iwwer en Adapter op der Hostsäit NAT. Dofir behält sech e Linux-Client an der Distributioun wéi op enger physescher Linux-Këscht: et erstellt tun0 oder wg0, installéiert seng eegen Route a funktionéiert. De Fehler wunnt op der Hostsäit. Wann e Windows-VPN-Client sech mat enger Politik verbënnt, déi de Verkéier op lokalen Netzwierker blockéiert, behandelt en d'WSL2-Subnetz als net vertraut lokal Netzwierk a schneit de NAT-Wee of. D'Distributioun verléiert dann DNS an Ausgangszougang, wärend hirem eegenen Tunnel nach gesond ass: wg show mellt en Handschlag, ip route gesäit richteg aus, an curl hänkt.
Wéi eng Korrektur Dir benotze kënnt, hänkt vum Windows-Build of. Déi eeler ass eng Ausnam am Client vum Host fir d'WSL-Subnetz, déi ënner den Astellunge fir lokal Netzwierk oder opgedeelte Tunnel vum Client derbäigesat gëtt. Déi méi nei, op Windows 11-Builden déi se ënnerstëtzen, ass gespigelt Netzwierken: setzt networkingMode=mirrored an den Abschnitt [wsl2] vun %UserProfile%\.wslconfig, fuert wsl --shutdown aus, an d'Distributioun deelt d'Interface vum Host amplaz vun engem private NAT-Subnetz. De gespigelte Modus ännert och d'Verhalen vu localhost an den agehende Porten, also behandelt en als Migratioun an net als Schalter.
NAT, Bréck a wat den Host gesäi kann
Ënner NAT sinn dem Gaascht seng Tunnelpaketen un d'ëffentlech Adress vum VPN-Server adresséiert a verloossen den Adapter vum Host als verschlësselt UDP oder TCP. Den Host gesäit een eenzegen Flux a seng Bytezuel, näischt iwwer d'Ziler dobannen. Ënner engem Brécke-Adapter huet de Gaascht seng eegen Identitéit op Schicht 2 am physeschen LAN, hëlt seng eegen DHCP-Lease a gesäit fir all MAC-baséiert Politik aus wéi en zweeten Apparat. Kee vun deenen zwee Modus läisst den Host d'Notzlaascht vum Tunnel liesen; de Brécke-Gaascht ass einfach vill méi sichtbar fir d'Netzwierk ronderëm.
D'Isolatioun huet och en Ënnergrond. E Gaascht kann sech net virun der Maschinn verstoppen, déi säi Gediechtnes besëtzt, a wien den Host kontrolléiert, kann Schlësselen aus dem RAM vum Gaascht liesen. Wat en Tunnel am Gaascht Iech gëtt, ass eng Routing-Grenz an eng Malware-Grenz, net e Schutz virun der Persoun, déi den Laptop hält. Déi dokumentéiert Adapter-Modus si wäert, op ze halen, wärend Dir wielt, well de Modus souwuel ännert, wat den Host gesäit, wéi och, wat den LAN gesäit.
Leitfuedem: placéieren, konfiguréieren, beweisen
Fuert dës véier Kontrollen an der Rei an enger fräscher Gaascht-Shell aus, a stoppt bei der éischter, déi net mam opgeschriwwenen Eegentümer iwwereneestëmmt.
ip route get 1.1.1.1, deentun0oderwg0zréckgëtt, bedeit Gaascht-Besëtz, aneth0mat engem private nächsten Hop bedeit Host-Besëtz.resolvectl query example.com, oder liest/etc/resolv.confdo, wou de Gaascht keen Resolver-Service bedreift. En Tunnel, deen Verkéier, awer keen DNS dréit, ass dee meeschte hallef konfiguréierten Zoustand.- Vergläicht d'Ausgäng:
curl -4 -s https://ifconfig.meam Gaascht géintcurl.exe -4 -s https://ifconfig.meum Host. Verschidde Adressen heescht, de Gaascht besëtzt den Tunnel, an en Host um VPN mat engem Gaascht, deen den Heem-ISP weist, ass de Fall, wou näischt geierft gouf. - Widderhuelt béid mat
-6. En Tunnel nëmme fir v4 leet v6, wann de Client en net blockéiert oder routeet, a vill Clienten loossen v6 standardméisseg op der physescher Interface.
Bei engem Host-Gateway-Design, wou méi Gaascht en eenzegen Tunnel deelen, muss den Host weiderleeden an iwwersetzen. Um Linux-Host sinn dat dräi Deeler, an de Gaascht fält roueg op seng einfach Route zréck, wann ee vun hinnen feelt:
sysctl -w net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o wg0 -j MASQUERADE
iptables -A FORWARD -i virbr0 -o wg0 -j ACCEPT
iptables -A FORWARD -i wg0 -o virbr0 -m state --state RELATED,ESTABLISHED -j ACCEPT
Op der WireGuard-Säit muss AllowedIPs vum Host-Peer de Gaascht-Subnetz enthalen, zum Beispill 192.168.122.0/24, soss kommen d'Zeréckpaketen ni un an d'Opstellung gesäit aus wéi e Firewall-Problem. En Windows-Host erreecht dat selwecht Resultat mat Internet Connection Sharing oder enger NAT-Regel um Hyper-V-Schalter an brauch déiselwecht Kontroll vum Zeréckwee.
Wann d'Layout nach oppen ass, deckt dës Tabell déi heefegst Usuerdnungen of:
| Situation | Owner | Check first |
|---|---|---|
| One VM, host also on a corporate VPN | Guest | Does the host client block local networks? |
| Six lab VMs, one exit address | Host plus forwarding | ip_forward, NAT rule, server AllowedIPs |
| Malware or research VM | Guest, NAT | Snapshot age and resolver state |
| Bridged VM on an office LAN | Guest | DHCP lease and port security |
Zwee Tunnelen, zwee Gaascht an d'Konflikter tëschent hinnen
Wann Dir zwou Ausgäng gläichzäiteg braucht, ass de Muster deen hält een Tunnel pro Gaascht. All VM behält seng eegen Standardroute a säi Resolver, den Host bleift um gewéinleche Netzwierk, an déi zwee Tunnelen streiden sech ni iwwer déiselwecht Routingtabell. Zwee Gaascht ze brécken bündelt hir Route sou wéineg: dat virtuellt Netzwierk liwwert e Wee, an all Client muss nach ëmmer gesot ginn, datt dësen lokale Verkéier den Tunnel ëmgoe kann.
En Host-Tunnel an en Gaascht-Tunnel zesummen ze bedreiwen ass legitim, a bewosst Nëschten ass heiansdo genau dat, wat Dir wëllt, woubäi de Gaascht duerch säin eegenen Tunnel erausgeet an deen Tunnel duerch dee vum Host. Wat et an en Ausfall verwandelt, ass, datt keen opgeschriwwen huet, wéi en Endpunkt iwwer wéi eng Schicht erreecht soll ginn. Hält eng Lëscht mat zwou Kolonnen aus Zil an Eegentümer, an e Routekonflikt gëtt en Nokucken amplaz vun engem Nomëtteg voller Entdeckungen.
Verifizéiert, a loosst dann d'Restauratioun beim Eegentümer
Test vun bannen am Gaascht mat engem fräschen Applikatiounsprozess: Verkéier, Numm-Opléisung, béid Adressfamilljen a wat geschitt, wann den Tunnel fält. D'VPN-Symbol vum Host seet näischt iwwer d'Ofdeckung vum Gaascht, an dat ass déi heefegst falsch Bestätegung an dësem ganze Beräich.
D'Restauratioun gehéiert och dem Eegentümer. En Tunnel am Besëtz vum Gaascht gëtt vum eegene Client vum Gaascht an de Route, déi en geschriwwen huet, restauréiert. En Design am Besëtz vum Host gëtt vun der Startsequenz vum Host restauréiert, an d'Weiderleitungsregelen iwwerliewen keen Neistart, ausser eng Unit oder eng Startaufgab setzt se erëm duerch. Eng restauréiert Snapshottestellung ass eng Ausrollung, net en Undoen, well se al Umeldungen an al Route mat der Disk zréckbréngt. Ier Dir d'Aarbecht als fäerdeg bezeechent, bestätegt, datt den Eegentümer nach ëmmer zu der Linn passt, déi Dir opgeschriwwen hutt, datt DNS a béid Adressfamilljen am Gaascht opgeléist ginn, datt en doudegen Tunnel en Notz-Netzwierk amplaz vun engem schwaarze Lach hannerléisst, an datt en Neistart oder eng Snapshot-Restauratioun déiselwechten Zoustand reproduzéiert.