Weckrufer, Router-Linux hilft dummen LAN-Geräten,
c't 3/11, S. 156, Reiko Kaps <rek@ct.de>
-------------------------------------------------------------------

Installation:

Simpler Wake-on-LAN-Sender für OpenWRT (WoL-Wecker)
--------------------------------------------------
Kopieren Sie die Datei wol.sh per scp auf den 
OpenWRT-Router - etwa ins Verzeichnis /usr/bin. 
Anschließend macht der Befehl chmod +x
/usr/bin/wol.sh das Skript ausführbar. 

Um den Dienst beim Start des Routers anzuwerfen, 
genügt die zusätzliche Zeile 

/usr/bin/wol.sh &

in der Startdatei /etc/rc.local.

Wake-on-LAN per DHCP/Dnsmasq auf OpenWRT
-------------------------------------------------
Kopieren Sie die Datei dhcp-script.sh per scp 
auf ihren OpenWRT-Router (etwa nach /usr/bin) 
und machen sie mit dem Kommando chmod +x dhcp-script.sh
ausführbar. Anschließend erzeugen Sie die Verzeichnisse
/etc/dhcp/add.d und /etc/dhcp/del.d mittels

mkdir -p /etc/dhcp/add.d /etc/dhcp/del.d

Sind diese Vorarbeiten abgeschlossen, müssen Sie das
eigentliche Startskript von Dnsmasq anpassen: Sichern Sie 
vorher diese Datei mit 

cp /etc/init.d/dnsmasq /etc/init.d/dnsmasq.orig

Anschließend öffnen Sie das Skript mit dem Editor vi und suchen im
Quelltext nach der Funktion dnsmasq(), was sich mit der Eingabe eines
Slashs und "dnsmasq()" beschleunigen lässt. 

Mit der Taste i Wechseln Sie nun in den Einfügemodus: Innerhalb der 
Funktion, etwa direkt hinter der Zeile local cfg="$1" fügen Sie 
diesen neuen Befehl ein:

append_parm "$cfg" "scriptfile" "-6"

Danach drücken Sie die Taste ESC. Mit der Eingabe von :wq sichert vi 
ihre Änderungen und beendet sich anschließend.

Des Weiteren benötigt Dnsmasq noch eine neue Konfigurationsoption, die
ihm sagt, wo das DHCP-Script liegt. Diese lässt sich über das
OpenWRT-Tool uci setzen:

uci add_list dhcp.@dnsmasq[0].scriptfile="/usr/bin/dhcp-script.sh"
uci commit

Der zweite uci-Befehl sichert die zuvor gesetzten Optionen dauerhaft. 

Im Archiv finden Sie die Datei default.sh, in der man Kommandos
ablegen kann, die der Dnsmasq-Skriptmechanismus bei jedem 
Auftauchen eines DHCP-Clients ausführt. Kopieren Sie diese bitte in
den Ordner /etc/dhcp/add.d. Soll Dnsmasq ein Kommandos nur für einen
bestimmten Host ausführen, müssen Sie dessen Hardware-Adresse (MAC)
herausfinden (etwa per arp), eine danach benannte Datei im gleichen Verzeichnis
ablegen (siehe Beispiel aa:bb:cc:dd:ee:ff) und diese mit den Kommandos füllen. 

