gandi-live-dns-rust/Readme.md

24 lines
1.5 KiB
Markdown
Raw Normal View History

2022-01-23 15:12:27 -06:00
## gandi-live-dns-rust
A program that can set the IP addresses for configured DNS entries in [Gandi](https://gandi.net)'s domain configuration.
Thanks to Gandi's [LiveDNS API](https://api.gandi.net/docs/livedns/), this creates a dynamic DNS system.
Inspired by [cavebeat's similar tool](https://github.com/cavebeat/gandi-live-dns),
which seems to be unmaintained at the time I'm writing this. I decided to rewrite it in Rust as a learning project.
2022-01-23 21:35:29 -06:00
This tool can update both IPv4 and IPv6 addresses for one or more domains and subdomains.
It's a "one-shot" tool that's then orchestrated with a systemd timer or cron.
2022-01-23 15:12:27 -06:00
## Usage
2022-01-26 00:19:47 -06:00
- Create a file `gandi.toml`, then copy and paste the contents of [`example.toml`](https://raw.githubusercontent.com/SeriousBug/gandi-live-dns-rust/master/example.toml)
2022-01-23 21:35:29 -06:00
- Follow the instructions in the example config to get your API key and put it in the config
2022-01-26 00:19:47 -06:00
- Follow the examples in the config to set up the entries you want to update
- Download and extract the correct binary from the [releases page](https://github.com/SeriousBug/gandi-live-dns-rust/releases) and place it in your `PATH`, or just the current directory
- Run `gandi-rust-dns-updater` to update your DNS entries
2022-01-23 21:40:11 -06:00
> Warning!
>
> This tool does not rate limit itself, or otherwise do anything that limits how often it sends changes to Gandi's servers.
> It's up to you to use the tool properly and avoid abusing Gandi's servers. The tool is one-shot, so all you have to do is
> to avoid running it too often.