Any docker recommendations for a utility that can update DNS, based on current external IP?
I’ve used ddclient in the past, but it seems like its not working anymore, oddly.
What DNS provider does it need to support?
Personally I’d just whip up a quick shell script or use something like Python, it’s probably like 20 lines of code to make the necessary API request and you have much more freedom than some fixed software and fixed features.
The main required feature that complicates things a bit is rate limiting since a lot of providers do not appreciate getting lots of update requests to the same IP in a short period of time if you e.g. reboot repeatedly but also will eventually delete names that are never updated.
Ideally you’d check the public ip against the dns resolved ip (without cache) before launching an update and have a timeout (let’s say 30s) after.
Actually, right after posting this, I got it to work. It looks like ddclient queries checkip.dyndns.org for IP, and by default using SSL/443. HTTPS isn’t working on checkip.dyndns.org at the moment, so queries were failing. I disabled SSL and it started to work.
I’m using Google Domains. Good suggestion on the API approach though, I’ll consider that for next time it breaks on me.
Relevant example, with afraid.org you can do it with a wget or curl command.
Inadyn has packages for most unix systems and also a docker package.