which softwares can I self host without public IP?
Greetings,
my current ISP refuses to provide me a static IP and they also blocks incoming connection to my ipv6 so I can't host services on just ipv6 too. I will be changing my ISP when the plan expires.
without public IP I can host my own IRC bouncer but I would like to know what else can I self host?
Thanks in advance!
As long as you're not behind CGNAT, you can use a dynamic DNS provider (like duckdns.org) and its web API to keep a record pointed at your IP. If you're behind CGNAT, Tailscale also has a service (Tailscale Funnel) that can expose an internal service to the internet.
You could also pay for a small VPS with a static IP, and set up a Wireguard tunnel to your home server and an HTTPS proxy to forward traffic through the tunnel.
@whoareu cloudflare tunnel can easily help you do that. the only limitation is your domain will need to be from cloudflare. It works well, I am hosting an instance without any public IP and without exposing any ports.
You actually want a cloudfare tunnel if youre going to do that. It protects your real IP. Hosting a fediverse instance will draw attention to your real IP eventually otherwise.
Put everything behind Tailscale or another VPN and use it that way from outside devices. There should be very little need to have a public IP, and if there's something that has to be exposed, use ngrok, cloudflared or Tailscale Funnel.
I just use a DDNS updater. That's honestly good enough for most purposes.
Alternatively, you could use a service like Zerotier, Tailscale or Netbird to create a virtual private LAN connection to a free Oracle VPS, then route the traffic from the VPN to your home network.
As someone in a similar situation I'd recommend using a free tier oracle vps with a wireguard tunnel to connect to you services. Effectively just using the vps as a proxy for your own network. Here's a guide that should work for your purposes https://github.com/mochman/Bypass_CGNAT
Literally anything you want. You don’t need a static IP, any dynamic IP with a software updater will work. For example, I have some public sites proxied through Cloudflare, and I use the DDNS updater for Docker that keeps my DNS correct.
I started using headscale (the opensource reimplementation of tailscale server) on a private vps.
It is incredibly better compared to plain wireguard. I regret waiting so much before switching.
Something that really made my life easier: wireguard is poor at roaming: switching to and from my wifi created issues because the server wasn't reachable anymore from its public ip and wireguard didn't bother to query the DNS again to check the new IP.
Also, configuration is dead simple because it takes care of iptables for you (especially good when you enables forwarding to a node).
Since the server just sends small messages for the control plane and all the traffic is p2p between the devices, the smallest vps with the smaller connectivity is more than enough to handle it.
If this is just for personal use, I'd see if you can put their router in modem mode and go get a better router, then I'd just use tail-scale or WireGuard.
I mean you can host anything. It's just not reachable from the outside. And Fediverse or anything that gets data pushed in, won't work. The common method to handle all of this is to use some tunnelling solution.
You can self host anything like this, all you need is buying a domain and set something up like DynDNS which updates the entry of the domain with your new IPv4 as soon as it changes.
I would recommend to not open your services to public, but set up a wireguard (or other VPN) endpoint in your home, which you then use to access all your services.
I think, an alternative to that would be some servicees from tailscale or cloudflare, I suppose
The best way would be to use a VPS to proxy your traffic to you. You can achieve this for pretty cheap, just set up an wireguard tunnel to a cheap VPS. That's exactly how I access all my services from outside my home. As long as the VPS has a publicly accessible IP (most of them do), you being behind CGNAT should not be an issue.
So then use dynamic dns? HurricaneElectric offers DynDNS now and it's great. You can update it right over curl if you want. I have it mapped to a cli function;
~\downloads
❯ ddns
HTTP/1.1 200 OK
Cache-Control: no-cache, must-revalidate
Content-Length: 18
Content-Type: text/html
Date: Tue, 25 Feb 2025 09:24:18 GMT
Email: DNS Administrator <dnsadmin@he.net>
Expires: Wed, 25 Feb 2026 09:24:18 GMT
Server: dns.he.net v0.0.1
nochg {ip}
Oh, damn. Not much you can do then. You may be eventually be able to get something outrageously complicated to work, but honestly it's just plain not worth it. Just get a cheap VPS.
Best you could do is a forward server with tailscale and a reverse_proxy, but I've never had any real luck getting that type of setup to work reliably.
They'll shut it down if you send more than a few megabytes down that tunnel. It's ok if you just need a connection (for ssh and stuff) but anything that generates a lot of traffic will be blocked.
I haven’t checked the ToS in a while but last I checked it was 50mb upload limit for the free tier and a loosely policed no video streaming. And they don’t shut you down if you send files larger than 50mb, the upload just fails. I served over 8 million requests through the free tier last month.
Use VPN or DDNS connected to your domain registrar. Of course DDNS might not update immediately, especially if your domain host is not the same as your DNS provider, so you might have outages for short periods when your IP changes. So, depends on if you're OK with that or what kind of connection you have and whether it changes your IP a lot.
Also, might be able to get an IPv6 address for free depending on your ISP or at least you can set up your router to request that your address block is retained for you. I know Comcast does this. Unfortunately, my ISP does not.
Because too often people are asking for a solution to the wrong problem. I can tell how to setup a car to drive from the Hawaii to Iceland, but odds are that is not your actual goal. (most often the correct answer is fly to iceland and rent a car, or perhaps just public transit in iceland. You can also put your car on a ship. It is possible to modify a car to drive on the ocean if that is really what you want to do)