home-dns

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.

Status

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.

Example

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"

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

Related Posts

togo

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