Zeitgesteuertes WLAN
Zwar nicht schön, aber manchmal aufgrund äußerer Umstände zwingend nötig: Uhrzeitgesteuertes WLAN.
Mit der Freifunk Firmware lässt sich das über einen Cron realisieren, der die WiFi Interfaces oder ganze Radios ein und ausschaltet. Dafür muss ein passender Cron angelegt werden, der zunächst den "neuen" Zustand des WLANs konfiguriert und dann die WiFi Settings neu lädt:
root@node:~# cat /usr/lib/micron.d/wifi-timer 0 7 * * * uci set wireless.radio0.disabled=0; uci set wireless.radio1.disabled=0; wifi 0 20 * * 1-5 uci set wireless.radio0.disabled=1; uci set wireless.radio1.disabled=1; wifi 0 14 * * 6-7 uci set wireless.radio0.disabled=1; uci set wireless.radio1.disabled=1; wifi
Es können entweder einzelne WiFi Interfaces (z.B. wXmesh, wXap) ein und ausgeschaltet werden, oder aber ganze Radios (z.B. 2,4 GHz, 5 GHz). Die konkreten Namen der Interfaces können aus /etc/config/wireless
entnommen werden.
Die Syntax für die Uhrzeit ist Standard-Cron-Syntax. Die Werte bedeuten in dieser Reihenfolge: Minute, Stunde, Tag, Monat, Wochentag, Kommando. Der Cron löst immer dann aus, wenn alle Werte zur aktuellen Uhrzeit passen.
Die Änderungen wie oben beschrieben werden nicht im Flash gespeichert, sondern nur im RAM gehalten. Das spart Schreibzyklen. Nach einem Reboot oder Rekonfiguration durch den KeyXchange, etc. hat das WiFi also wieder den alten Zustand, bis der nächste Cron auslöst.