NEWS
Tester für WireGuard Adapter gesucht
-
Edit: Ich habe das Problem dass der WireGuard Handshake im LXC Container sehr lange bis zu 30 Sekunden dauert bis er ausgehandelt ist, hat noch wer das Problem oder gar eine Lösung?
-
@stephan-schleich sagte in Tester für WireGuard Adapter gesucht:
WireGuard Handshake im LXC Container sehr lange bis zu 30 Sekunden dauert bis er ausgehandelt ist, hat noch wer das Problem oder gar eine Lösung?
Da ich kaum ein Wort davon verstehe, gehe ich davon aus, das das nicht direkt Adapter-bezogen ist??
-
Mein WireGuard läuft auch im lxc container, Verbindung ist sofort da.
Was genau dauert bei dir 30sek?? Vielleicht wird da was nur alle 30 sek aktualisiert??
-
@ilovegym Versuch mal bitte mit aktiver Verbindung einen Ping und schau ob er nach 3 Minuten öfters abgebrochen ist.
-
Ich habe die letzte Zeit sehr oft, dass er iobroker über die IP von wireguard nicht aufgerufen werden kann.
Irgendwann geht es wieder, ein System erkenne ich nicht.
Ein Ping funktioniert jedoch.Chrome meckert immer, dass sich das Netzwerk geändert hat.
Liegt das an der Konfiguration des vpn oder an Sachen am Smartphone (wireguard App, DNS, etc...)?
-
hmm bei mir funktionierts ohne Probleme.
Konfig:
Fritzbox 7590, Unifi Dream Machine Pro ( doppel NAT ), 7 Unifi AP (3x LR, 1x HD, 3x HD Nano), 4 Unifi Switchs, 10 Netgear Switchs, Wireguard als Proxmox LXC, Pihole als LXC, iobroker als LXC, usw..
Proxmox ist ein Cluster mit 4 Nodes, einer davon spare und off, mehrere Vlan's. Insgesamt 330 Devices im Netzwerk, mehrere Subnetze.Vielleicht irgendwo ein Fehler eines Treibers der Netzwerkkarte oder im Routing.. schwer zu sagen.
Wireguard wird von 4 Devices / Usern genutzt und mir ist nichts auffaelliges berichtet worden.. ( und das waere es bestimmt.. )
-
@grizzelbee
Läuft mittlerweile (wer lesen kann ist klar im Vorteil^^) auch mit mehreren Hosts ziemlich geschmeidig.
Einzig (vermutlich) bei neuer IP durch den ISP hat er manchmal irgendwie Schluckauf.
Scope des Adpaters ist ja eigentlich "nur" das monitoren, aber vielleicht besteht ja das Interesse/die Möglichkeit noch ein Feature einzubauen. Die WireguardUI bietet die Möglichkeit einen Peer per Klick temporär zu pausieren. Ich hab noch nicht wirklich herausgefunden wie er das macht. Ob das ein Feature von Wireguard selber ist, oder ob die UI dann einfach die Peerskonfiguration ändert.
Drehe immer mal wieder einem Peer vorübergehend den Zugang ab und das als Datenpunk im ioBroker wäre das Tüpfelchen auf dem i. -
@bommel_030 sagte in Tester für WireGuard Adapter gesucht:
Läuft mittlerweile (wer lesen kann ist klar im Vorteil^^) auch mit mehreren Hosts ziemlich geschmeidig.
Was war denn dein Problem? Vieleicht kann ich ja an der Doku oder am Handling etwas verbessern.
Einzig (vermutlich) bei neuer IP durch den ISP hat er manchmal irgendwie Schluckauf.
Hmmm. Ich bin bei der Entwicklung davon ausgegangen, dass sich die WG-Hosts im lokalen Netz befinden.
Vielleicht gibt es da tatsächlich etwas zu beachten, wenn sie extern sind. Oder verstehe ich dich da gerade falsch?Scope des Adpaters ist ja eigentlich "nur" das monitoren, aber vielleicht besteht ja das Interesse/die Möglichkeit noch ein Feature einzubauen.
Klar. Soweit sie sinnvoll sind, zum Thema des Adapters passen und machbar sind - baue ich gerne neue Features/Wünsche ein (siehe Docker-Unterstützung).
Die WireguardUI bietet die Möglichkeit einen Peer per Klick temporär zu pausieren.
Das klingt tatsächlich interessant und die Idee gefällt mir!
Die Frage ist aber tatsächlich - wie wird das realisiert?- Ist das Pausieren von peers wirklich ein Feature von Wireguard (Habe dazu noch nichts gefunden)?
- Wird das vielleicht über eine Firewall gemacht?
- ...
-
@grizzelbee said in Tester für WireGuard Adapter gesucht:
Was war denn dein Problem? Vieleicht kann ich ja an der Doku oder am Handling etwas verbessern.
Nein, wenn ich im ersten Host wg show all dump eintragen und im zweiten nur wg show all ist das eigene Dummheit
@grizzelbee said in Tester für WireGuard Adapter gesucht:
Hmmm. Ich bin bei der Entwicklung davon ausgegangen, dass sich die WG-Hosts im lokalen Netz befinden.
Vielleicht gibt es da tatsächlich etwas zu beachten, wenn sie extern sind. Oder verstehe ich dich da gerade falsch?Zwei lokal getrennte Standorte. Beide via FritzVPN (soll perspektivisch durch Wireguard abgelöst werden) verbunden. An beiden Standorten jeweils ein NUC mit Proxmox und wireguard im Container. Iobroker läuft in einem Container am Heimatstandort. Der entfernte bekommt alle 24h durch den ISP eine neue IP. Da meckert der Adapter nur wenn er zufällig abfragt und der entfernte Standort ist noch nicht wieder online. Spätestens nach der nächsten Abfrage ist aber alles wieder chic. Wenn der Heimatstandort mal ne neue IP bekommt (wird offensichtlich gewürfelt wann die Zwangstrennung kommt, definitv >24h) bekomme ich im Abfrageintervall einen Eintrag ins LOG er kann den Heimatstandort nicht erreichen. Wenn ich dann den Adapter einmal neu starte ist alles wieder in Ordnung.
@grizzelbee said in Tester für WireGuard Adapter gesucht:
Das klingt tatsächlich interessant und die Idee gefällt mir!
Die Frage ist aber tatsächlich - wie wird das realisiert?Freut mich, dann besteht ja Hoffnung. Aber alles was ich bis jetzt finden konnte ist quasi das "auskommentieren" des entsprechenden Peers in der JSON.
-
@bommel_030 sagte in Tester für WireGuard Adapter gesucht:
Der entfernte bekommt alle 24h durch den ISP eine neue IP. Da meckert der Adapter nur wenn er zufällig abfragt und der entfernte Standort ist noch nicht wieder online. Spätestens nach der nächsten Abfrage ist aber alles wieder chic.
Das klingt vollkommen logisch für mich: Wenn die Leitung unterbrochen ist, geht die Abfrage kaputt. Damit bin ich fein.
Wenn der Heimatstandort mal ne neue IP bekommt (wird offensichtlich gewürfelt wann die Zwangstrennung kommt, definitv >24h) bekomme ich im Abfrageintervall einen Eintrag ins LOG er kann den Heimatstandort nicht erreichen. Wenn ich dann den Adapter einmal neu starte ist alles wieder in Ordnung.
Das verstehe ich noch nicht richtig. Am Heimatstandort laufen doch der Broker und Wireguard auf der selben Maschine - nur eben wegen der Container in einem virtuellen Netzwerk - aber eben auf der selben Maschine. Da ist doch der ISP gar nicht im Spiel. Also ist dem Adapter die Zwangstrennung doch vollkommen egal. Im Moment klingt das nach einem Konfigurationsfehler. Ich würde erwarten das du für den Heimatserver die lokale IP des WG-Containers angeben musst.
Bei mir zum Beispiel habe ich - weil Broker und WireGuard normal installiert sind (keine Container) - schlicht "localhost" bei der Hostadresse angegeben.Freut mich, dann besteht ja Hoffnung. Aber alles was ich bis jetzt finden konnte ist quasi das "auskommentieren" des entsprechenden Peers in der JSON.
Habe gerade mal ein bisschen gelesen und herumgespielt. Es gibt einen besseren Weg (den ich vermutlich auch programmieren kann - auch wenn ich noch keine Idee habe wie - das übersteigt gerade mein Linux/sudoers know how):
wg set <interface> peer <pubKey> remove
löscht ein peer aus der aktuellen config. Wichtig dabei ist, dass "nur" die aktive (eingelesene/gecachete) config der aktuelle laufenden Instanz ist - nicht das config file.wg syncconf <interface> </path/to/config.conf>
wiederum liest die config aus dem angegebenen file wieder ein und aktiviert sie bzw. vorher mittelsremove
deaktivierte peers.
<interface> und <pubKey> stehen mir im Adapter zur Verfügung. Einziges Problem hier ist: Wie trage ich das im sudoers file ein - weil variabel?
</path/to/config.conf> steht mir nicht zur Verfügung und kann für jeden Host unterschiedlich ein. Auch hier: Wie trage ich das im sudoers file und im Adapter ein - weil variabel? -
@grizzelbee
Mit dem fernen bin ich auch völlig fein. Kein Internet, kein Problem, reconnect sobald wieder verfügbar.
Wireguard und iObroker sind in getrennten Containern installiert. Verbunden über die lokale IP. Von daher verstehe ich noch weniger was die Internetverbindung damit zu tun hat...
Das mit dem remove klingt interessant, das muss ich mir Mal am Rechner anschauen. -
@bommel_030 sagte in Tester für WireGuard Adapter gesucht:
Wireguard und iObroker sind in getrennten Containern installiert. Verbunden über die lokale IP. Von daher verstehe ich noch weniger was die Internetverbindung damit zu tun hat...
Wie gesagt: Eigentlich sollte sie nichts damit zu tun haben. Schreib doch bitte mal ein Debug-Log. Vielleicht sehen wir da mehr.
Das mit dem remove klingt interessant, das muss ich mir Mal am Rechner anschauen.
Habe mal einen issue angelegt:
-
@bommel_030 sagte in Tester für WireGuard Adapter gesucht:
Das mit dem remove klingt interessant, das muss ich mir Mal am Rechner anschauen.
Ich habe das mal implementiert und gerade ins latest geschoben. Version 1.3.0 des Adapters kann jetzt also einzelne peers suspendieren und alle peers eine interfaces wieder aktivieren (wg kann das reaktivieren nicht selektiv).
v1.3.0 (2022-06-25)
- (grizzelbee) Fixed: #33 Added buttons to suspend single and restore all peers of an interface
- (grizzelbee) Upd: dependencies got updated
Edit:
Ach Ja! Bitte Readme beachten. Es muss im Admin config ergänzt und sudoers erweitert werden damit das klappt. -
@grizzelbee
Ein Träumchen! Das Wetter leider ebenso Teste heute Abend sobald der Kurze im Bett ist! -
@grizzelbee
So, suspend klappt sofort. Restore leider nicht. Erst wenn ich den wireguard service manuell neu starte.
Gibt es einen Grund warum ich nur alle reaktivieren kann und nicht auch einzelne restoren kann? -
@bommel_030 sagte in Tester für WireGuard Adapter gesucht:
So, suspend klappt sofort. Restore leider nicht.
Komisch. Bei mir funktiniert beides sauber.
Nutzt du sudo? Wenn ja -> hast Du die beiden neuen sudoers Regeln eingetragen?Erstelle bitte mal ein Debug-log und schau ob da was hilfreiches drin steht. Kannst es auch gerne mir schicken oder hier posten. Dann gucke ich mal rein.
@bommel_030 sagte in Tester für WireGuard Adapter gesucht:
Gibt es einen Grund warum ich nur alle reaktivieren kann und nicht auch einzelne restoren kann?
Ja - weil ich gerade erst (quasi durch deine Nachfrage) rausgefunden habe, das man auch einzelne Peers wieder aktivieren kann Ich hatte zuerst nur die all-peers Methode gefunden.
Ich baue das noch ein ...
-
@grizzelbee
So, auch mit der neuen Version "nur" Teilerfolg. Suspend eines Peers klappt umgehend. Sowohl einzelner Peer, sowie alle Peers resume wird im Log zwar korrekt aufgeführt, zeigt aber keine Wirkung, aber auch keine Fehler. Vollständiges Debug Log gerne per PN oder Mail, was dir lieber ist.
Nach einemsudo wg-quick down wg0 sudo wg-quick up wg0
in der Konsole wird der Client sofort wieder verbunden.
Zu deinen Fragen, ich nutze sudo und habe die neuen/zusätzlichen sudoers Regeln auch eingetragen. Da suspend funktioniert und im Log kein Fehler beim Resume kommt scheinen die auch zu passen.
Ich habe IP´s statt Hostname eingetragen, aber das sollte vermutlich kein Problem sein. Ich nutze die WireguardUI (eigenltich nur um neue Peers anzulegen oder QR Code zu scannen). Die braucht nach jeder Änderung auch einen wg restart (geschieht dort automatisch bei "Einstellungen übernehmen"). -
Hey Bommel,
was ist eigentlich hier aus den Tests geworden? Funktioniert jetzt alles? Kann der Adapter so ins Stable?
-
@grizzelbee
Ich bin noch am testen, kann aber leider noch nicht ausschließen das es an meiner Installation liegt.
Von daher kann er meinetwegen gerne ins stabile. -
@grizzelbee
Hab Mal dein neuestes Update installiert. Habe in einer Instanz zwei Hosts mit unterschiedlichen Abrufintervallen hinterlegt. Die Anzahl der connected Peers wird bei beiden mit 3 angegeben, obwohl beim ersten Peer einer und beim zweiten Peer zwei verbunden sind. In Summe ist die Anzahl richtig, halt nur "falsch" aufgeteilt.
Weiterhin sind beide definitiv online, es wird aber immer nur der als online=true angezeigt der als letztes gepollt wurde. Es wechseln also im Abrufintervall beide von offline zu online und der andere von online zu offline.
Oder sollten zwei Hosts besser auf zwei Instanzen aufgeteilt werden?