ff903413eb39abc7b61e28210496782ff1d4bab3
DDNS
This application enables automatically updating DNS records for various providers.
Features
- Automatically detect the current IP.
- Both IPv4 and IPv6 are supported.
- IP resolution depends on the selected service.
- ipify (default)
- Update DNS records in the selected provider.
- Porkbun
- Native (Linux)
Build
Execute ./gradlew assemble.
The resulting binary will be located in ./build/bin/releaseExecutable/.
Removing the extension from the binary and adding it to /usr/local/bin/ enables the use of ddns in the terminal.
Usage
The following command updates all A and AAAA DNS records in Porkbun for example.com and test.example.com.
ddns porkbun \
--key=... \
--secret-key=... \
--domain=example.com \
--subdomain= \
--subdomain=test
Optionally, a file can be used to declare one or more configurations.
The above example can be declared as follows.
porkbun
key=...
secret-key=...
domain=example.com
subdomain=
subdomain=test
To use this config file, execute the command ddns --config=....
By default, the config file is /etc/ddns.conf.
This process can be automated using systemd or cron.
Languages
Rust
100%