I'm trying to do a WOL for my Xenserver in my lab environment. However I am not able to do it. I have enable the BIOS settings of the physical server, and from what I can see, even when the server is turned off, the LAN led lights is on.
Also I have enabled port forwarding in the router like this setting:
Name: Wake-on-Lan IP address: 192.168.0.255 Port: 9 Protocol: UDP
And I tried to do arp add 192.168.0.111 001E90E36581 255.255.255.0 9
and did a ping
to that IP
but I'm not getting any response.
Note: I had to remove the "http://" at the begining of some of my links because ServerFault requires that I have "at least 10 reputation to post more than 2 links". At the time of posting I currently have 1, but my answer references more than 2 links :(
----------
I managed to get wake on LAN working with my XenServer 6.5 host. From what I understand, both the hardware (BIOS and NIC/firmware) and software (Operating System/NIC driver) must support wake on LAN functionality.
The hard bit seems to be on the software side of things because its easier to find out if hardware supports wake on LAN as opposed to, say, the NIC's driver for your chosen operating system. When the machine shuts down, the operating system/NIC driver must place the NIC into standby mode so that it can monitor the network for wake on LAN packets and boot the system if it detects one. If the NIC's driver doesn't support this then wake on LAN will not work, as far as I can tell.
The Ubuntu wiki covers some of this, including the Linux applications available that can send wake on LAN packets to hosts (help.ubuntu.com/community/WakeOnLan).
----------
The first step should include checking that the hardware you intend to purchase supports wake on LAN functions. I sort of skipped this step because at the time I didn't require wake on LAN functions, but you can do this by examining the hardware's manual/specification sheet and searching for information/feedback from other users, particularly about the driver support for your chosen operating system.
Anyways, here's what I did to get my system to boot via wake on LAN:
Configured my XenServer host's BIOS to enable wake on LAN functions, e.g. for my Asus AM1M-A motherbord (BIOS v1001), I enabled the "Power On By PME" option in the Advanced menu --> APM (when in the advanced mode). While not technically required, I also enabled the "WOL (include AC Power Loss)" which allows for wake on LAN functions if a power failure occurs.
Downloaded and installed XenServer 6.5 (xenserver.org/open-source-virtualization-download.html) on my XenServer host and configured a static IP address via local access. Then I downloaded and installed XenCenter 6.5 on a Windows machine and remotely connected to my XenServer host. If you're on a Linux or Mac machine, then OpenXenManager might work (github.com/OpenXenManager/openxenmanager).
I'm not sure if this step is required. In XenCenter, I enabled "Host Power On" and selected the wake on LAN option as described here (https://support.citrix.com/proddocs/topic/xencenter-65/xs-xc-host-power-on-enable.html). However, I couldn't find "Power On" option in XenCenter that the documentation mentioned. Additionally my XenServer didn't power up when I sent a wake on LAN packet to it.
Via the local console (remote console in XenCenter will probably work too) on my XenServer host, I edited the "/etc/rc.d/rc.local" file and added line "/usr/sbin/ethtool -s eth0 wol g" to the bottom, so that upon boot the "ethtool" command runs to enable the NIC's wake on LAN functions. This is described in the "Configure the operating system" section here (https://xen-orchestra.com/blog/how-to-use-wake-on-lan-on-xenserver-6-2/).
I shut down my XenServer host via XenCenter. Then I sent a wake on LAN packet from another machine on the network to my XenServer host and it powered up! I used an application called PowerOff (users.telenet.be/jbosman/applications.html) to send the wake on LAN packet from a Windows machine. If you're on a Linux machine, see the Ubuntu wiki page linked near the begining of this post for similar applications. If you're on a Mac, this application might work (readpixel.com/wakeonlan/).
It may be that you haven't enabled WOL in windows. Start-> right click (my)computer -> properties -> device manager. Find your network card. Right click the sucker, then click properties, power management. Make sure that the box is checked "allow this device to wake the computer. Now go to the advanced tab. Scroll down to "Shutdown Wake-on-lan" and make sure it's enabled. Also make sure "wake on magic packet" and "wake on pattern match" are enabled.
EDIT: In case you haven't enabled WOL in bios, here's how to do it. Restart (or boot) your PC. Press the DEL key or whatever key you're told to press to enter BIOS. Once you're in BIOS, look for Power Management and then WOL settings (not all BIOS are equal in appearance, so WOL settings might be named something different). If you find it, enable it then save and exit. If you're not sure what your BIOS labels WOL, go to your BIOS website, lurk around or submit a question asking where to find the WOL settings.
You cannot use wake on lan remotely. You have to be on the same network as it is a special layer2 packet. Some home routers allow to send wol packet from their web UI.