ddclient: add Hetzner DNS provider#5082
Conversation
Add native support for Hetzner Cloud DNS API (api.hetzner.cloud). Hetzner is migrating from dns.hetzner.com to Cloud Console, with the old API shutting down in May 2026. Features: - Bearer token authentication - A and AAAA record support - Multiple hostnames (comma-separated) - Configurable TTL
|
Is it intended to not update the pre-existing record after reboot? I've noticed that it creates a new record just fine but after a reboot the record is not updated. Here are my steps to reproduce:
Logs: After reboot: I have also checked the Hetzner account logs that shows a single successful " zone.rrset.update " activity after reboot but the RRSET is not updated at all and suck with the old IP. The log sadly does only state where the requests came from and not what has been tried to set. |
|
Hey, checkout his new script in his PR: There's already a workaround. Hetzner replies with code 200 to the PUT method but doesn't change anything. The new script is working fine for me. Maybe the script could be updated for ddclient - outside of his hetzner plugin, which maybe need some more time. I personally subcripted #5091. |
|
@realizelol I did not see that it was already known. I've scripted it myself now with Monit and a custom script. I'll be watching for a fix to the native plugin or the ddclient. Thanks! |
Add Hetzner DNS providers for ddclient
Summary
Adds native support for Hetzner DNS with both APIs:
api.hetzner.cloud) for migrated zonesdns.hetzner.com) for zones not yet migratedHetzner is migrating their DNS service from DNS Console to Cloud Console. The old API will be shut down in May 2026.
Features
Important: Backend Setting
Users must set the DynDNS backend to
nativefor these providers to work:nativeThe native backend dynamically loads Python-based providers, while the ddclient backend only supports services defined in ddclient itself.
Configuration
Hetzner DNS (new Cloud API)
example.com)dyn.example.com)Get your token at Hetzner Cloud Console → Project → Security → API Tokens (Read & Write).
Hetzner DNS Legacy (old API - deprecated)
example.com)dyn.example.com)Get your token at dns.hetzner.com.
Migration Path
Users with zones still on the old DNS Console should:
Testing
Tested with:
References