(modifié le 4 avril 2024 à 22:35)

J'aime pouvoir démarrer mes machines à distance par Internet, particulièrement Proxmox car c'est sur cette machine que je fais mes tests, maquettes, etc.

Voyons comment activer le Wake on LAN dans Proxmox (ou Wake on WAN). J'ai suivi quelques tutos qui ne fonctionnaient pas / plus, voici donc ma contribution.

Pré-requis

Au moment ou j'écris ce post Proxmox s'appuie sur Debian, cela ne s'adresse donc pas uniquement à Proxmox.

Vous devez avoir un routeur / box capable de laisser passer les trames WOL (wake on lan). C'est possible avec FreshTomato, Freebox, etc. Je vous laisse vérifier cette possibilité avant tout, sans elle inutile d'aller plus loin.

Si vous ne pouvez pas relayer un paquet depuis internet, alors vous pourrez peut-être vous connecter en SSH sur une machine afin d'y installer etherwake :

etherwake 11:22:33:44:55:66

11:22:33:44:55:66 étant l'adresse mac de la machine cible.

1. Activer l'option dans le BIOS

Pour pouvoir démarrer votre machine Proxmox par le réseau il est nécessaire d'activer l'option de réveil PCI-E dans le BIOS/UEFI :

En effet la carte réseau est vu comme un périphérique PCI Express.

Le nom et l'emplacement de l'option dépend de votre carte mère et chipset.

Sur ma carte ASUS AM5 (Ryzen 7700x) il faut aller dans :

Advanced > APM Configuration > Power On by PCI-E / PCI

Consultez le manuel de votre carte mère si besoin, cette option est présente depuis longtemps dans la plupart des machines.

2. Activer l'option dans Proxmox

Pour que Promox puisse démarrer tout seul il est nécessaire que la carte réseau reste en veille profonde lorsque vous éteindrez la machine. L'option du BIOS est un pré-requis non suffisant, il est impératif de configurer également la carte réseau.

D'abord installer le paquet ethtool :

# apt install ethtool

Ouvrir le fichier suivant :

nano /etc/network/interfaces

Ajouter ces 2 lignes à la fin du fichier :

post-up /usr/sbin/ethtool -s enp3s0 wol g
post-down /usr/sbin/ethtool -s enp3s0 wol g

Ce qui donne :

enp3s0 correspond à ma carte ethernet d'administration de Proxmox, ce nom peut varier (à adapter en conséquence).

Pour enregistrer : CTRL+X, puis "O" (ou "Y" si anglais), puis ENTER.

Ces 2 lignes vont basculer la carte dans un mode de veille profonde à l'arrêt de la machine.  La carte réseau sera en capacité de répondre aux paquets magiques et de démarrer l'ordinateur quand le paquet magique contient son adresse mac. Cela fonctionnera également si vous coupez le réseau (ifdown) grâce à post-down.

3. Testons

Pour la prise en compte du fichier de configuration modifié :

  • relancez le service réseau (systemctl restart networking)
  • ou faites un reboot

puis éteignez votre Proxmox comme vous le faites habituellement par l'interface web ou en SSH.

Pour vérifier que ça fonctionne lancez un paquet magique : tadaaaa ! Proxmox doit démarrer tout seul 🧙‍♂️

En cas de problème

Si la machine ne démarrer pas, vérifiez votre fichier de configuration /etc/network/interfaces. La carte réseau doit avoir un témoin lumineux qui témoigne qu'elle est en veille et toujours sous tension quand Proxmox est éteint.

Pour vérifier que votre carte est en mode "wake on lan" vous devez avoir la lettre "g" après "Wake-on" (cf documentation) :

ethtool enp3s0 | grep -i wake
Supports Wake-on: pumbg
Wake-on: g

Si le paquet magique ne fonctionne par via internet essayez d'abord depuis votre réseau local (sous Android j'utilise l'application wake on lan).

Si cela fonctionne en local mais pas depuis internet vérifiez le port utilisé (7 ou 9 en général) ainsi que le flux / option Wake On LAN activée.

Un paquet magique arrive en broadcast donc vous pouvez faire une capture de trame pour vérifier qu'il arrive bien dans votre réseau local.

Auteur : Mr Xhark

Fondateur du blog et passionné par les nouvelles techno, suivez-moi sur twitter