Goodbye DuckDNS

I’ve finally managed to ditch the accursed DuckDNS.

For over a year now I’ve been terrorised by this inconsistent monster taking my whole externally facing homelab’s web services down.
It’s so common that if you search DuckDNS using Google, the THIRD result is a reddit post sharing their frustration. Searching DuckDNS down (as I did frequently to check if I’d made a mistake or it was down again) shows even more frustrated users complaining about it’s instability!

While setting up this blog it went down again and I absolutely lost it. So I set some time aside last week to ditch it.

It’s still a work in progress but I’ll jot down what I’ve got so far.

Originally I started looking into FreeDNS (afraid.org) and it was working for a while, but found trouble with requesting SSL certificates using Let’s Encrypt. Plus the provided domain were all kind of gross.

So I started digging into the all seeing eye, CloudFlare, where I think I fell in love. Forked out $11 for the domain I wanted and was able to swap over my infrastructure pretty smoothly.


  • Added an ‘A’ DNS record on CloudFlare, setting ‘Proxied’ to true.
    • A great feature I gained by switching is the ability to mask my public IP, greatly improving my overall opsec.
  • Setup my new domain in my DDNS-updater cause a static IP would be crazy expensive.
    • This was surprisingly annoying because of the obtuse way DDNS-updater describes it’s config fields and required I actually read the documentation (ugh).

  • Added the new host domain (‘t4t3.net’) in my Nginx Proxy Manager (NPM) pointing to the WordPress server internal port.

  • Requested a certificate using Let’s Encrypt via NPM.

It took a few minutes for my DDNS to push the changes to Cloudflare but eventually it resolved the homepage. My WordPress site however kept redirecting to the old hostname (floodchud.duckdns.org).
I managed to fix this by hardcoding it into the local wp-config.php file.

NOTE FROM THE FUTURE I’ve fixed this hardcoded nonsense as it was confusing some of the newfangled plugins I’ve been experimenting with. Required ensuring both domains were active so I wouldn’t get locked out during the changeover.

The final setup is in a diagram below (I love making diagrams).

 

Leave a Reply