How to Install the Linux 3.x Dynamic Update Client (DUC)

Installing the Linux 3.x Dynamic Update Client (DUC) is easy! In this guide we will use Ubuntu, but most Debian based operating systems (Mint, Kali, Pop! OS, Deepin, etc.) will work with these instructions.

If you are using an ARM based device such as a Raspberry Pi, you can now use the APT package manager to easily install the No-IP DUC! Simply use the armhf deb file instead of the amd64 file.

You will need root user permissions to perform some of these functions, so use sudo when prompted. Please open the terminal.

Installing Using Package Manager:

We recommend using your built in package manager to install the program. This will download all dependencies and make sure it is installed correctly. The .deb file for installing on Debian based setups like Ubuntu is included within the tarball in the Binaries folder.

Download the Linux DUC:

wget --content-disposition

Extract the file:

tar xf noip-duc_3.1.1.tar.gz

Now install it.

cd /home/$USER/noip-duc_3.1.1/binaries && sudo apt install ./noip-duc_3.1.1_amd64.deb

If you are root, you do not need to issue the sudo command.

If you are on a Raspberry Pi or other ARM based device, use the armhf file in the binaries folder instead of the amd64 file.

sudo apt install ./noip-duc_3.1.0_arm64.deb

Once the command is complete, run noip-duc to start the program.

You will want to explore the various options, so run noip-duc –help to see the available commands.

Installing From Source:

You can also build the program from source, which should work on any Linux platform. To install the program from source, you will need Rust as a dependency. So make sure that is installed.

First, download the Linux DUC:


Extract the file, and move into the directory:

tar xf noip-duc_3.1.0.tar.gz
cd noip-duc_3.1.0

Install Rust using the Rust toolchain installer:

curl --proto '=https' --tlsv1.2 -sSf | sh

Type 1 > Default Installation when prompted.

Once Rust has installed:

cargo build --release

Two errors might arise here:
1) You might need to install build-essential, which is required to install certain packages. Find this in your package manager, like apt install build-essential

2) You might need to restart your shell. See the following warning from the Rust installer:

To get started you may need to restart your current shell.
This would reload your PATH environment variable to include
Cargo’s bin directory ($HOME/.cargo/bin).

To configure your current shell, run:
source “$HOME/.cargo/env”

Once that has completed, copy the application to your programs folder:

sudo cp target/release/noip-duc /usr/local/bin

Now you can run the No-IP DUC by issuing the noip-duc command!


noip-duc [OPTIONS] --username <USERNAME> --password <PASSWORD>


noip-duc -g -u username -p password

If you’re using DDNS Keys use, your DDNS Key Username, and your DDNS Key Password.

This will start the program and talk to our update servers. If your IP is different than the current IP on your hostname, it will update your IP. Default behavior is to check every 5 minutes.

If you’re trying to update a Group from the Linux DUC, please use one of the following commands instead:

Updating a Single Host:
noip-duc -u groupname:username -p grouppassword -g

Updating Multiple Hosts:
noip-duc -u groupname:username -p grouppassword -g,,,

If you’re using a DDNS Key, replace groupname:username with your DDNS Key Username, replace grouppassword with your DDNS Key Password and instead of listing your hostnames, use

There are a number of different features, run noip-duc –help and be sure to check out the INSTALL.MD and README.MD files within the directory to see our full documentation and help guide.

If everything went smoothly, noip-duc should be running in the background, ensuring you can always access your cameras or servers on the go!


To remove the Linux DUC, run the following command:

sudo rm /usr/local/bin/noip-duc

If you are still having trouble, feel free to reach out to our support team at

Please include a screenshot or copy of your terminal output so we can better assist you in troubleshooting.

Other Linux DUC Guides and Information

IPV6 Updates with the Linux DUC

Running the Linux DUC at Startup

Group Updates with the Linux DUC