zmrd

daily occasional dose of nihilism🌗

Wake on LAN over the Internet

I put my PC to sleep whenever I leave my home, unless there’s a running task or when I’m about to RDP into it. I wasn’t super-excited about the computer running for several days when I was out of home for several days, so I configured WOL. I have a static IP address, so with some port-forwarding magic, this wasn’t a problem.

There’s a nice Android app for waking the computer up. By default, it uses a TCP port 135 and ICMP echo to determine whether the PC is up by simply trying to open a connection to the port of your choice. There’s no point in pinging the IP address, as that’s the address of my router (and that, intentionally, doesn’t reply). Anyway, I just added another rule in port-forwarding table to an always listening service, which is supposed to be forwarded either way.

I would prefer checking the status by an UDP packet (containing the MAC address, for instance), so you could sort of „authenticate“ the status check, but again, there’s a secure service running anyway (but that doesn’t stop me from suggesting this enhancement to the author!).

Let’s get to the point. I installed the app, configured the router and enabled waking on LAN feature in the BIOS. Funny thing happened! Computer was waking up whenever the status check was performed. To be more specific, it woke up whenever I tried to open a TCP connection to any port. No WOL magic packet needed.

This could be a nice feature for local network exclusive use - you could just RDP to a computer, it would just automatically wake up and acknowledged the connection. However, it’s not exactly what I want in this scenario.

It turns out there’s an option in device manager dialog of the specific adapter you need to disable.