Running a ddclient DDNS service in a TrueNAS Jail

A Dynamic Domain Name System allows you to dynamically update a domain’s resolution whenever your IP address changes. This was absolutely necessary for my home server since I did not want to shell out big money for my ISP to assign me a fixed IP.

A solution for keeping my domain updated to my home server’s IP was running the ddclient service.

ddclient installation and configuration

pkg install ddclient
vi /usr/local/etc/ddclient.conf
DDClient configuration file

I uncommented the configuration for Cloudflare since that is where I bought this domain.

Input the root domain in zone, the CloudFlare login email for login, and the Global API Key for the password. Finally list all subdomains to update.

An example configuration

Add and start service

Use the sysrc command to add ddclient to the daemons list.

sysrc ddclient_enable="YES"

Also directly start the service manually.

service ddclient start

Run ddclient in debug mode to check if all domains are being updated.

ddclient -daemon=0 -debug -verbose -noquiet

Installation is complete if you see SUCCESS: example.com Updated Successfully for all of your subdomains.