WakeOnLan: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
Zeile 20: | Zeile 20: | ||
opkg install etherwake</nowiki> | opkg install etherwake</nowiki> | ||
Test: | Test: In der Shell folgenden Befehl eingeben. Die MAC-Adresse muss natürlich angepasst werden. | ||
<nowiki>etherwake 00:06:55:5a:53:f3</nowiki> | <nowiki>etherwake 00:06:55:5a:53:f3</nowiki> | ||
Das Gerät sollte jetzt einschalten. | Das Gerät sollte jetzt einschalten. | ||
Zeile 31: | Zeile 31: | ||
{ | { | ||
my $mac = shift; | my $mac = shift; | ||
my $ret = ""; | |||
$ret .= qx(etherwake $mac); | $ret .= qx(etherwake $mac); | ||
$ret =~ s,[\r\n]*,,g; # remove CR from return-string | $ret =~ s,[\r\n]*,,g; # remove CR from return-string | ||
Log 1, "sendEmail to $mac returned: $ret"; | Log 1, "sendEmail to $mac returned: $ret"; | ||
}</nowiki> | }</nowiki> | ||
Test: In dem FHEM-Webinterface { WakeOnLan('00:06:55:5a:53:f3');; } eingeben. |
Version vom 31. Dezember 2013, 13:53 Uhr
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.
etherwake 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 $mac); $ret =~ s,[\r\n]*,,g; # remove CR from return-string Log 1, "sendEmail to $mac returned: $ret"; }
Test: In dem FHEM-Webinterface { WakeOnLan('00:06:55:5a:53:f3');; } eingeben.