Route53 dynamic DNS daemon
January 21, 2018
golang aws-route53 dns

home-dns is a dynamic DNS daemon for AWS Route53.

Run as a daemon with internal crons, it fetches your public IP, then updates the selected records in a Route53 zone. This was a small project that I started to get familiar with the AWS SDK for Golang, and have been using ever since to keep my dynamic home DNS up to date.


home-dns is stable. The functionality is fairly limited and will probably not grow much, and so the config format is not likely to change.


The config file lists the IP source, which must be an HTTP endpoint that responds with your current IP in plain text, and the records to be updated:

source: "https://api.ipify.org?format=text"

- cron: "@hourly"
  name: home.example.com.
  ttl: 300
  zone: Z1ABCDEF123456
- cron: "@daily"
  name: office.example.com.
  ttl: 86400
  zone: Z1ABCDEF123456

Related Posts


command-line client for todoist
March 31, 2018
golang cli todoist