Wake on WAN over a DD-WRT Client Bridge?

Pizz

Reputable
Oct 10, 2014
13
0
4,510
Hi all,

Hopefully someone here can shed some light on this issue as I was beating my head against the wall all evening last night with it!

Below is a (very scientific) diagram of my network at home.
Router 1 (connected to the modem) connected wirelessly to Router 2 which is running DD-WRT acting as a client bridge, hardwired to my PC in another room.

I'm trying to get my PC to wake from sleep to packets sent via the internet (Wake on WAN).

I have enabled the Wake on Lan settings in the PC BIOS. I've added an exception for UDP port 9 in windows firewall. I've port forwarded UDP port 9 on both routers to the PC internal static IP address, and i've been into my network adapters properties and enabled the required parts for WOL.

... PC just won't wake! Any ideas on where i've got wrong at all?

Thank you in advance! I'd love to get this working!



20141021_080740.jpg
 
Solution
Wake on lan is a very special protocol and a PC tends to cheat so packets that are not 100% supported wake the pc and this leads people into wrong configurations.

What is suppose to wake a PC is packet sent to the broadcast address contains the mac address to be woken multiple times. Since it is send to all switch ports a pc should find this

Normally to make this work the router needs special support for what is called directed broadcast. The router needs to allow you to send a ip packet to the IP broadcast address of a subnet which it then in turn sends as a mac level broadcast to all ports. Even on routers that support this it is disabled by default since sending data to the broadcast address allow a denial of service to all...
Wake on lan is a very special protocol and a PC tends to cheat so packets that are not 100% supported wake the pc and this leads people into wrong configurations.

What is suppose to wake a PC is packet sent to the broadcast address contains the mac address to be woken multiple times. Since it is send to all switch ports a pc should find this

Normally to make this work the router needs special support for what is called directed broadcast. The router needs to allow you to send a ip packet to the IP broadcast address of a subnet which it then in turn sends as a mac level broadcast to all ports. Even on routers that support this it is disabled by default since sending data to the broadcast address allow a denial of service to all machines on the lan

The mistake that people make...and unfortunately some pc honor is sending packets directly to the mac address of the PC will cause it to wake....some time not all pc support this invalid packet.

The problem is this works from the lan but how do you make it work external. The reason it works sometimes is people port forward the external packet to say 192.168.1.xx and the router can look up the mac in the arp table and send the packet. So IF you have a ARP entry and IF the pc supports a direct packet rather than a broadcast it will work.

Most times thought he ARP entry has timed out. The other invalid assumption is that the PC actually has that IP. It has no OS running so it never responds to ARP. Very technically it does not even own that IP, what would happen if the pc was given a dynamic ip via DHCP.

The only way I have seen it done on consumer routers is to put in port mapping to the broadcast address of the lan. So you would map to 192.168.1.254 rather than the actual ip. The router would have to allow this and then actually send it it as a broadcast. This is commonly no implemented or disabled.

Because of security concerns this when you need to do this from the internet a jump server concept is used . You ask a active machine on the network to issue the wake on lan on your behalf.
 
Solution