https://github.com/leonidboykov/ddnsman
ddnsman watches your external IP and updates related DNS records
https://github.com/leonidboykov/ddnsman
Last synced: over 1 year ago
JSON representation
ddnsman watches your external IP and updates related DNS records
- Host: GitHub
- URL: https://github.com/leonidboykov/ddnsman
- Owner: leonidboykov
- License: mit
- Created: 2023-04-29T17:21:12.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2025-03-13T16:15:42.000Z (over 1 year ago)
- Last Synced: 2025-03-13T17:37:28.720Z (over 1 year ago)
- Language: Go
- Size: 62.5 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ddnsman
ddnsman (short for Dynamic DNS Manager) allows to set external IP as a DNS record for your DNS provider.
## Supported providers
ddnsman uses [`github.com/libdns`](https://github.com/libdns) to communicate with a list of various providers, i.e. if `libdns` allows to work with specific DNS provider you may use it with `ddnsman`.
## Settings
Here is an example:
``` jsonc
{
"interval": "5m", // See https://pkg.go.dev/time#ParseDuration.
"settings": [
{
"domain": "example.com", // Your domain.
"provider": {
"name": "someprovider", // Any provider supported by libdns.
"settings": {} // This data is passed directly to provider driver.
},
"records": [ // Any records you want to update.
"subdomain",
"*.wildcard",
]
}
],
"shoutrrr_notifications": [
{
"url": "...", // shoutrrr url.
"settings": {} // additional settings for shoutrrr (just a QoL feature, you may use params as well).
}
]
}
```
Proper docs are coming soon.