fordem:
Wow ! And THANKS ! (Great "teaching".)
Ok ... I understand most of it (except maybe the part about why an arp request would be required on a local LAN if the MAC of destination is already known). Now ... how can we help
risk1994 ?
In my script the function used to WAKE the server is implemented by a program called "mc-wol.exe" which I found after some search on the internet (
http://www.matcode.com/wol.htm). I can't speak for the quality of that program, since I did not create it. But it has worked fine for me on my local LAN specifying MAC only (without providing an IP -- which (per its documentation) is not needed for local LANs). Since the system to be woken is OFF, I am not sure its NIC even knows what the system's IP is (assigned after NASLite boots). It only knows its MAC (hardware coded in the NIC).
fordem please correct me, but I would assume that the IP may not have to be known to the card -- only to routing equipment for non-local WOL. I don't know if "mc-wol.exe" properly implements what fordem has written (broadcast, etc), but it has worked across a large variety (a dozen ?) of built-in NICs for me. I have woken both WinXP and NASLite giving only MAC. I do not have a PCI NIC to test, and am not sure if the WOL behaviour varies in that case. But I have to assume that the program is relatively well written (at least for local LAN) due to my successful testing.
If the IP is not required, and if the program correctly send a broadcast, then either the NIC is not correctly listening (implementing) the requested WOL, or a few minutes after prior shutdown there is insuffcient power to the PCI NIC (whether via the bus or the 3-pin cable).
Another scenario (if the IP is required): I don't kow if NASLite "tells" the NIC what the IP is after booting. Then after shutting down (as opposed to a sleep state) when the NIC "hears" the WAKE request after the first few minutes, it is also possible that the NIC has "forgotten" the IP (or it is cleared out by some other network activity from a master browser ("
flushing of the stale information") ??), and does not wake, because it no longer has its IP to compare to one that it expects to be supplied in the magic packet.
UPDATE: I have now tested the server after disconnecting the power cable for 20 minutes (simulating a power-outage), but I did not "discharge capacitors" or otherwise touch the power button).
SURPRISE ! SURPRISE ! The system did
NOT wake as normal using "mc-wol.exe". However, the front-panel power LED did come on. Additional WOL requests did not help; only pushing the power-button started the POST and boot process. The next step was to see if a BIOS power setting has anything to do with the problem. ( I generally set the BIOS option "After Power Fail" to "Remain Off" as opposed to the alternative "Former Status". ) Changing this option in BIOS to "Former Status", power-button off, then disconnecting power cable for another 20 minutes ... when I re-connected the power cable the system booted, which is not a good test. I will run some more simulated power-outages (and also mess with ACPI settings) and report back again. (My apologies to users of my script ... simulating a power outage had not occured to me during testing.)
So in summary: my server wakes normal 23 hours after remote shutdown using the "mc-wol.exe", but does not (yet) deal with a power-outage. risk1994 NIC does not wake after a few minutes.
More later ....

Georg