SSID ändern wenn kein Gateway in Range

Aus Freifunk Franken
Wechseln zu:Navigation, Suche

Es kommt immer mal wieder vor, das Router "in der Luft hängen" und keine Verbindung zum Freifunknetz haben. Bei anfälligen Routern macht es Sinn dieses Script zu installieren, dann wird die ausgestrahlte SSID geändert sobald kein Gateway (=DHCP Server) mehr in Reichweite ist. Man kann sich immernoch zum internen Freifunknetz verbinden, wird aber keine IP bekommen. Batman bleibt davon unberührt.

vi /usr/sbin/ssidoffline 
#!/bin/sh
if [ "$(batctl gwl | grep "No gateways in range")" != "" ] && [ "$(uci get wireless.w2ap.ssid)" = "franken.freifunk.net" ]
then
uci set wireless.w2ap.ssid='FFF_OFFLINE'
uci commit
/etc/init.d/network restart
fi

if [ "$(batctl gwl | grep "No gateways in range")" = "" ] && [ "$(uci get wireless.w2ap.ssid)" = "FFF_OFFLINE" ]
then
uci set wireless.w2ap.ssid='franken.freifunk.net'
uci commit
/etc/init.d/network restart
fi 

ESC und :wq zum speichern

ausführbar machen:

chmod +x /usr/sbin/ssidoffline

noch schnell nen cronjob anlegen:

cd /usr/lib/micron.d
ls

irgendeine von den Dateien aufmachen (oder ne neue anlegen):

vi DATEINAME

o drücken für neue Zeile

*/1 * * * * /usr/sbin/ssidoffline

micrond neu starten

/etc/init.d/micrond restart 

Achtung beim Test: Nach Abbruch der Verbindung dauert es u.U. ein paar Minuten bis batctl gwl wirklich ein "No gateways in range" liefert, diese Zeit muss abgewartet werden es kann daher nach ziehen der Uplinkverbindung durchaus bis zu 5 Minuten dauern bis die SSID geändert wurde.