add README
This commit is contained in:
50
README.md
Normal file
50
README.md
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
# 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.
|
||||||
Reference in New Issue
Block a user