Simple dnyndns-client based on nsupdate
Go to file
CSRBot 24e36c35a3
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
chore(deps): update git.cryptic.systems/volker.raschek/git docker tag to v1.4.0
2024-12-03 17:14:50 +00:00
pkg fix: add nosec flags 2022-03-11 11:14:38 +01:00
systemd fix: remove systemd service unit for container image 2022-03-11 10:24:04 +01:00
.dockerignore Initial Commit 2021-04-23 16:33:46 +02:00
.drone.yml chore(deps): update git.cryptic.systems/volker.raschek/git docker tag to v1.4.0 2024-12-03 17:14:50 +00:00
.editorconfig Initial Commit 2021-04-23 16:33:46 +02:00
.gitattributes Initial Commit 2021-04-23 16:33:46 +02:00
.gitignore Initial Commit 2021-04-23 16:33:46 +02:00
.golangci.yml fix(ci): renovate, golang-ci lint 2022-03-11 10:36:42 +01:00
go.mod chore(deps): update module github.com/vishvananda/netlink to v1.3.0 2024-09-06 22:10:50 +00:00
go.sum chore(deps): update module github.com/vishvananda/netlink to v1.3.0 2024-09-06 22:10:50 +00:00
LICENSE Initial Commit 2021-04-23 16:33:46 +02:00
main.go style: golangci lint 2022-03-11 10:51:55 +01:00
Makefile fix(Makefile): remove obsolete bin steps 2022-03-11 10:28:30 +01:00
README.md doc(README): drone badge 2022-03-11 11:51:31 +01:00
renovate.json fix(renovate): remove automerge options 2024-01-21 15:02:07 +01:00

dyndns-client

Build Status

dyndns-client is a Daemon to listen on interface notifications produced by the linux kernel of a client machine to update one or more DNS zones.

Usage

To start dyndns-client just run ./dyndns-client.

Configuration

The program is compiled as standalone binary without third party libraries. If no configuration file available under /etc/dyndns-client/config.json, than will be the burned in configuration used. If also no configuration be burned into the source code, that the client returned an error.

The example below describes a configuration to update RRecords triggerd by the interface br0 for the example.com zone. To update the zone is a TSIG-Key required.

{
  "interfaces": [
    "br0"
  ],
  "zones": {
    "example.com": {
      "dns-server": "10.6.231.5",
      "name": "example.com",
      "tsig-key": "my-key"
    }
  },
  "tsig-keys": {
    "my-key": {
      "algorithm": "hmac-sha512",
      "name":      "my-key",
      "secret":    "asdasdasdasdjkhjk38hcn38haoĆ¼2390dndaskdTTWA=="
    }
  }
}