lan - WOL over Internet success for a while but fail after a period of time

05
2014-04
  • July

    This question already has an answer here:

  • Answers
  • MariusMatutiae

    You are actually right: the question is not fully answered by Majenko.

    The reason is that the WOL packets sent over the Internet (WOI?) are packets of a special nature, called subnet directed broadcasts (*SDB*s). They owe their name to the fact that, once they reach the final router, they are not forwarded using an IP address to a specific pc, but are instead converted into broadcast packets, sent to all pcs on the LAN. This is precisely the technique used by depicus in the Web page you refer to, as explained by depicus himself in the Wake on Lan over the Internet section.

    Thus Majenko's explanation (that the router will first try to identify the pc to send the magic packet to, and it will cease to do so once its ARP cache has expired because the sleeping pc cannot reply to ARP requests) is wrong. The subnet directed broadcast is transformed into an ARP broadcast, without any need for IP-routing.

    So why does this mechanism cease working? I do not know for sure. I can speculate, however, that this is a security feature of your router. *SDB*s are perfect vehicles for an infamous DDoS attack, called the smurf attack. In the same section referenced above, depicus states that Cisco routers have an option forbidding *SDB*s. It is possible your router has a security feature according to which it will explode *SDB*s if and only if it can locate the MAC address to which they are addressed. This will make it impossible, for an outside attacker, to take advantage of this vulnerability: how can an outsider guess a MAC address actually present on a given LAN?

    There is one simple way to check this explanation: try some of the solutions for WOL over the Internet (WOI?) proposed in DD-WRT's WOL page. Not all of them are open to you, if you do not have a DD-WRT router, but some are. And, should you decide to get a DD-WRT router (some of Buffalos' are, natively), read the scripts to wake-up a specific pc, which are quite nice and convenient.


  • Related Question

    (wake on lan in any reduced power state) Wake on any request, with no magic packet needed?
  • bob-the-destroyer

    I have a non-professionally/non-commercially purposed server - a 5yo laptop actually - on the www with low traffic, accessed no more than perhaps twice a day, and of course at unpredictable times. Being a laptop and so rarely used, I'd like to conserve power (battery or plugged in) and heat generation while not in use rather than having it on 24x7. Is there a way to awaken a system from a request of any protocol of any kind, load up, and pass the packet to the usual server software stack when up and ready? Is there an OS that can handle this case over any others, by listening on the ip yet still be technically mostly "asleep"? I'm getting discouraged by the apparent need for a special packet to awaken the machine.

    I'm rather ignorant on related standards, programmatically altering bios behavior outside the typical interface, hacking routers to force sending this wakeup packet on requests, or other methods. However, any info or leads to obscure methods and standards, hack or otherwise, would be appreciated.

    Edit: if this question is more appropriate for superuser.com, please someone with permission to do so move it there.


  • Related Answers
  • Mark Henderson

    No. Servers are designed to be run 24/7 - which is why laptops are not generally used as servers.

    The Magic Packet you're talking about is the standard way of issuing a Wake Up command (WOL), and it's issued to a MAC address, not an IP address. To be listening on an IP address instead of a MAC address, then the operating system needs to be running, which means the machine has to be on.