Hetzner DDNS using the hetzner.cloud API

I have been using Hetzer DDNS https://openwrt.org/docs/guide-user/services/ddns/client with a non-standard DDNS Script in my Openwrt on a few different pieces of hardware for ages however I am aware of two things:

  1. The Hetzner DNS API is being retired and migrated to the main Hetzner cloud API
  2. There appears to be some work done/happening (including by the nice people obbardc and feckert to add hertzner cloud api support into DDNS packages.

I am a Business Analyst rather than a developer and have (for my sins ) stayed away from the code end of git so I’m a bit useless with understanding whats going on. ( I need to learn so please feel free to teach me or tell me what I should already know)

I have OpenWRT running on a number of ‘production’ instances that are on around 24.6 and I am currrently working up a test harness based on 25.05 that I want to check that I can run everything I currently use but also improve my understanding routing with PBR and also VLANs.

I would like to use this opportunity to migrate to the the hetzner cloud API. I’ve tried various versions of Openwrt from about 24.5 some of which have included hetzner.cloud as an option in the Luci DDNS UI but when I have tried to run them they have complained I am missing a package for it but I can’t find one in the package list that OpenWRT downloads. Other versions (including 25.5) seem to have the option removed.

I’m trying to understand what version I could or will be able to use that would have Hertner cloud as a DDNS option in luci and the required additional packages to actually configure it to run.

I think the issue is my lack of understanding of how to find this information out (I hope I don’t come off as lazy but just feel a bit at sea with how to understand the flow from git to downloadable sysupdate files from the firmware selector.

Please feel to point out the things I should know in trying to figure this out. I am happy to be put right.

I don't use any of this OpenWrt provided ddns scripts (just using my own) nor do I use hetzner for this. But a quick look into this:

curl -u update:yourSecret \
  "https://your-ddns-host.example.com/nic/update?hostname=myhost.example.com&myip=$(curl -s ifconfig.me)"

and a cron job should do it (if on the server side is setup correctly). I don't know if this is updated/integrated within the OpenWrt in any way.

Yeah .. I do currently have DDNS working with Hetzner. It was more that I see that a standard configuration is in development - https://github.com/openwrt/packages/commit/5ee205bd31b7ec09521b2c0d3d6d535da040fc9e and would like to align.

Hi,
Your post was the reason I switched to the new API yesterday. I'm using version 25.12.1. To ensure the DNS update worked, I also had to install the package "ddns-scripts-hetzner-cloud". Now, when I select "hetzner.cloud" as the "DDNS Service Provider," it works. In the "Username" field, you need to enter the subdomain, and in the "Password" field, enter the API token.

Hope that helps...

2 Likes

Haha yeah. Thanks to the people that did the work to get it going.

Mhm, i am still on 24.10.6. And can not find this package. Is it 25.12.x exlusive or will it come to 24.x?

At the moment i refuse to update, since some interfaces on my hardware where renamed and updating to 25.x could be risky, or at least would need some effort