Wake on LAN unter Linux
Diese Anleitung beschreibt wie die Wake-on-LAN (WOL) Funktionalität unter Linux zum Aufwecken von Servern verwendet werden kann.
Wake-on-LAN aktivieren
Damit WOL verwendet werden kann, muss dies von der Netzwerkkarte unterstützt und aktiviert werden.
Mit Hilfe des Tools "ethtool" kann dies für die jeweilige Netzwerkkarte (in diesem Beispiel enp0s31f6 - dem Lan6 Port eines Produkt nicht mehr verfügbar) überprüft werden. Wenn es sich wie in diesem Falle um eine onboard-Netzwerkkarte handelt, überprüfen Sie ob im BIOS die Wake-On-Lan Funktion aktiviert ist:
tk@ubuntu1604:~$ sudo ethtool enp0s31f6 Settings for enp0s31f6: Supported ports: [ TP ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Supported pause frame use: No Supports auto-negotiation: Yes Advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Advertised pause frame use: No Advertised auto-negotiation: Yes Speed: 1000Mb/s Duplex: Full Port: Twisted Pair PHYAD: 1 Transceiver: internal Auto-negotiation: on MDI-X: on (auto) Supports Wake-on: pumbg Wake-on: g Current message level: 0x00000007 (7) drv probe link Link detected: yes
Bei der Ausgabe ist unter "Supports Wake-on" ersichtlich, welche WOL Modi unterstüzt werden. Unter "Wake-on" ist ersichtlich, welche Modi im Moment aktiviert sind.
Hier eine Übersicht über die möglichen WOL Modi (Auszug aus "man ethtool"):
p Wake on PHY activity u Wake on unicast messages m Wake on multicast messages b Wake on broadcast messages a Wake on ARP g Wake on MagicPacket™ s Enable SecureOn™ password for MagicPacket™ d Disable (wake on nothing). This option clears all previous options.
Wenn das MagicPacket™ verwendet werden soll um einen Server aufzuwecken, muss der Modus mit folgendem Kommando für die jeweilige Netzwerkkarte aktiviert werden:
ethtool -s enp0s31f6 wol g
Wenn der gewünschte WOL Modus nicht bereits per Default aktiviert ist, kann dies z.B. über /etc/rc.local aktiviert werden.[1]
Server mit wakeonlan aufwecken
Wenn ein Server aufgeweckt werden soll, ist das Kommando "wakeonlan" (unter Debian)[2] bzw. "wol" (unter RedHat/CentOS/Fedora)[3] erforderlich.
Damit kann unter Angabe der MAC-Adresse der enstprechende Server aufgeweckt werden.
user@another-pc-in-the-network:~$ wakeonlan 00:30:18:01:73:fb Sending magic packet to 255.255.255.255:9 with 00:30:18:01:73:fb
Server mit etherwake aufwecken
Alternativ kann auch das Tool etherwake verwendet werden.[4] Dieses erfordert ggf. root-Rechte.
Einzelnachweise
Autor: Thomas-Krenn.AG Bei der Thomas-Krenn.AG achten wir auf den bestmöglichen Service. Um dem gerecht zu werden, haben wir unser Thomas-Krenn Wiki ins Leben gerufen. Hier teilen wir unser Wissen mit Ihnen und informieren Sie über Grundlagen und Aktuelles aus der IT-Welt. Ihnen gefällt unsere Wissenskultur und Sie wollen Teil des Teams werden? Besuchen Sie unsere Stellenangebote. |