Locally hosting an internet-connected server

https://news.ycombinator.com/rss Hits: 12
Summary

I'm lucky enough to have a weird niche ISP available to me, so I'm paying $35 a month for around 600MBit symmetric data. Unfortunately they don't offer static IP addresses to residential customers, and nor do they allow multiple IP addresses per connection, and I'm the sort of person who'd like to run a bunch of stuff myself, so I've been looking for ways to manage this.What I've ended up doing is renting a cheap VPS from a vendor that lets me add multiple IP addresses for minimal extra cost. The precise nature of the VPS isn't relevant - you just want a machine (it doesn't need much CPU, RAM, or storage) that has multiple world routeable IPv4 addresses associated with it and has no port blocks on incoming traffic. Ideally it's geographically local and peers with your ISP in order to reduce additional latency, but that's a nice to have rather than a requirement.By setting that up you now have multiple real-world IP addresses that people can get to. How do we get them to the machine in your house you want to be accessible? First we need a connection between that machine and your VPS, and the easiest approach here is Wireguard. We only need a point-to-point link, nothing routable, and none of the IP addresses involved need to have anything to do with any of the rest of your network. So, on your local machine you want something like:[Interface]PrivateKey = privkeyhereListenPort = 51820Address = localaddr/32[Peer]Endpoint = VPS:51820 PublicKey = pubkeyhere AllowedIPs = VPS/0And on your VPS, something like:[Interface]Address = vpswgaddr/32SaveConfig = trueListenPort = 51820PrivateKey = privkeyhere[Peer]PublicKey = pubkeyhereAllowedIPs = localaddr/32The addresses here are (other than the VPS address) arbitrary - but they do need to be consistent, otherwise Wireguard is going to be unhappy and your packets will not have a fun time. Bring that interface up with wg-quick and make sure the devices can ping each other. Hurrah! That's the easy bit.Now you want packets from the ...

First seen: 2025-06-18 06:17

Last seen: 2025-06-18 19:31