[Freifunk-Bonn] router offline debuggung

Julian Zielke freifunk at databunker.eu
Mi Feb 1 09:00:20 CET 2023


Ich mache mal gerade copy+past von dem, was ich woanders geschrieben habe:

Durch das Problem mit den doppelten IPs im Wireguard (weil unser Zuteilungsscript nicht hinterhergekommen ist), haben wir ja im nginx ein Rate-Limit eingestellt.

Wenn wir jetzt massig an Tunneln auf den Supernodes (z.B. bei einem Systemupdate) löschen, dann wollen mehrere hundert nodes ja sich wieder verbinden. Dieses Reconnect-Script läuft auf jedem node jede Minute und macht unter anderem solche Späße wie das wireguard-kernelmodul deaktivieren und wieder reaktivieren, gre tunnel löschen (+ x sekunden sleep hier und da).

Das führt dann dazu, dass dieses Konstrukt in ein Timing-Problem läuft, weil der Zeitslot bei 3 Requests pro Sekunde und mehreren hundert nodes zu gering ist, und die Prozesse für Wireguard und GRE in einem I/O thread hängen beiben (D-Flag im Prozess). Das weiß das Shellscript aber nicht und wird trotzdem jede Minute wieder gestartet, macht seinen curl auf die speed.php und die wireguard.php und will danach ja wieder das wireguard- und Geraffel ausführen, was aber nicht geht weil I/O Problem. Lösungsansatz wäre, dass das Script in diesem Fall die Node rebootet, weil kaputter als kaputt kann ein Kernemodul zur Laufzeit nicht sein.

Gruß,
Julian

On 01.02.23, 08:34, "Freifunk-Bonn on behalf of Julian Zielke" <freifunk-bonn-bounces at lists.kbu.freifunk.net <mailto:freifunk-bonn-bounces at lists.kbu.freifunk.net> on behalf of freifunk at databunker.eu <mailto:freifunk at databunker.eu>> wrote:


Das würde so einiges erklären, unter anderem auch, wieso einzelne Nodes keine Wireguard-Tunnel mehr aufbauen bzw. das Shellscript nur noch mit den curl Befehlen an die Tür der Supernodes klopft aber danach nichts passiert. Der Befehl, das wireguard kernelmodul zu laden fällt auf die Füße...


On 31.01.23, 18:20, "freifunk-bonn-bounces at lists.kbu.freifunk.net <mailto:freifunk-bonn-bounces at lists.kbu.freifunk.net> <mailto:freifunk-bonn-bounces at lists.kbu.freifunk.net <mailto:freifunk-bonn-bounces at lists.kbu.freifunk.net>> on behalf of edgar.soldin at web.de <mailto:edgar.soldin at web.de> <mailto:edgar.soldin at web.de <mailto:edgar.soldin at web.de>>" <freifunk-bonn-bounces at lists.kbu.freifunk.net <mailto:freifunk-bonn-bounces at lists.kbu.freifunk.net> <mailto:freifunk-bonn-bounces at lists.kbu.freifunk.net <mailto:freifunk-bonn-bounces at lists.kbu.freifunk.net>> on behalf of edgar.soldin at web.de <mailto:edgar.soldin at web.de> <mailto:edgar.soldin at web.de <mailto:edgar.soldin at web.de>>> wrote:




kein Thema. tippe mal dass dein Anpassung mit Nginx-Queueing da einfach die Zeitmarke reisst (cron jede 1min) auf den Boxen. wir werden sehen.




..ede




