this post was submitted on 30 Jun 2023
2 points (66.7% liked)

Selfhosted

40152 readers
465 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

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.

top 6 comments
sorted by: hot top controversial new old
[–] [email protected] 5 points 1 year ago (3 children)

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.

[–] [email protected] 1 points 1 year ago

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.

[–] [email protected] 1 points 1 year ago (1 children)

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.

[–] [email protected] 1 points 1 year ago

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.

[–] [email protected] 1 points 1 year ago

Relevant example, with afraid.org you can do it with a wget or curl command.

[–] [email protected] 2 points 1 year ago

Inadyn has packages for most unix systems and also a docker package.