this post was submitted on 17 Sep 2023
21 points (95.7% liked)

Selfhosted

40113 readers
1476 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

Hello.

I was willing to post this in the home network community, but it is not active at all... So I hope this is the right place, as I use a self hosted wireguard and pihole.

I'm just a hobbyist whose first language is not English, so please, bare with me :)

So I use Wireguard Easy to create a tunnel to my home network to use pihole on my phone and access my services from outside.

I have an app to wake my home computer on LAN that is working fine when I'm home. I'd like to be able to wake it from outside and I don't know how.

A few things are bugging me. If I'm connected to my home network, shouldn't I be able to WoL my computer as long as I use my tunnel ?

And, on some occasions, I was able to WoL my PC when I wasn't home (I remember doing it once when I was visiting my parents).

Can someone ELI5 this please ?

Thanks for your help :)

all 15 comments
sorted by: hot top controversial new old
[–] [email protected] 12 points 1 year ago (2 children)

WoL works as Ethernet¹ broadcast, while Wireguard routes IP, one level above that. So for the purpose of WoL the two ends of the Wireguard tunnel are in two different, not connected networks. In theory you might be able to make it work using subnet directed broadcasts - though creating some means to trigger the WoL packet on where you're terminating your Wireguard might be easier to manage.

Simple option would be just logging in via SSH to trigger it (you could script that - define a host in your SSH client config that just executes a command on connection), or something like a simple web frontend which will then trigger the WoL event.

¹ it is probably fair to assume nowadays that you're using Ethernet, and not something like Token Ring. In case you do it still works the same, just the terminology is different.

[–] [email protected] 2 points 1 year ago* (last edited 1 year ago)

Thanks for the explanation. I ended up remotely installing UpSnap. Works like a charm :)

[–] [email protected] 0 points 1 year ago* (last edited 1 year ago)

This is a very strong explanation of what's going on. And as a follow-up, I believe that ZeroTier present a single Ethernet broadcast domain, and so WoL tricks are more likely to work naturally there than with Wireguard. I haven't used ZeroTier, and I do use Wireguard via Tailscale/Headscale. I've never missed the Ethernet features of ZeroTier and they CAN result in a very chatty wan if you're not careful. But I think ZT would make this straightforward.

Though as other people note... the simplest/least-disruptive change is probably to expose some scripty thing on the rpi that can be triggered via be triggered over a routed protocol and then have the rpi emit the Ethernet broadcast packets from the physical network.

[–] [email protected] 6 points 1 year ago (1 children)

If I understand your post correctly, you have 2 PC’s at home: one running wireguard, and one you want to wake using WoL. This is similar to my setup, where I have a server and a personal desktop. When I want to wake my PC remotely, I just ssh to the server and use the server to wake the desktop. Connecting to the server and telling it to wake your PC seems easier than trying to redirect your phone’s WoL app over wireguard.

[–] [email protected] 2 points 1 year ago (3 children)

You understood correctly.

I have a RPi running Wireguard, and a PC.

How would you use the RPi to wake the PC ? What is your method ?

My RPi runs Debian and docker.

[–] [email protected] 4 points 1 year ago (1 children)

You can use the command ‘wakeonlan x’ where x is your MAC address of the pc you are trying to wake.

I use WireGuard on a pi and then use wakeonlan from my phone to start my pc.

[–] [email protected] 2 points 1 year ago

Awesome, thanks :)

[–] [email protected] 1 points 1 year ago (1 children)

I use the “wakeonlan” package. Simply install it, ssh to your server, and run “wakeonlan xx:xx:xx:xx:xx:xx”, where “xx:xx:xx:xx:xx:xx” is the Mac-adres of the PC you’re trying to wake.

[–] [email protected] 2 points 1 year ago

Thanks for your help :)

[–] [email protected] 4 points 1 year ago (1 children)

https://wiki.archlinux.org/title/Wake-on-LAN

You need the Mac address, but the easiest way is to ssh to your rpi and run wol there.

I don't know any wol apps for a phone, but I'm sure they exist.

[–] [email protected] 2 points 1 year ago

Thank you :)

[–] [email protected] 1 points 1 year ago* (last edited 1 year ago)

Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:

Fewer Letters More Letters
IP Internet Protocol
RPi Raspberry Pi brand of SBC
SBC Single-Board Computer
SSH Secure Shell for remote terminal access

[Thread #143 for this sub, first seen 17th Sep 2023, 17:45] [FAQ] [Full list] [Contact] [Source code]

[–] [email protected] -1 points 1 year ago

Can be done with simple port forwarding too