WireGuard funktionéiert iwwer mobil Donnéeën, awer net am selwechte WLAN
Eng Ufro aus dem LAN un d’ëffentlech Adress vum Router hëlt en anere Wee wéi eng iwwer mobil Donnéeën. Test dobaussen a wielt dann en lokale Wee.
Den Tunnel kënnt iwwer mobil Donnéeën erop a bleift doheem dann op Verbannen stoen, mam selwechte Profil, dem selwechte Peer-Schlëssel an ouni Konfiguratiounsännerung dertëscht. Den Ënnerscheed läit an der Rees: eng Ufro aus dem LAN un d’ëffentlech Adress vum Router ass net déi selwecht Rees wéi eng Ufro, déi aus dem Internet ukommt. Déi meescht Heimgateways implementéieren den Zeréckwee entweder guer net oder nëmme fir bestëmmte Protokoller. Doduerch gesäit de Symptom no engem futti Schlëssel aus, obwuel sech um Schlëssel näischt geännert huet. Kloert éischt, wéi ee Wee versot huet, ier Dir en Schlëssel, eng Portweiderleitung oder e Clientprofil ufaasst.
Eng Adress, zwee verschidde Weeër
Vun dobaussen erreecht e Paket d’ëffentlech Adress vum Router an eng Portweiderleitungsregel gëtt et un den WireGuard-Listener um internen Host weider. Vun dobannen aus wielt de Client déi selwecht ëffentlech Adress, sou datt d’Paket de Client verléisst, um Router ukommt an erëm a Richtung LAN zeréckgedréit muss ginn. Genau bei dëser Zeréckdréiung trenne sech déi zwee Weeër, well de Router e Floss muss iwwersetzen, deen déiselwecht Schnëttstell gläichzäiteg verléisst an erëm betrëtt. Vill Implementéierunge verwerfen en, amplaz en z’iwwersetzen, an de Client waart dann op een Handshake, deen ni geschéckt gouf.
Dëst Verhalen heescht normalerweis NAT-Loopback oder Hairpinning an et gehéiert zum Router, net zu WireGuard; RFC 4787 beschreift d’Iwwersetzungsfäll, an deenen en Gateway et ënnerstëtze kann oder net. WireGuard selwer huet keng Meenung zum Wee, well et nëmme Pakete gesäit, déi seng Schnëttstell erreechen. Wa de Router de Floss verwërft, kritt den Daemon ni eppes, de Client mellt en Handshake-Timeout, an de Serverlog bleift eidel. En eidele Log ass dofir en Hiwäis drop, wou d’Paket stoppe bliwwen ass, keen Beweis, datt de Server erofgefall ass. Et ass och de Grond, firwat eng Neiinstallatioun näischt ännert.
Och d’Ëmkeerung zielt: e Serverlog, deen en Handshakeversuch vun der LAN-Adress weist, beweist, datt d’Paket ukomm ass an de Wee an der Rei ass, wat d’Enquête op Schlësselen an erlaabten Adressen verlageret. Liest de Log dofir, wat en beweist, an net dofir, wat Dir gehofft hutt ze gesinn.
Reproduzéiert et, ier Dir eppes ännert
Test aus engem autoriséierten externen Netzwierk mam selwechten Apparat an dem selwechte Profil a widderhielt den Test duerno am LAN, ouni eppes z’änneren. En ofgeschlossenen Handshake dobaussen an e Client, deen dobannen den Apparat ni verléisst, reproduzéieren den Zoustand, amplaz drop ze roden. Béid Versich mussen dat selwecht Profil benotzen, soss beweist de Verglach näischt.
Kuckt dann no, wourop den Endpunktnumm fir dësen Apparat opgeléist. Déi folgend dräi Kommandoen weisen och, wéi eng Adress de Client tatsächlech gewielt huet:
wg show wg0 endpoints
dig +short vpn.example.net A
resolvectl query vpn.example.netDen éischte Kommando mellt den Endpunkt, deen d’Schnëttstell just benotzt, an déi aner zwee weisen, wourop den Numm op dëser Maschinn opgeléist. E Client, deen eng ëffentlech Adress wielt, während en am selwechten Netzwierk wéi de Server sëtzt, benotzt de Hairpin-Wee. E Client, deen d’LAN-Adress wielt, mécht dat net, an e Feeler do gehéiert zu enger anerer Enquête. Dës Ënnerscheedung entscheet, ob den nächsten Abschnitt iwwerhaapt gëllt.
Ënnerstëtzt Weeër fir en noen Server z’erreechen
Déi propperst Léisung ass eng Split-Horizon-Antwert: den ëffentlechen Numm léist fir d’Internet op déi ëffentlech Adress op a fir Clienten dobannen op d’LAN-Adress vum Server. D’Profil behält een Endpunktnumm an de Resolver wielt de Wee. Dat brauch Kontroll iwwer d’intern DNS-Antwert, déi en Heimgateway meeschtens ubitt an eng Organisatioun bewosst kann ageriichten. Ouni dës Kontroll bleiwen nëmmen eng Routerfunktioun oder en zweete Profil.
D’Routerfunktioun ass Reflexioun: de Gateway iwwersetzt de Floss vu bannen no baussen a schéckt en erëm no bannen. Wou et funktionnéiert, brauch et keng Clientännerung, a wou et net funktionnéiert, rett keng Clientastellung et. Test et, andeems Dir de Serverlog wärend engem internen Versuch kuckt, amplaz d’Funktiounslëscht vum Router ze liesen.
D’Profil op eng privat Adress ëmzeschreiwen ass eng Diagnos, keen Entworf. Et beweist, datt de Server am LAN äntwert, an et brécht dat selwecht Profil dee Moment, wou de Laptop d’Haus verléisst.
| Approach | What it depends on | Where it fails |
|---|---|---|
| Split-horizon name | Control of the internal DNS answer | Clients that resolve through a server outside the zone |
| Router reflection | Gateway support for hairpin translation | Routers that drop the flow silently |
| Private address in the profile | Nothing beyond the LAN | Every network except the one at home |
Halt d’Profil nëtzlech ausserhalb vum Heem
Wéi ee Wee Dir och wielt, loosst d’Identitéitskontroll a Rou. D’Endpunktadress ass net d’Peer-Identitéit, an eng Adressännerung justifiéiert ni, en onverbonnenen ëffentleche Schlëssel ze akzeptéieren, deen zoufälleg äntwert. WireGuard authentifizéiert iwwer de Schlëssel, also e falschen Host versot den Handshake, amplaz Zougang zu eppes Onerwaartem ze ginn.
Wa sech déi ëffentlech Adress verréckelt, hält dynamesch DNS den Numm nëtzlech, an d’Aktualiséierungsverhalen vum Client entscheet, wéi séier d’Ännerung ukommt. Test dat no enger Adressännerung vun dobaussen, well de LAN-Fall et net ka bestätegen. Passt op e Resolver op, deen déi al Äntwert iwwer d’Liewensdauer vum Record eraus cachet. En Numm, deen nach op déi virecht Adress weist, gesäit genee sou aus wéi e Server, deen erofgefall ass.
Schreift op, wéi en Numm d’Profil benotzt a wourop en op béide Säite vun der Grenz opgeléist. E Profil, dat vun enger Routerfunktioun ofhänkt, déi keen opgeschriwwen huet, ass en Supportufruff, deen op déi nächst Firmware-Aktualiséierung waart. D’Notiz seet och der nächster Persoun, ob en internen Feeler de bekannten Hairpin-Fall ass oder eppes Neies.