Using wake on lan is quite simple, trying to use it from internet requires some extra attention.When you use WOL you send a broadcast packet to your modem/router and the modem /router propagates this broadcast packet to all Ethernet connected devices.
To send a WOL packet from internet been sure this packet arrives to your modem through internet you have to set the IP without broadcast.When the packed reaches the modem the modem tries to deliver the packet with the mac-address to a connected device using the routing tables.The routing table tells the modem to forward every packet from port 9 (the port usually used for WOL) to your workstation (this is because you previously set up the routing table.) So for example your packet should be sent to workstatio with ip 192.168.1.2. But your workstation is off line and so the router doesn’t know where IP 192.168.1.2 is.
How con you tell the modem that 192.168.1.2 is connected?
This job is done by the ARP (Address Lookup Table) of your modem, but the table is empty if your workstation is offline for a while or if your modem clears periodically the ARP table.
To add the missing entry in the ARP table you have to signin to your modem using telnet and from there you have to type this command using the right parameters:
arp add 192.168.1.2 11:22:33:44:55:66
Now you can send a WOL from internet and your workstation should wake up correctly.