Heute Nacht wurde die neue Gluon-Version 1.5.2 im Freifunk-Netz Rhein-Neckar auf alle Knoten verteilt. Bei privaten Knoten kann es zeitweise notwendig werden, verbundene Clients und deren Verbrauch zu kontrollieren. Nicht immer wieder der Datenverkehr korrekt priorisiert und dabei kann es helfen, die verbundenen Geräte einsehen zu können.
Zu diesem Zweck nutzen wir aktuell ein kurzes Bash-Script das wir nach jedem Update kurz installieren. Sollte noch kein SSH-Zugang bestehen, so muss erst der SSH-Schlüssel installiert und ein Zugang über die IPv6-Adresse des Knotens erfolgen. Hier eine Beispiel-Konfiguration für die ~/.ssh/config
die wir nutzen um uns schnell mit den Knoten verbinden zu können:
Host ff-ap
HostName knotenid.nodes.ffrn.de
AddressFamily inet6
User root
Nachdem man mit dem Knoten verbunden ist, können wir das folgende Script installieren:
cat <<'EOF' > /usr/bin/clients
#!/bin/sh
iw dev | grep AP -B 5 | grep Interface | cut -d ' ' -f2 | while read ifap; do
iw dev $ifap station dump
done
EOF
chmod +x /usr/bin/clients
Ab sofort können wir den Status aller verbundenen Clients abrufen:
root@ffrn-xyz:~# clients
Station 3c:28:6d:xx:x:xx (on client1)
inactive time: 10 ms
rx bytes: 28257
rx packets: 216
tx bytes: 52776
tx packets: 157
tx retries: 0
tx failed: 0
rx drop misc: 0
signal: -58 [-59, -65, -95, -95] dBm
signal avg: -56 [-57, -62, -95, -95] dBm
tx bitrate: 192.2 MBit/s VHT-MCS 9 short GI VHT-NSS 2
rx bitrate: 192.2 MBit/s VHT-MCS 9 short GI VHT-NSS 2
rx duration: 18652 us
last ack signal:-95 dBm
authorized: yes
authenticated: yes
associated: yes
preamble: short
WMM/WME: yes
MFP: no
TDLS peer: no
DTIM period: 2
beacon interval:100
short preamble: yes
short slot time:yes
Dabei helfen uns tx bytes
und rx bytes
um den Datenvolumen im Auge zu behalten. Das zieht man nun mit den Daten aus der Knoten-Übersicht zusammen und bekommt einen guten Eindruck wer das Netzwerk ausnutzt.
Doch denkt immer daran, die Idee der ganzen Sache ist es nicht die Leute einzugrenzen. Nutzt es bitte, um das Netz gesund zu halten.