Self hosting on IPV6 only VPS

I am looking to migrate my owncloud to nextcloud on another VPS as well as add additional services. Scaleway offers small VPS servers from around 50 cents (yes, that’s around 0.5€) per month but the catch is that a public ipv4 is about 2€ more. This adds up quickly as with such limited VPS you would need several to host multiple services. Nextcloud and Wordpress would certainly require separate instances as memory usage of nextcloud alone is close to 1GB.

Here are some issues I came across so far in testing this setup so far:

  1. I cannot connect to ipv6 from my home network. Maybe its possible to config but the ISP router is really bad and it would not surprise me if it just cannot work. It seems like ipv6 is enabled i nteh router but pfsense cannot ping. WORKAROUND: connect from another VPS. Not ideal but good enough.

  2. Cannot pull docker containers as docker domains do not support ipv6. WORKAROUND: assign ipv4 during setup, configure DNS and then detach the ipv4.

  3. ipv6 is not static, it changes after reboot.

Issue no 3 is where I am stuck right now. Does anyone know if it is possible and practical to configure a static ipv6 on the host? Perhaps some sort of DDNS with Cloudflare might work? Kind of seems like it may not be that reliable so any general advice on the best solution overall would be appreciated.

Is it self hosting if you’re using another person’s cloud? I guess it is…

You don’t really need Cloudflare for DDNS, most DNS hosting providers support some kind of DDNS update scheme. Although, I guess there’s value in using Cloudflare in that you can use them to somehow proxy IPv4 traffic / requests to your IPv6 server for some use cases, for free.

(e.g. if you put a docker registry onto your server, and have it accessible via Cloudflare, you could then push images to it that you can then pull into docker on the server).


… Also, you could try Tailscale to let you have a fully connected dual stack VPN for administrative purposes (they have dual stack relays they call DERP). Once you have this, you can designate some hosts as exit nodes or subnet routers). You could configure docker on your server to go through a proxy in your home when it needs to pull images from docker hub.


Who’s your ISP?
(It might be better use of time/forum resources to spend a bit of effort to try getting dual stack working.)

Hosting some critical services like cloud on a local home server is just not practical or reliable enough. Not to mention that there would still need to be remote backup. Anything non critical is already running on my local server.

I like cloudflare as I can move VPS hosts and not have to also move my DNS settings. Other features too of course…

I switch ISPs pretty frequently as they jack up the prices after contract. The routers provided as really crappy so I am not sure if its the router or the ISP. Either way ipv6 support at home is not critical as I can work around this.

The biggest issue now is that the ipv6 is not static, not sure if there is a reliable workaround for this. I may just have to get the ipv4 for a couple of servers and be done with it.

Where/How did you find the 0.5/mo scaleway service?

Their cheapest I can find is Stardust for 2.5/mo which has an IPv4 ?


No service reliability will exceed that of its budget, and that’s ok - me, late 2021


The biggest issue now is that the ipv6 is not static.

For actual serving, any DDNS works fine in general. From a client perspective (e.g. browsers and such) it’s no different than static DNS.

Most DDNS providers will generate a crontab oneliner for you that curls their https API, and you can set it to run every minute, and update an A record with a 1 minute TTL.

This gives you at most 2 minutes of downtime when your serving ipv6 changes. (your ip changes, cron runs at T=1min, TTL expires at T=2min).

If your IPv6 changes only when your server restarts - it’d probably take 10-60s for your service to start up anyway, … so you could probably run this curl script in your dhcp hook or whatever you use.

If you had a permanently running shell script that pipes ip monitor address ... | awk or something like that maybe you could get this down to 1 minute more consistently.

Short 60s TTLs like this work in general, because large websites like short TTLs because they use DNS for load balancing. (as we keep relearning and most recently with the facebook outage).

I’ve been told that less than 60s/1min TTLs generally don’t work and some ISP DNS resolvers default to a minimum 5min TTL because that was the default in some ancient bind version that was copied over to a bunch of other software and ended up sticking in a few places.

It’s the stardust instance which is out of stock again. If you remove ipv4 during order you get the 50 cent server. Actually I think it may be only 37 cents but that’s without VAT I believe.

I was using dev instance from Scaleway for 4+ years with maybe a couple of hours of downtime a year at most. These servers are pretty slow but for non-production or self hosting apps that is not an issue.

I am thinking its probably worth paying a few euros for ipv4 to avoid having to setup and maintain DDNS scripts and also be able to manage it easily.

1 Like