Enable and test Wake-on-LAN (WOL)
Enable Wake-on-LAN in BIOS/UEFI
Reboot the server and enter BIOS/UEFI (usually Delete, F2, F10, or F12 during boot).
Locate the "Wake-on-LAN," “Power On by PCI-E,” or similar option in the power management section.
Set this option to “Enabled.”
Save changes and exit BIOS.
Obtain the MAC Address of Your Proxmox Server
Access the Proxmox shell via the web interface or SSH.
Run:
ip addrFind the active Ethernet interface associated with your LAN and note its MAC address (displayed after
link/ether). For example:
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP>
link/ether 18:7d:23:fa:87:02 brd ff:ff:ff:ff:ff:ffThe MAC address above is 18:7d:23:fa:87:02 — write down your actual MAC for later use.
Configure WOL Support in Proxmox/Linux
Install ethtool:
textapt update apt install ethtoolCheck Network Interface WOL Support:
ethtool eno1Replace
eno1with your actual interface. Look forSupports Wake-on: gandWake-on: dorWake-on: g.If it lists
Wake-on: d, WOL is currently disabled.If it lists
Wake-on: g, WOL is enabled.
Enable Wake-on-LAN:
ethtool -s eno1 wol gThis turns on WOL until the next reboot.
Make WOL Setting Persistent: Edit
/etc/network/interfaces:nano /etc/network/interfacesUnder the correct
ifaceline for your interface, add:post-up /usr/sbin/ethtool -s eno1 wol gA sample configuration:
auto eno1 iface eno1 inet static address 192.168.1.10 netmask 255.255.255.0 gateway 192.168.1.1 post-up /usr/sbin/ethtool -s eno1 wol gSave and exit the file. This command ensures that WOL is always enabled after a reboot.
Reload Network Settings in Proxmox GUI (Optional):
Navigate to Node > System > Network.
Select your interface and click “Edit.”
Add the Autostart flag, then save.
Shutdown and Prepare for Testing
Fully power off (shutdown) the Proxmox server.
Confirm that the network interface LEDs remain active or blinking—this typically indicates WOL hardware is ready.
Sending a magic packet from linux
Option 1: Python (wol.py)
import socket
mac = '1A:2B:3C:4D:5E:6F' # Modify Mac address
mac_bytes = bytes.fromhex(mac.replace(':',''))
packet = b'\xFF'*6 + mac_bytes*16
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
sock.sendto(packet, ('<broadcast>', 9)) # Port 9 is common for WOL
sock.close()Option 2: Install Wake on Lan tools
RedHat Distros
sudo dnf install wol -ysudo dnf install etherwake -yDebian
sudo apt install wakeonlan -ySending a Magic Packet from Windows
Option 1: Using a Free Utility (WakeMeOnLan by NirSoft)
Download and extract WakeMeOnLan from NirSoft’s website.
Run the application and click “Add New Computer.”
Enter your Proxmox server’s MAC address and (optionally) its IP or broadcast address. Save the entry.
Select the entry and click “Wake Up Selected Computers” to send the magic packet.nirsoft
Option 2: Using Windows PowerShell
Open Notepad and paste the following (replace MAC and broadcast address with your own):
$mac="1A:2B:3C:4D:5E:6F" $broadcast="192.168.1.255" $port=9 $addr=([System.Net.IPAddress])$broadcast $udp=[System.Net.Sockets.UdpClient]::new() $packet = ([byte[]](,0xFF * 6 + (($mac -split "[:-]") | % { [byte]("0x$_") }) * 16)) $udp.Send($packet, $packet.Length, $broadcast, $port) $udp.Close()Save as
wol.ps1.Right-click and run with PowerShell (script execution policy may need adjustment).pdq
Confirming WOL Functionality
After sending the packet, the Proxmox server should power on if all settings are correct.
Upon startup, recheck WOL status with:
ethtool eno1Verify that
Wake-on: gremains set.
Troubleshooting Notes
Ensure wired Ethernet is used (many WiFi chipsets do not support WOL).
If WOL does not persist after reboot, double-check
/etc/network/interfacesfor yourpost-upline.Some motherboards may require WiFi to be disabled for WOL to work, so test with and without WiFi enabled if you encounter issues.
Last updated