Update Linode DNS records with your local IPv4 and IPv6 addresses.
Name | Description |
---|---|
IPV4_ADDRESS | IPv4 address to use in the A record |
IPV4_DISABLE | Disable IPv4 updates. |
IPV4_URL | The URL which returns your local IPv4 address (default https://ipv4.icanhazip.com/ ) |
IPV6_ADDRESS | IPv6 address to use in the A record |
IPV6_DISABLE | Disable IPv6 updates. |
IPV6_URL | The URL which returns your local IPv6 address (default https://ipv6.icanhazip.com/ ) |
LINODE_ACCESS_TOKEN | Your Linode API access token. |
LINODE_DNS_DOMAIN | The domain the host is a part of. |
LINODE_DNS_HOSTNAME | The host record to update. set to empty string for the base domain, * for wildcard subdomains (default is empty) |
LINODE_DNS_TTL | Record TTL in seconds (default 300) |
UPDATE_INTERVAL | Run continuously and update the DNS record every UPDATE_INTERVAL -seconds (default disabled) |
This example will update the IPv4 address for the wildcard subdomain every 5 minutes.
docker run \
-e IPV6_DISABLE=true \
-e LINODE_ACCESS_TOKEN="$LINODE_ACCESS_TOKEN" \
-e LINODE_DNS_DOMAIN=yourdomain.com \
-e LINODE_DNS_HOSTNAME='*' \
-e UPDATE_INTERVAL=300 \
nvllsvm/linode-dynamic-dns
Example files for a systemd service and timer are in the systemd
directory.
- Copy the
.service
and.timer
files into/etc/systemd/system
and the.conf
into/etc
. - Edit the config file as required.
- Run the following to enable the service:
systemctl daemon-reload
systemctl enable linode-dynamic-dns.timer
systemctl start linode-dynamic-dns.timer
systemctl start linode-dynamic-dns.service