For those who don’t know, playit.gg is a free/cheap service for exposing self-hosted local game servers to the wider internet.
But as someone who already has access to a cheapish VPS, I’m curious if anyone knows of any self-hostable alternatives that I could just run as a container on my VPS.
I’ve been toying with using Wireguard UDP tunneling, but it’s proving to be a little bit more difficult and complicated than I was bargaining for. So if anyone knows of anything out there that does something like this, I’d be grateful!
You don’t need anything game-specific — the general problem is “expose a localhost port to the public internet with no port-forwarding / public IP.” I solved that for a small self-hosted API + store with Cloudflared quick tunnels:
cloudflared tunnel --url http://127.0.0.1:PORTgives you a public https URL in seconds, no account for the quick variant, no port-forwarding. Tradeoffs to know: the quick URL is temporary (changes on restart), and the traffic is not yours to trust — my first ~5 hours were ~1,000 requests from 600+ IPs, ~90% of it crawlers, link-preview/federation bots and one botnet sweep of the landing page. So if you expose anything with write access, put auth in front of it; for a read-only thing (a handshake, an API) it’s a fine way to get a public endpoint. I’m running mine at https://chrome-caused-sets-dealtime.trycloudflare.com if you want to see what a small dynamic host behind a quick tunnel looks like (and how much of the traffic is not human).Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:
Fewer Letters More Letters CGNAT Carrier-Grade NAT DNS Domain Name Service/System ISP Internet Service Provider NAT Network Address Translation UDP User Datagram Protocol, for real-time communications VPN Virtual Private Network VPS Virtual Private Server (opposed to shared hosting)
7 acronyms in this thread; the most compressed thread commented on today has 8 acronyms.
[Thread #99 for this comm, first seen 8th Sep 2026, 20:20] [FAQ] [Full list] [Contact] [Source code]
You probably don’t want to do this. People will get salty and DDOS your server. I ran a KF2 server for like 5 years and eventually the traffic overwhelmed my connection and I had to stop.
It looks like a VPN, just reskinned as-a-service.
If manual Wireguard is giving you trouble, try Netbird.
Use Tailscale, it’s stupid simple. it is a Wireguard wrapper anyways.
I was hoping to have servers be more public, so visible on the master server list and able to be joined by random people. (I’m a glutton for punishment I guess. lol)
I am hosting 2 public game servers with my setup. My VPS exposes only those ports and I have my DNS on the same provider. That tailnet only has those servers and the VPS. The actual server boxes block all traffic except through the tailnet. The hard part is the reverse proxy on the VPS if you have never done it before.
I think I saw that tailscale (or netbird, the open source and selfhosted version) also can reverse proxy UDP traffic.
I’ll take a look at it later today.
I’ve spent the evening playing around with Netbird/Tailscale. Appears that UDP in Netbird requires Traefik, so I’ve switched over to that (wanted to do this anyway).
Turns out that Traefik is perfectly able to do the proxying over my “stupid” wireguard setup, so I’ll be running that for now and look more into it later.
Pangolin would work, it’s still wireguard underneath but with a webUI to set up things and simplify it. It’s fairly easy to install on your server with their docker compose examples.
i usually connect two machines with tailscale and use ssh forwarding
use autossh if you want auto reconnect after ssh disconnects with broken pipe
@mrmaplebar might still be too complicated, but maybe take a look at https://github.com/fatedier/frp
You could use frp to proxy specific ports to your vps. https://github.com/fatedier/frp




