I'm trying to enable wake-on-lan (wol) with two of my machines. I've read many web pages and forum threads. I am finding little useful information with respect to troubleshooting, especially with Slackware.
The machine I am trying to awaken uses an Asus M3N78-EM motherboard. I'm using the latest BIOS. In the BIOS I enabled
Onboard LAN Boot ROM and
Power On By PCI/PCIE Device. Suspend mode is configured to
Auto.
I built and installed the wol package from slackbuilds.org. For proof-of-concept and testing purposes, I temporarily modified rc.d/rc.6. Just after the
rc.inet1 stop command I added:
ethtool -s $INET_IFACE wol g
At the end of rc.6, just before the reboot/halt commands are issued, I added
ethtool $INET_IFACE
I added the latter command to verify the wol change took place during shutdown. Watching the shutdown screen reveals the ethtool command does indeed enable wol.
The machine is shutdown with the command:
/bin/shutdown -t1 -h now
From another machine I issue the wol command:
wol -v $MAC_ADDRESS
The stdout message is
Waking up $MAC_ADDRESS with 255.255.255.255:40000....
The other machine never awakens. The machine NIC LED is on and my network switch shows the cable is connected. I know the machine is on with the +5v supply enabled because I can successfully set a wakeup time and the machine awakens from that mode. The machine also awakens with a PS/2 connected keyboard using the wake-on-keyboard BIOS setting.
The on-board NIC uses the forcedeth driver. Although a bit dated and possibly no longer related, I read several reports that wol is broken with that driver unless the MAC address is reversed. I tried reversing the address with no success.
There are no relevant messages in the logs.
At this point I am not looking for fancy scripts. At this point I only want proof-of-concept with manual usage of the commands.
Any ideas?
Thanks again.
Solved
here.