How to run no-ip's update client in non-daemon mode
Summary: Supply the -i flag with 0 as an argument. The client will update the DNS info with the automatically discovered IP number, and return.
No-ip has an update client for Linux that when run detaches itself from the terminal. It comes with a couple of shell scripts to install it as a daemon, none for Ubuntu however and the Debian one is described in the Readme file such:
"There is a startup script for Debian called debian.noip2.sh. It also has been supplied by another user and is rumored to fail in some situations."
So, I would prefer the update client to be controlled by cron. There is a mode for running the update client and have it immediately return after having done its update. In this mode, you need to supply the -i switch and supply it with an IP number, according to the readme. That kind of defeats the purpose of it finding the IP automatically for you.
However if you read the C source code of the update client you see this:
if (*IPaddress == 0) {
if (nat)
get_our_visible_IPaddr(IPaddress);
...which means that if you supply 0 as the IP address it will look up the address for you.
The readme file also states:
"If you are behind a firewall, you will need to allow port 8245 (TCP) through
in both directions."
This does not seem to be the case. It works fine in my tests behind a firewall, both from the command line and when used with cron, no ports opened for it.