Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Mail Systems
Eclipse Documentation

How To Guides
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Problem Solutions




A Dynamic DNS service is provided by No-IP. After signing up for the free service, perhaps with a hostname of, you can install no-ip.

Previous to the no-ip package becoming available in Debian you would download the noip2 client that you run on your local machine. The following refers to this approach for running no-ip.

With appropraite setup this can run as a daemon and will forward your IP address to the DNS server to update your symbolic name for your host. The client can also automatically identify if your host is sitting behind a router and will do the right thing, by getting the IP address stored in the router (rather than the IP address of your host which is probably something like

To get the client:

  $ wget
  $ tar zxvf noip-duc-linux.tar.gz
  $ cd noip-2.1.1/
  $ make

To test things as a normal user, create a local configuration:

  $ ./noip2 -c CONFIG -C

Then you can manually update the server with:

  $ ./noip2 -c CONFIG -i <ipaddress>

Then try it out:

  $ ping

It should get your IP address.

Then you can set it up as a daemon as root, using the supplied Debian script to stop and start the daemon. As root, compile thge client as above, then do an install:

  # make install

You will be asked to supply your No-IP username (the email address you supplied on signing up) and password. The default update interval is 30 minute, but you can change it if you like. The configuration file will be /usr/local/etc/no-ip2.conf

You can now simply run noip2 as root and, as a daemon, it will update the server. With option -S all currently running daemons will be listed. To kill one of the daemons use the -K option.

To run the daemon automatically when the machine is booted place the following script into /etc/init.d/noip2:

#! /bin/sh
# /etc/init.d/noip2

# Supplied by
# Modified for Debian GNU/Linux by Eivind L. Rygge <[email protected]>

# . /etc/rc.d/init.d/functions  # uncomment/modify for your killproc


test -x $DAEMON || exit 0

case "$1" in
    echo -n "Starting dynamic address update: "
    start-stop-daemon --start --pidfile /var/run/ \
        --make-pidfile --exec $DAEMON
    echo "noip2." 
    echo -n "Shutting down dynamic address update:"
    start-stop-daemon --stop --pidfile /var/run/ \
        --oknodo --retry 30 --exec $DAEMON
    echo "noip2." 

    echo -n "Restarting dynamic address update: "
    start-stop-daemon --stop --pidfile /var/run/ \
                            --oknodo --retry 30 --exec $DAEMON
    start-stop-daemon --start --pidfile /var/run/ \
                            --exec $DAEMON
    echo "noip2." 

    echo "Usage: $0 {start|stop|restart}"
    exit 1
exit 0

Make sure it is executable:

  # chmod a+rx /etc/init.d/noip2

Now you can start the daemon and check that it is running:

  $ wajig start 
  $ noip2 -S
  1 noip2 process active. 

  Process 7065, started as noip2
  Using configuration from /usr/local/etc/no-ip2.conf
  Last IP Address set
  Account [email protected]
  configured for:
          group ktware
  Updating every 30 minutes via /dev/eth0 with NAT enabled.

To have the daemon start and stop at boot and shutdown time create the following symbolic links:

  # cd /etc/rc2.d
  # ln -s ../init.d/noip2 S95noip2
  # cd /etc/rc0.d
  # ln -s ../init.d/noip2 K05noip2

Copyright © 1995-2006 [email protected]

  Published under the terms fo the GNU General Public License Design by Interspire