script for updating dns records on porkbun
Roff 62.4%
TypeScript 37.6%
3 1 0

Clone this repository

https://tangled.org/vt3e.cat/ddns-updater
git@tangled.org:vt3e.cat/ddns-updater

For self-hosted knots, clone URLs may differ based on your setup.

README.md

ddns#

script for updating dns records on porkbun.

i made this after trying another ddns project, it not working, me not wanting to attempt to diagnose the issue, and then deciding to make my own. it's a great reason.

installation#

clone the repository, and install dependencies with bun install.

you can run the script directly with bun, or build it to install it globally:

# run directly
bun run src/bin.ts --help

# build & install globally
bun run build
bun install -g .

# or you can compile to a single binary and get rid of bun
bun build src/bin.ts --outfile=ddns --compile

configuration#

you can configure the tool via command line flags, environment variables, or a json config file.

example config file (config.json):

{
  "apiKey": "...",
  "secretApiKey": "...",
  "domain": "..."
}

running#

you can run the tool with bun run src/bin.ts or ddns if installed globally.

you can view all available options with --help:

automating#

you'll likely want to run this periodically, this is not something supporting "natively" but you can use cron or systemd timers to achieve this.

license#

this project is licensed under the european union public license (eupl) v1.2. you can find the full license text either here or on the official eupl website, which also contains translations of the license in various languages.