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 will need to Install from Source.

Please note that this version of the Linux DUC is in beta. Let’s go!

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:

If you are using Ubuntu or a Debian based OS on an AMD64 or Intel type CPU, you can use these instructions. Note, this will NOT work on a Raspberry Pi.

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:


Extract the file:

tar xf noip-duc_3.0.0-beta.6.tar.gz

Now install it.

cd /home/$USER/noip-duc_3.0.0-beta.6/binaries && apt install ./noip-duc_3.0.0-beta.6_amd64.deb

If you are root, you do not need to issue the sudo command, as seen in the screenshot below.


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.0.0-beta.6.tar.gz
cd noip-duc_3.0.0-beta.6

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

Groups Example:

noip-duc -u group:user -p password -g

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

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 check out our knowledge base or 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.