WireGuard-Peer verschwënnt nom Neistart: fënnt déi richteg Konfiguratioun
E Peer, deen Dir mat wg set bäigefüügt hutt, funktionéiert bis zum nächsten Neistart, well d'Schnittstell aus enger Datei oder engem Profil nei opgebaut gëtt, déi Dir ni editéiert hutt. Fënnt als éischt den Eegentimer.
Den Peer, deen Dir mat wg set bäigefüügt hutt, äntwert de ganzen Nomëtteg op Ping a ass nom Neistart fort. Näischt gouf beschiedegt: de Kernel huet deen Peer ni sossenswou gespäichert wéi an der lafender Schnittstell, an alles wat d'Schnittstell beim Start nei schaaft, huet se aus enger Datei opgebaut, déi Dir net ugefaasst hutt. D'Reparatur ass keen aneren wg set. Et geet drëm erauszefannen, wéi eng Komponent d'Schnittstell besëtzt, den Zoustand vun där Komponent z'änneren an duerno ze beweisen, datt de Peer genee dee Liewenszyklus-Evenement iwwerlieft, deen en ewechgeholl huet.
Reproduzéiert et eemol, absichtlech
Flickt kee Neistart-Problem, ier Dir et gesitt. Mat Konsol- oder Out-of-Band-Zougang notéiert d'Peer-Lëscht, startt iwwer den Déngscht nei, deen d'Schnittstell besëtzt, a vergläicht. Wann de Peer nach do ass, huet Är Ännerung schonn den dauerhaften Zoustand erreecht, an Dir debuggt de falschen Evenement.
Schreift dräi Fakten op, während Dir dat maacht: den Numm vun der Schnittstell, d'Unit oder de Profil, deen se gestart huet, an ob den Handshake-Zähler vum iwwerliewenden Peer zréckgesat gouf. En zréckgesaten Zähler bedeit, datt d'Schnittstell zerstéiert an nei erstallt gouf; en onveränderten Zähler mat engem fehlende Peer bedeit, datt eppes d'Konfiguratioun ënner Ären Féiss editéiert huet.
Wiem gehéiert d'Schnittstell?
WireGuard selwer huet keen Daemon an eng Konfiguratiounsdatei. Eppes driwwer rifft beim Start wg op, an dat Eppes ass d'Quell vun der Wourecht. Déi üblech Kandidaten sinn [email protected], e NetworkManager-Verbindungsprofil, eng distributiounsspezifesch Netzwierk-Unit oder e Verwaltungs-Panel, deen seng eege Datebank schreift.
Frot de System, net d'Dokumentatioun vun Ärer Distributioun. systemctl status wg-quick@wg0 an nmcli connection show klären dat meeschtens mat jeengem eenzegen Uerder. Wann déi zwee d'Schnittstell beusproochen, hutt Dir de Feeler fonnt, ier Dir eppes editéiert hutt: zwee Eegentimer schreiwen bei all Start dat selwecht Gerät nei, an dee leschten, deen leeft, gewënnt.
systemctl status wg-quick@wg0 --no-pager
grep -R "Address\|SaveConfig\|PostUp" /etc/wireguard/wg0.conf
nmcli -g NAME,TYPE connection show
wg show wg0 peersLaufzäit-Zoustand a Start-Zoustand sinn net déiselwecht Datei
wg set manipuleiert dat lafend Gerät iwwer netlink. Et schreift net /etc/wireguard/wg0.conf, e NetworkManager-Profil oder d'Datebank vun engem Panel. En erfollegräichen wg show duerno beweist, datt de Kernel de Peer akzeptéiert huet, net datt eppes en erëm restauréiert.
Et gëtt eng zweet Fal an déi aner Richtung. D'Optioun SaveConfig vu wg-quick schreift den aktuellen Zoustand vun der Schnittstell zréck an d'Konfiguratiounsdatei, wann d'Schnittstell erofgeholl gëtt. Wann se aktiv ass, kann eng Ännerung un der Datei, während d'Schnittstell uewen ass, duerch dat folgend Ofschalten iwwerschriwwe ginn, an Dir wäert schwuere gutt, datt d'Linn do war. Wann de Peer ëmmer nees zréckkënnt, lies d'Datei no engem Stop, net virdrun.
NetworkManager verhält sech nach eng Kéier anescht: hien besëtzt de Profil a wendt en bei der Aktivéierung un, also ass eng manuell editéiert .conf niewent enger aktiver NetworkManager-Verbindung just Dekoratioun. Wielt een Eegentimer fir d'Schnittstell a looss den aneren Manager se an Rou.
Suergt dofir, datt d'Ännerung op béide Plazen ukënnt
Editéiert als éischt den dauerhaften Zoustand, loosst den Eegentimer en duerno uwenden, an dann iwwerpréift den lafenden Zoustand. Dës Uerdnung bedeit, datt e Feeler op all Schrëtt op eng Saach weist anstatt op dräi.
# 1. persistent state (wg-quick owner)
sudo vi /etc/wireguard/wg0.conf
# 2. apply through the owner, not by hand
sudo systemctl restart wg-quick@wg0
# 3. verify runtime matches the file
sudo wg show wg0
sudo wg showconf wg0wg showconf dréckt déi lafend Konfiguratioun an der selwechter Syntax aus wéi d'Datei, wat déi zwee direkt vergläichbar mécht. Behandelt dësen Output als Geheimnis: et sinn privat Schlësselen dran, also klept en net an en Ticket oder e Chatkanal. Vergläicht d'ëffentlech Schlëssele vun de Peers an déi erlaabten IPen, a kontrolléiert, datt de Peer, deen Dir absichtlech ewechgeholl hutt, net zréck ass.
Beweist, datt en de Liewenszyklus-Evenement iwwerlieft
Startt en zweete Kéier iwwer den Eegentimer nei, a bestätegt dann dräi getrennt Saachen: de Peer erschéngt an wg show, den Handshake-Zähler klëmmt no Traffic, an d'Applikatioun, déi vum Tunnel ofhänkt, äntwert wierklech. E Peer mat engem ale Handshake ass e Routing- oder Schlësselproblem, kee Bestännegkeetsproblem, an dës Ënnerscheedung spuert eng sënnlos Konfiguratiounsännerung.
Kontrolléiert zum Schluss, wat den Neistart restauréiert huet. En Neistart, deen e Peer erwächt, deen Dir absichtlech ewechgeholl hutt, ass dee selwechte Feeler mat ëmgedréitem Zeechen, an et bedeit meeschtens, datt eng al Kopie vun der Konfiguratioun nach ëmmer vun irgendwou gelueden gëtt. Notéiert den Eegentimer, de Dateipad, den ëffentleche Schlëssel vum Peer an d'Verifikatiounsuerderen nieft der Konfiguratioun, sou datt déi nächst Persoun dat net erëm entdeckt, indem se en Produktiounshost nei start.