A cross-platform tool to update DNS zonefiles (such as Gandi.net) when you have a dynamic public IP address.
It's a DynDNS or equivalent alternative, available for several OS and configured by command line parameters.
For developpers, it's written in Rust and can be easily extended to add new DNS providers or new ways to detect your public IP address.
[x] Detect your public IP address
Create or update your DNS provider zonefiles to associate to public IP address with an A or AAAA DNS record.
Run on several OS:
``` $ gdu --help
USAGE: gdu [FLAGS] [OPTIONS]
FLAGS: -n, --dry-run Dry run, don't really update Gandi zone file -f, --force Force new zonefile creation even if IP address isn't modified -h, --help Prints help information -V, --version Prints version information -v Verbose mode
OPTIONS:
-a, --apikey
```
GDU is available as a native package (rpm/deb) for your distribution through package.io. Go to package.io project page for installation instructions.
Then
sudo apt-get install generic-dns-update
You can configure GDU to check hourly if your IP address as been updated with cron.
Edit as root or sudo the file /etc/cron.hourly/gdu
, with the following content:
```bash
gdu -a YOURGANDIKEY -d YOURDOMAIN -r YOURRECORD -i opendns >> /var/log/gdu.log 2>&1
```