An open API service indexing awesome lists of open source software.

https://github.com/ssube/home-dns

route53 dynamic dns
https://github.com/ssube/home-dns

aws-route53 dns dynamic-dns route53

Last synced: 18 days ago
JSON representation

route53 dynamic dns

Awesome Lists containing this project

README

        

# home-dns

Use [Route53](https://aws.amazon.com/route53/) for dynamic DNS.

Reads record name and zone from a YAML config and upserts on schedule.

## Usage

### Build

```shell
go get
go build
```

### Config

The config file should have a `source` endpoint and each record to be updated:

```yaml
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
```

### Run

Execute with the config file:

```shell
AWS_PROFILE="home-root" ./home-dns config.yml
```

## Disclaimer

I do not know Go very well at all, so this code may be quite bad.

## Features

- multiple zones and records
- update on cron schedule

### Roadmap

- cache the external address (on a schedule of its own?)
- interface selection for external check