WakeOnLan

Aus FHEMWiki


Wake on LAN läuft auf der ISO/OSI-Schicht 2. Diese Pakete werden i.d.R. nicht geroutet. Ein Wake on Lan Paket kann entsprechend nur innerhalb eines Netzwerksegments versendet werden. Das zu weckende Gerät muss Wake on Lan unterstützen und es muss (im BIOS) eingeschaltet werden.

Ermitteln der MAC-Adresse

Anschließend muss die MAC-Adresse des zu weckenden Gerätes ermittelt werden. Auf dem Gerät selber:

  • Auf einem Windows-PC in einer Shell den Befehl „ipconfig /all“ eingeben
  • Auf einem Linux-PC in einer Shell den Befehl „ifconfig“ eingeben

Von einem anderen Gerät

  • Auf einem Windows-PC in einer Shell den Befehl „arp -a“ eingeben
  • Auf einem Linux-PC in einer Shell den Befehl „arp -a“ eingeben

OpenWRT

Das Wake on Lan Paket kann mit dem Programm etherwake erzeugt werden.

opkg update
opkg install etherwake

Test: In der Shell folgenden Befehl eingeben. Die MAC-Adresse muss natürlich angepasst werden das Interface (hier br-lan) eventuell auch.

etherwake  -i br-lan 00:06:55:5a:53:f3

Das Gerät sollte jetzt einschalten.

Funktion in der Datei myUtils.pm erstellen.

######## WakeOnLan von OpenWRT ############ 
sub 
WakeOnLan
{ 
 my $mac = shift;
 my $ret = "";
 $ret .= qx(etherwake -i br-lan $mac);
 $ret =~ s,[\r\n]*,,g;    # remove CR from return-string 
 Log 1, "sendEmail to $mac: $ret"; 
}

Test: In dem FHEM-Webinterface { WakeOnLan('00:06:55:5a:53:f3');; } eingeben.

Um auf einen Tasterdruck reagieren zu können, muss die Datei fhem.cfg ergänzt werden:

define HM_Taster_01.ntfy notify HM_Taster_01.* {WakeOnLan('00:17:31:fa:9b:51')}