Using the wol command (with examples)
- Linux
- November 5, 2023
Send a WoL packet to a device:
wol mac_address
Motivation: This command is used to send a Wake-on-LAN (WoL) magic packet to a specific device identified by its MAC address. The WoL magic packet will wake up the device from a sleep or powered-off state.
Explanation: The mac_address
argument is the MAC address of the device you want to wake up. The MAC address is a unique identifier assigned to network interfaces. The wol
command will send a WoL magic packet to the broadcast address of the network, which will be received by the device with the corresponding MAC address.
Example output:
Waking up device with MAC address mac_address...
Magic packet sent successfully.
Send a WoL packet to a device in another subnet based on its IP:
wol --ipaddr=ip_address mac_address
Motivation: In some cases, the device you want to wake up may be located in a different subnet than the host running the wol
command. In such situations, you need to specify the IP address of the target device to ensure that the WoL packet reaches the correct subnet and wakes up the desired device.
Explanation: The --ipaddr
option allows you to specify the IP address of the target device. By providing this option, the wol
command will send the WoL packet to the specified IP address instead of using the broadcast address of the local network. The mac_address
argument is still required to identify the device.
Example output:
Waking up device with MAC address mac_address at IP address ip_address...
Magic packet sent successfully.
Send a WoL packet to a device in another subnet based on its hostname:
wol --host=hostname mac_address
Motivation: Similar to the previous use case, if the device you want to wake up is located in a different subnet, you can also specify the hostname of the target device instead of its IP address. This can be useful when you know the hostname of the device but not its IP address.
Explanation: The --host
option allows you to specify the hostname of the target device. The wol
command will resolve the hostname to its corresponding IP address and send the WoL packet to that IP address. The mac_address
argument is still required to identify the device.
Example output:
Waking up device with MAC address mac_address at hostname hostname...
Hostname resolved to IP address ip_address.
Magic packet sent successfully.
Send a WoL packet to a specific port on a host:
wol --port=port_number mac_address
Motivation: By default, the WoL packet is sent to the default port number (usually port 9) on the target host. However, in some cases, the WoL service may be listening on a different port. To wake up the device successfully, you need to specify the correct port number.
Explanation: The --port
option allows you to specify the port number to which the WoL packet should be sent. This is useful when the WoL service is running on a non-default port. The mac_address
argument is still required to identify the device.
Example output:
Waking up device with MAC address mac_address at port port_number...
Magic packet sent successfully.
Read hardware addresses, IP addresses/hostnames, optional ports and SecureON passwords from a file:
wol --file=path/to/file
Motivation: If you have multiple devices that you want to wake up using the same configuration, it can be tedious to manually specify each MAC address, IP address, hostname, port number, and SecureON password every time. Instead, you can create a file that contains all the required information for each device and pass it to the wol
command.
Explanation: The --file
option allows you to specify the path to a file that contains the hardware addresses, IP addresses/hostnames, optional ports, and SecureON passwords for the devices you want to wake up. The file should be in a specific format, with each device’s information on a separate line in the following format: <mac_address> <ip_address/hostname> <port> <password>
. Note that the port and password are optional.
Example output:
Reading devices' information from file path/to/file...
Waking up device with MAC address mac_address_1 at IP address ip_address_1...
Magic packet sent successfully.
Waking up device with MAC address mac_address_2 at IP address ip_address_2 and port port_number_2...
Magic packet sent successfully.
...
Turn on verbose output:
wol --verbose mac_address
Motivation: Sometimes, you may want to see more detailed information about the WoL packet sending process for debugging purposes or to understand the underlying network operations. Enabling verbose output provides additional information about the execution of the wol
command.
Explanation: The --verbose
option enables verbose output, which includes detailed information about each step of the WoL packet sending process. This can be helpful in troubleshooting and understanding any potential issues that may arise. The mac_address
argument is still required to identify the device.
Example output:
Enabling verbose output...
Waking up device with MAC address mac_address...
Sending WoL packet to broadcast address...
Magic packet sent successfully.