Wake On Lan (WOL) iMac 2009 El Capitan, Sierra, not working System:


iMac (21.5-inch, Late 2009) 
El Capitan 10.11.6 
Non-Apple modem/router


Wake on LAN isn’t working. I have tried a variety of methods: iOS apps (Fing, iNet, Mocha); Mac applications and scripting on another Mac (WakeOnMac, wakeonlan perl script).

Yes, I’m on a local network, and yes I’ve ticked the ‘Wake for network access’ in System Preferences. Also checked with pmset -g that womp = 1. I have also tried overriding networkoversleep (1).

I initially believed the Ethernet (which directly connects the iMac to the router and should make this process more reliable) disconnected during sleep. I tested this by opening System Preferences > Network and leaving that open while I sleep it. When I woke it from sleep, the Network Preferences panel was still open (obviously) and Ethernet (at the top) showed as Disconnected and features a red dot beside it. It reconnects very quickly, but that’s no good for WOL.

I have now tested installs of Mavericks, Yosemite and macOS Sierra on a separate partition. Mavericks and Yosemite both allowed WOL (despite the Ethernet 'disconnecting' issue still being there, suggesting it doesn't actually disconnect). macOS Sierra, as El Capitan, does not allow WOL. The pmset settings and 'Wake for network access' etc. are all the same.

Does anybody know of an obscure network setting somewhere that disables WOL despite it being enabled in pmset?
Wake on Lan only works if the Mac is sleeping. You cannot wake up a Mac that has been shutdown no matter what third party apps you have. Mac's are not designed to Wake-up from LAN when shutdown for security reasons.