How To Wake up Windows Machine via WOL from Synology NAS (or any Linux Server)

Here on NOW, We’ve covered many tools around WOL, Wake On Lan. WOL, allowing you remotely to Power On a local network computer. If this is something you are interested, we have a full tutorial showing you how to set up WOL on Windows on your local network. While the ability to remotely turn on and off the machine is cool, it’s important to note that this only works in a local network area.

To overcome the local network issue, it’s probably a good idea to have a server always on and accessible from the outside world. I happen to have a Synology NAS server which could be an ideal machine to serve as a proxy from your home network to the outside world. If you have a Synology running DSM (Disk Station Manager) you can follow the steps below to trigger WOL to any local network devices that supports it. The setup doesn’t require additional source nor install packages.

[Update June 7th, 2016]: If you have DSM 6.0 or later, please follow the below steps to enable remote WOL/send a magic packet to your local network machines.

How To Enable Synology DSM 6.0+ to send WOL/Magic Packet

Ever since Synology released DSM 6.0, even in 6.0 beta, the previous method for sending WOL packets no longer works. They have removed ether-wake command (see sample error below), but fortunately, there is still ways to send WOL or magic packet to wake up local network machines.

Current status: 1 (Interrupted)
Standard output/error:
/tmp/esynoscheduler.script.28484: line 1: ether-wake: command not found
/tmp/esynoscheduler.script.28484: line 2: etherwake: command not found

First, go to Control Panel > Task Scheduler > Edit or Create a new task, but make sure the user is root.

2016-06-07_1248

Under the Task Settings tab, in User-defined script, instead of having previous ether-wake command replace them with

synonet –wake [your mac address here];

2016-06-07_1248_001

Once that’s done, you can go back to the Task Schedule page view previous results, Action > View Result

2016-06-07_1312

Here you should get a Normal status result back and if configure correctly your local machine would wake up by now!

2016-06-07_1312_001

Configure Synology DSM Control Panel

Log in to your Synology via Public IP with IP forwarding or via Synology’s QuickConnect handle. Launch Control Panel > Advanced Mode

Synology Control Panel

Go to “Task Scheduler.”

Synology Task Runner

Let’s create a “User-defined script.”

Synology Task Runner User

Select the user who will have the rights to execute some command line utilities. Under the Run command section, enter the following command with your MAC address of the target device that you wish to WOL.

Synology Task WOL

ether-wake -i eth0 00:01:02:03:04:05

Make sure you update the MAC address. If your Synology has more than one Ethernet port, make sure eth0 has a connection to the local network.

Synology Task WOL Run

When finished configure the task, by default it will be a scheduled recurring running task. You probably don’t want to wake up a computer always at a given moment of the day. You can go to the schedule tab and update this to “Run the following date” and “Do not repeat”.

Synology Task Runner

Once you have configured that, you can always run this particular task on demand. Now you have a ready-to-go server that can wake up a home network machine remotely. If you have a Windows Server that’s always on, check out this utility to remotely trigger WOL magic packet.

Other Linux Server

It’s worth noting that the above command ether-wake should also work from any Linux server if fired remotely via SSH or Telnet. Just need to make sure the command line utility is present. If you would like to learn more about what it does, here is the manual page of this tool.

Jonathan Hu

Programming by day, Web Development, Canucks & Movies for spare time!
Co-founder of Next of Windows and a cool geek 🙂

Last updated: 06/07/2016

Posted in: How to , IT Pro
Discover more: , , , ,