Client that automatically updates name.com DNS records.
Since name-dyndns has no external dependencies, you can get it simply by:
go get github.com/zjstraus/name-dyndns
In order to use name-dyndns, you must have an API key from name.com, which can be requested from https://www.name.com/reseller/apply.
Once you have your API key, all you must do is setup config.json
. An example
config.json
file can be found in api/config_test.json
.
name-dyndns will run in an infinite loop, constantly making updates. Configuration is loaded from environment variables.
By default all logging is printed to stdout, but a log file can be configured wih the -log
commandline parameter.
- NAME_DEV_MODE - TRUE to run against the name.com dev server
- NAME_HOSTNAMES - Comma seperated list of hostnames to update
- NAME_DOMAIN - Base domain name
- NAME_INTERVAL - Interval (seconds) between updates
- NAME_TOKEN - Name.com API token
- NAME_USER - Name.com API username
Currently, there is limited testing, primarily on name-api dependant utilities. While error handling should be done gracefully, not every edge case has been tested.
Ideally, when running in daemon mode, name-dyndns tries to treat any errors arising from network as transient failures, and tries again next iteration. The idea behind this is that a single network failure shouldn't kill the daemon, which could then potentially result in having the DNS records out of sync, which would defeat the whole point of name-dyndns.