How to install Dynu DDNS client on Ubuntu 18.04.2 LTS

So I've been using No-IP as a Dynamic DNS provider for some time now,

It's an amazing service, they offer tonnes of features, and the Dynamic Update Client (DUC) just works (provided you're willing to pay. I was).

If I love No-IP's service so much though, why move?

Well for a start they don't offer a lot of support for Top Level Domains (TLD)

When I acquired networthy.co.uk , they just didn't support it, which honestly bummed me out.

But I persevered, and the next best option that a 5 minute Google search provided was Dynu DDNS.

Dynu seems like a decent option for my purposes, how much do you really want DDNS to do?

So, unlike it's No-IP counterpart, the DUC for Dynu is not as easy to set up on Ubuntu.

TLDR commands at the bottom

Lets get started

Firstly, lets download & install the client

URL='https://www.dynu.com/support/downloadfile/31';
FILE=`mktemp`;
wget "$URL" -qO $FILE && sudo dpkg -i $FILE; rm $FILE

Now, open up the configuration file

vi /etc/dynuiuc/dynuiuc.conf

Little explanation of the values

username YOURUSERNAME  # Your account username.
password YOURPASSWORD  # Your account password or IP update password. 
location LOCATIONNAME  # Can be left empty. Location name can be assigned to hostnames in the control panel.
ipv4 true              # Can be true or false.
ipv6 false             # Can be true or false.
pollinterval 300       # IP update interval in seconds. Minimum is 120.
debug false            # Can be true or false.
quiet true             # Can be true or false.

Now that it's installed and configured, the official guide on Dynu's website says just start up the service, but if like me, the service don't exist, and like me, your Linux skills are lacking, run this

Sudo systemctl enable dynuiuc.service

Bang, now we got a service. You can start it like you'd expect

Sudo systemctl start dynuiuc.service

But you're not entirely done.

Open the file

/usr/lib/systemd/system/dynuiuc.service

And change this:

--pid_file /var/run/dynuiuc.pid 

To this:

--pid_file /run/dynuiuc.pid 

Now go ahead, stop/start the service as necessary, and check out the logs for any errors with:

tail -f /var/log/dynuiuc.log

And you're done! Nice and easy

TLDR

URL='https://www.dynu.com/support/downloadfile/31'; FILE=`mktemp`; wget "$URL" -qO $FILE && sudo dpkg -i $FILE; rm $FILE
Sudo vi /etc/dynuiuc/dynuiuc.conf # Now modify the config
systemctl enable dynuiuc.service
systemctl start dynuiuc.service
Sudo vi /usr/lib/systemd/system/dynuiuc.service
	Change '--pid_file /var/run/dynuiuc.pid '
	To '--pid_file /run/dynuiuc.pid '
Sudo systemctl stop dynuiuc.service
Sudo systemctl start dynuiuc.service
Rory Maher

Rory Maher