Privates wlan ohne uplink abschalten

Aus Freifunk Rhein-Neckar Wiki
Wechseln zu: Navigation, Suche

Wenn man mehrere Knoten nutzt, um auch das private WLAN zu erweitern, kann es beim Ausfall der LAN-Verbindung eines Knoten seltsame Probleme geben. Freifunk funktioniert in dem Fall normalerweise weiter, weil der Ausfall über Mesh kompensiert wird. Das private WLAN wird jedoch nicht über Mesh übertragen, der Router sendet jedoch weiterhin die SSID des privaten WLANs aus. Dadurch können dann Clients im privaten WLAN beim Roaming sporadisch keine Verbindung ins Internet bekommen, oder andere seltsame Fehler können auftreten.

Mit folgendem Script (per Crontab aufgerufen) monitore ich aktuell die Erreichbarkeit meiner Fritz!Box und schalte im Fehlerfall das private WLAN ab:

  1. !/bin/sh

GW_IP=192.168.207.1

disabled=`uci get wireless.wan_radio0.disabled`

ping -c 2 $GW_IP if [ $? -eq 0 ] ; then

   # ping successful                                                                                                                                                                                                                                        
   if [ $disabled -eq 1 ] ; then
       # but interface disabled -> enable                                                                                                                                                                                                                   
       uci set wireless.wan_radio0.disabled=0
       uci commit wireless
       wifi
   fi

else

   # ping not successful                                                                                                                                                                                                                                    
   if [ $disabled -eq 0 ] ; then
       # interface enabled -> disable                                                                                                                                                                                                                       
       uci set wireless.wan_radio0.disabled=1
       uci commit wireless
       wifi
   fi

fi