A simple alternative to DDCLIENT.
Go to file
DataHearth 29a4eeb0cb
continuous-integration/drone/push Build is passing Details
remove makefile and update readme
2023-03-02 18:56:57 +01:00
cmd add multi credentials support 2021-05-17 13:15:39 +02:00
pkg fix ipv6 support with port splitting 2023-01-31 20:16:41 +01:00
.dockerignore update ignoredocker and makefile 2021-05-17 19:11:01 +02:00
.drone.yml update secrets name 2023-02-10 17:54:56 +01:00
.gitignore add docker and makefile 2021-03-15 19:11:52 +01:00
Dockerfile add docker and makefile 2021-03-15 19:11:52 +01:00
LICENSE Create LICENSE 2021-05-18 22:33:19 +02:00
README.md remove makefile and update readme 2023-03-02 18:56:57 +01:00
ddnsclient.yaml.sample update sample configuration 2021-05-27 12:34:05 +02:00
go.mod rename module name 2021-03-14 16:02:04 +01:00
go.sum feat: add new provider and update config template (#2) 2021-03-19 22:26:16 +01:00
main.go add token based providers 2021-05-27 12:33:02 +02:00

README.md

DDNSClient

License Docker Build Status

How to install DDNS-CLIENT as dependency

Simply run the command go get gitea.antoine-langlois.net/DataHearth/ddnsclient

Run the client

You have 2 options to run the DDNS client.
You can run it as:

  • docker container:
docker run -v /path/to/config/ddnsclient.yaml:/ddnsclient.yaml --name ddnsclient datahearth/ddnsclient:latest

or with a custom config path:

docker run -e CONFIG_PATH=/path/inside/container/custom.yaml -v /path/to/config/ddnsclient.yaml:/path/inside/container/custom.yaml --name ddnsclient datahearth/ddnsclient:latest
  • binary executable:
git clone https://gitea.antoine-langlois.net/DataHearth/ddnsclient.git
cd ddnsclient
go build -o ddnsclient cmd/main.go
./ddnsclient

make sure the config is in the same directory with the name ddnsclient.yaml or set the CONFIG_PATH variable

Supported providers

Any provider using the standard for DDNS should be supported by default thanks to the generic configuration.
You just need to get your credentials (obviously) and the update URL.
If you face any kind of issue, feel free to open an issue and ping me in it. If necessary, a branch will be open to fix the problem.

Provider Configuration key Implemented Tested
OVH ovh YES YES
GOOGLE google YES YES
DuckDNS duckdns YES YES
No-IP noip YES NO
DynDNS dyndns YES NO
CloudFlare cloudflare NO NO

Note: For DDNS providers using basic authentication inside URL (e.g: https://{username}:{password}@ddns.something.com/...), remove the usernameand password part to get only the "classical" URL (e.g: https://ddns.something.com/...). Then fill the username and password fields in the provider configuration.

Contributing

You can contribute to the project by submitting an issue and resolve issues by creating PRs. I'll look at them and validate your changes if they're correct as soon as possible.

TO-DO

  • Add HRM to configuration file
  • Add more DDNS provider (see the table above)