Hello,

with the below script, you can update NoIp, DynDNS, dyn.ee and ipactive without any client! The advantage of that is, that you can update your DNS entry at any time you want. Client programs in most case are limited: You can only update after X minutes. But you can not update the DNS directly after you WAN connection is established.

Here is the script:
Code:
#!/bin/sh
###################################
# Content of /opt/bin/IPupdate.sh #
###################################

# Logfile parameter
# LOG=1/0 (On/Off)
# LOG=pathname to the logfile
LOG=1
LOGFILE=/opt/logs/IPupdate.log

# provider url's
# DynDNS
#URL="http://$1:$2@members.dyndns.org/nic/update?hostname=$3"
# NoIP
URL="http://dynupdate.no-ip.com/dns?username=$1&password=$2&hostname=$3"
# dyn.ee
#URL="http://dynserv.ca/dyn/dynengine.cgi?name=$1&pass=$2&func=set&domain=$3"
# ipactive
#URL="http://logon.ipactive.de/cgi-bin/logon_off.pl?V=2.1&B=$1&P=$2&IP=$3&F=1"


echo ""
if [ $# != 3 ] ; then
  echo "IPUpdate script"
  echo "usage: $0 <LOGIN-NAME> <PASSWORD> <HOSTNAME/DOMAIN/IPADR>"
  exit
fi

if [ $LOG == 1 ] ; then echo "$(date) Starting DNS entry update for $3 ..." >> $LOGFILE; fi
echo "Starting DNS entry update for $3 ..."

# Update Host entry
RESULT=`wget -O - $URL | cat`
if [ "$RESULT" == "" ] ; then RESULT=Error; fi
if [ $LOG == 1 ] ; then echo "$(date) DNS entry update result for $3: $RESULT" >> $LOGFILE; fi
echo "DNS entry update result for $3: $RESULT"
call this script via:
Code:
/opt/bin/IPupdate.sh <YourLogin> <YourPassword> <YourHostname>
If you want to update the DNS directly after your PPPoE connection is raised up, you can place the above call at the end of your /usr/local/sbin/post-firewall. (Thanks to al37919 for this tip)

To update DnyDNS or an other DNS service (supply with the script), you must remove / insert the # in front of the related
Code:
URL=
Additional you can install cron and start the script with the above call every X minutes.

Have fun!