WakeOnLAN icon indicating copy to clipboard operation
WakeOnLAN copied to clipboard

Issues with waking up PCs on different VLAN

Open Twist66 opened this issue 2 years ago • 3 comments

We are running WoL on an internal air gapped network. For security it has no connection to our intranet or the internet. The network has multiple VLANs and the WoL software is running on a separate VLAN from the machines we are controlling.

I have configured the host properties to use FQDN/IP on the Wake Up tab.

This works all of the time for some of the machines and some of the time for the others.

These PCs are all identically configured Dell R7920s running the same version of Win 10.

Using the listener I can see that the Wake on Lan packets are not consistently making it to the target machines. Once the packets stop getting to the target machine I might get things working again by changing back to Broadcast, sending a packet, and then changing back to FQDN/IP. This is a very unreliable workaround and it doesn't seem to last for very long.

Is there any other info I can provide to help troubleshoot this?

Twist66 avatar Oct 04 '22 15:10 Twist66

maybe the broadcast? mm i dont know, but u can see a videos https://www.youtube.com/watch?v=ZNXDbzaAM-I

ekardian avatar Oct 13 '22 19:10 ekardian

https://www.youtube.com/watch?v=FYjmFZF9c5E

ekardian avatar Oct 13 '22 20:10 ekardian

That sounds like you are running into an ARP cache timeout on the router/switch handling that subnet. When you send the WOL packet to a FQDN/IP, the router needs to learn the ethernet mac address of the host with that IP. So it broadcasts an ARP request on the subnet for that IP, and waits for a reply. If the host is asleep and its NIC does not have the "ARP Offload" feature enabled (or present), it will not answer, and the packet delivery will fail with dest_unreachable.

To make this work, you need to do one of these:

  • Ensure ARP Offload is available and active on all hosts, so that the NIC's circuitry can still respond while the host is asleep.
  • Hardcode all problematic hosts' ip/mac pairs into the router's Static ARP table.
  • Send the packet to the remote subnet's broadcast address. Most likely won't work, as all routers seem to throw these away, and have no option for changing it.
  • Add a static ARP entry for a fake IP (.254?) and MAC ff:ff:ff:ff:ff:ff (broadcast) to the destination subnet's router, then send WOL in broadcast mode to that IP. This is what I use. Some routers may prevent you from adding broadcast addresses. Some might require using telnet CLI to configure this.

theultramage avatar Nov 12 '22 15:11 theultramage