On 31.01.2023 18:11, Julian Zielke wrote:
> Interessant. Danke schon mal für deine Analyse! Eventuell kommen wir da dem Problem langsam auf die Schliche.
> 
> Ach ja: Der Bonn7 inkl. Map ist down. Ich weiß aber nicht wieso da ich diesen Server nicht administriere.
> 
> Gruß
> Julian
> 
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> *Von:* Freifunk-Bonn <freifunk-bonn-bounces at lists.kbu.freifunk.net <mailto:freifunk-bonn-bounces at lists.kbu.freifunk.net> <mailto:freifunk-bonn-bounces at lists.kbu.freifunk.net <mailto:freifunk-bonn-bounces at lists.kbu.freifunk.net>>> im Auftrag von edgar.soldin at web.de <mailto:edgar.soldin at web.de> <mailto:edgar.soldin at web.de <mailto:edgar.soldin at web.de>> <edgar.soldin at web.de <mailto:edgar.soldin at web.de> <mailto:edgar.soldin at web.de <mailto:edgar.soldin at web.de>>>
> *Gesendet:* Dienstag, Januar 31, 2023 6:03 PM
> *An:* Allgemeine Mailingliste zum Freifunk Köln, Bonn und Umgebung <freifunk-bonn at listskbu.freifunk.net <mailto:freifunk-bonn at listskbu.freifunk.net> <mailto:freifunk-bonn at listskbu.freifunk.net <mailto:freifunk-bonn at listskbu.freifunk.net>>>
> *Betreff:* [Freifunk-Bonn] router offline debuggung
> ok,
> 
> heute hing er mal wieder, aber ich konnte per ssh drauf. `ps` zeigte u.a. folgende prozesse
> "
> 18292 root 0 IW [kworker/u8:0]
> 18386 root 0 IW [kworker/3:3]
> 19057 root 0 IW< [wg-crypt-mesh-v]
> 19218 root 2124 S /usr/bin/respondd -d /usr/lib/respondd -p 1001 -g ff02::2:1001 -i mesh-vpn -g ff05::2:1001 -i br-client -t 10
> 19419 root 1216 S /bin/sh -c /lib/gluon/gluon-mesh-wireguard/checkuplink
> 19420 root 1228 S /bin/sh /lib/gluon/gluon-mesh-wireguard/checkuplink
> 19474 root 2032 S curl https://bonn5.kbu.freifunk.net/speed.php <https://bonn5.kbu.freifunk.net/speed.php> <https://bonn5.kbu.freifunk.net/speed.php> <https://bonn5.kbu.freifunk.net/speed.php>> -k
> 19475 root 1216 R ps
> 19830 root 0 IW [kworker/1:1]
> 20010 root 0 IW [kworker/2:2]
> 21654 root 0 IW [kworker/3:2]
> 22625 root 0 IW [kworker/0:2]
> 23425 root 0 IW [kworker/1:3]
> 23530 root 0 IW [kworker/2:0]
> 23763 root 1216 S /bin/sh -c /lib/gluon/gluon-mesh-wireguard/checkuplink
> 23764 root 1228 S /bin/sh /lib/gluon/gluon-mesh-wireguard/checkuplink
> 23934 root 1832 D ip link delete dev gre
> 23951 root 1216 S /bin/sh -c /lib/gluon/gluon-mesh-wireguard/checkuplink
> 23952 root 1228 S /bin/sh /lib/gluon/gluon-mesh-wireguard/checkuplink
> 23959 root 1044 D rmmod wireguard
> 28686 root 0 IW [kworker/0:0]
> "
> wovon zumindest
> "
> 23934 root 1832 D ip link delete dev gre
> 23959 root 1044 D rmmod wireguard
> "
> nicht mehr zu töten waren (status D immer doof).
> 
> ich schätze mal dass das system allergisch auf das parallele ausführen von `/lib/gluon/gluon-mesh-wireguard/checkuplink` reagiert. deshalb habe ich mal alle `curl` aufrufe mit timeouts versehen (`-m 10`) und den `/usr/lib/micron.d/gluon-mesh-wireguard` in `flock` eingepackt, damitter immer nur einmal läuft.
> 
> /usr/bin/flock -n /var/lock/checkuplink.lock /lib/gluon/gluon-mesh-wireguard/checkuplink
> 
> so, nu bin ich mal gespannt ob sich da was ändert. ..sonnige ede
> 
> 
> -- 
> _______________________________________________
> Freifunk-Bonn mailing list
> Freifunk-Bonn at lists.kbu.freifunk.net <mailto:Freifunk-Bonn at lists.kbu.freifunk.net> <mailto:Freifunk-Bonn at lists.kbu.freifunk.net <mailto:Freifunk-Bonn at lists.kbu.freifunk.net>>
> https://lists.kbu.freifunk.net/cgi-bin/mailman/listinfo/freifunk-bonn <https://lists.kbu.freifunk.net/cgi-bin/mailman/listinfo/freifunk-bonn> <https://lists.kbu.freifunk.net/cgi-bin/mailman/listinfo/freifunk-bonn> <https://lists.kbu.freifunk.net/cgi-bin/mailman/listinfo/freifunk-bonn>>
> 




-- 
_______________________________________________
Freifunk-Bonn mailing list
Freifunk-Bonn at lists.kbu.freifunk.net <mailto:Freifunk-Bonn at lists.kbu.freifunk.net> <mailto:Freifunk-Bonn at lists.kbu.freifunk.net <mailto:Freifunk-Bonn at lists.kbu.freifunk.net>>
https://lists.kbu.freifunk.net/cgi-bin/mailman/listinfo/freifunk-bonn <https://lists.kbu.freifunk.net/cgi-bin/mailman/listinfo/freifunk-bonn> <https://lists.kbu.freifunk.net/cgi-bin/mailman/listinfo/freifunk-bonn> <https://lists.kbu.freifunk.net/cgi-bin/mailman/listinfo/freifunk-bonn>>








-- 
_______________________________________________
Freifunk-Bonn mailing list
Freifunk-Bonn at lists.kbu.freifunk.net <mailto:Freifunk-Bonn at lists.kbu.freifunk.net>
https://lists.kbu.freifunk.net/cgi-bin/mailman/listinfo/freifunk-bonn <https://lists.kbu.freifunk.net/cgi-bin/mailman/listinfo/freifunk-bonn>






Mehr Informationen über die Mailingliste Freifunk-Bonn