Benutzer-Werkzeuge

Webseiten-Werkzeuge


p-hb:wakeonlan.proxmox

wakeonlan unter Proxmox

Unbedingt das Bios anpassen! Leider ist das bei jedem Mainboard anders und ich kann hier nichts notieren (als Vorgabe).

Benötigte Tools

Zunächst wird das ethtool benötigt:

| ethtool Debian
apt update && apt upgrade -y
apt install ethtool

Erforderliche Schritte

NIC und MAC ermitteln

Jetzt muss zunächst die richtige Netzwerkkarte und die dazu gehörige MAC-Adresse gesucht werden (bei Proxmox kann es die ein oder andere mehr sein). ;-)

| NIC und MAC prüfen
ip link
...
: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master vmbr0 state UP mode DEFAULT group default qlen 1000
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
...

Bei mir ist es die hier:

NIC = enp3s0
MAC = xx:xx:xx:xx:xx:xx

Die Mac ist natürlich nicht echt! Sie wird später zum starten des Servers gebraucht.

WOL Zustand ermitteln

Nun schauen wir, wie der Zustand der NIC aussieht:

| NIC Zustand prüfen
ethtool enp3s0 | grep Wake-on
	Supports Wake-on: pumbg
	Wake-on: d

Das hilft nun nicht wirklich weiter … Hier ein Auszug aus dem man zu ethtool:

| Auszug man ethtool
          wol p|u|m|b|a|g|s|f|d...
                  Sets Wake-on-LAN options.  Not all devices support this.  The argument to  this
                  option is a string of characters specifying which options to enable.
 
                  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™
                  f   Wake on filter(s)
                  d   Disable  (wake  on  nothing).  This option
                      clears all previous options.

Hier sehen wir nun, dass WOL auf d = disabled steht. Somit ist kein WakeOnLan möglich. Was nun?

WOL Zustand setzen

Es muss die WOL auf den Zustand g = Wake on MagicPacket™ gestellt werden, aber wie?
Hier hilft das ethtool wieder weiter:

| WOL auf MagicPacket™ umstellen
ethtool -s enp3s0 wol g

Nun ergibt eine Prüfung:

| NIC Zustand prüfen
ethtool enp3s0 | grep Wake-on
	Supports Wake-on: pumbg
	Wake-on: g

Wer nun aber glaubt, hurra das war's wird eines besseren belehrt (so ist es mir ergangen).
Das ganze geht nur ein mal, wenn überhaupt … Es sind noch zwei Schritte zu erledigen (bei Proxmox, sonst nur noch einer).

Zusatzschritt unter Proxmox

| WOL unter Proxmox freigeben
pvenode config set -wakeonlan xx:xx:xx:xx:xx:xx

Hier muss die oben ermittelte Mac-Adresse eingetragen werden damit Proxmox Wol erlaubt.

Überprüft werde kann das Ganze mit:

| WOL unter Proxmox prüfen
pvenode config get
wakeonlan: xx:xx:xx:xx:xx:xx

Mit Diesem Aufruf sieht man was mit pvenode config gesetzt wurde.

Wol permanent auf MagicPacket™ setzen

Hier gibt es diverse Lösungsansätze, ich habe mich für den nun Folgenden entschieden. Er erschien mir als der einfachste und vor allem ziemlich überall reproduzierbare Lösungsansatz. Ich verwende hier systemd, auch wenn ich das nicht gern tue …

| WOL permanent machen /etc/systemd/system/wol.service
[Unit]
Description=Configure Wake-up on LAN
 
[Service]
Type=oneshot
ExecStart=/sbin/ethtool -s enp3s0 wol g
 
[Install]
WantedBy=basic.target

Diese Datei muss erstellt werden und dann aktiviert werden, hier die Kommandos:

| WOL permanent machen Kommandos
systemctl start wol.service
systemctl enable wol.service
systemctl is-enabled wol.service
systemctl daemon-reload

Jetzt sollte WakeOnLan stabil funktionieren. Vom Prinzip her ein relativ einfache Aufgabe, ich hatte meine Probleme in der Hauptsache mit den Bios (Uefi) Einstellungen und die macht wirklich jeder Hersteller bei jedem Bord anders. Hier ist noch nicht mal zu sagen, Asus macht es immer so und AMI immer so. Das wäre zu einfach! 8-)

Links

p-hb/wakeonlan.proxmox.txt · Zuletzt geändert: 2021/07/29 19:37 von feuerteufel