Möchte man bei einem DD-WRT basiertem Router das WLAN Nachts ausschalten und morgens wieder einschalten, muss man folgendes Script in der Web-Oberfläche unter Administration -> Commands eintragen. Es sollte dann als Startup-Skript gespeichert werden, damit es bei jedem Neustart wieder wirksam ist. Das Skript prüft, ob ein Client via WLAN mit dem Router/Accesspoint verbunden ist und schaltet dann das WLAN aus/an. Zusätzlich wird unter /tmp/wlanchecklog.txt ein Log geschrieben.

echo '#!/bin/sh 

variable=$(/usr/sbin/iwconfig ath0 | grep Quality) 

quality=${variable:23:2} 

if [ "0/" == "$quality" ] 

then

 ifconfig ath0 down

 echo "wlan ausgeschaltet" >> /tmp/wlanchecklog.txt

else

 echo "client connected" >> /tmp/wlanchecklog.txt

fi' >> /tmp/root/wlan_off.sh

echo '#/bin/sh

ifconfig ath0 up

echo "wlan angeschaltet" >> /tmp/wlanchecklog.txt' >> /tmp/root/wlan_on.sh

chmod 700 /tmp/root/wlan_on.sh

chmod 700  /tmp/root/wlan_off.sh

Desweiteren müssen nachfolgend unter Administration -> Management folgende Cronjobs anlegen:

30 1-4 * * * root /tmp/root/wlan_off.sh' > /tmp/cron.d/wlanoff

31 5 * * * root /tmp/root/wlan_on.sh' > /tmp/cron.d/wlanon

Die beiden Cronjob’s schalten WLAN um frühstens 1:30 aus wenn kein Client mehr eingeloggt ist.

Der zweite Job schaltet das WLAN morgens um 5:31 wieder an.

Quelle: dd-wrt Forum