Dynamischer Dns Anbieter ddnss.de
Ich habe mich für diesen Anbieter entschieden, da dieser Wildcard Domains unterstützt. Ein weiterer Vorteil es ist ein einheimischer Anbieter ist und an die deutschen Datenschutzbestimmungen gebunden ist.
ToDo's
ddupdate6.sh anlegen und den folgenden Inhalt reinkopieren
mittls ssh z.B. auf euren Raspi verbinden.
touch ddupdate6.sh
chmod +x ddupdate6.sh
nano ddupdate6.sh
unteren Inhalt reinkopieren
KEYAUTH und HOSTNAME mit den eigenen Werten befüllen
#!/bin/bash
KEYAUTH=""
HOSTNAME=""
WORKING_DIR="/home/pi"
LOG_FILE=/var/log/ddnss-update.log
#. /etc/ddnss/ddnss-update.rc
if [ -z "$FORCE_UPDATE" ];then
FORCE_UPDATE=21600
fi
function logmsg
{
echo "$CURRENT_DATE - $@" >> $LOG_FILE
}
CURRENT_DATE=`date +%Y-%m-%d\ %H:%M:%S`
IP6=`curl http://www.ddnss.de/meineip.php 2>/dev/null| grep -o '[0-9a-z]\{1,4\}\:[0-9a-z]\{1,4\}\:[0-9a-z]\{1,4\}\:[0-9a-z]\{1,4\}\:[0-9a-z]\{1,4\}\:[0-9a-z]\{1,4\}\:[0-9a-z]\{1,4\}\:[0-9a-z]\{1,4\}'`
IP=`curl http://217.79.184.12/meineip.php 2>/dev/null| grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}'`
UPDIP=`cat $WORKING_DIR/last.ip 2>/dev/null||echo -en ''`
UPDIP6=`cat $WORKING_DIR/last.ip6 2>/dev/null||echo -en ''`
#logmsg "Current IP=$UPDIP"
#logmsg "Current IP=$UPDIP6"
NOW=`date +%s`
LAST_UPDATE=`stat -c %Y $WORKING_DIR/last.ip`
NEXT_UPDATE=$(( $LAST_UPDATE + $FORCE_UPDATE ))
[ $NOW -lt $NEXT_UPDATE ]
UPDATE_NOW=$?
[ "$IP" == "$UPDIP" -a "$IP6" == "$UPDIP6" ]
IP_SAME=$?
if [ $IP_SAME == 0 -a $UPDATE_NOW == 0 ]; then
#logmsg "IP is the same - NO UPDATE"
echo "IP is the same - No Update"
else
logmsg "New IP: $IP / Old IP: $UPDIP - UPDATE!"
logmsg "New IP6: $IP6 / Old IP6: $UPDIP6 - UPDATE!"
echo $IP > $WORKING_DIR/last.ip
echo $IP6 > $WORKING_DIR/last.ip6
wget -q -O - 'https://www.ddnss.de/upd.php?key='$KEYAUTH'&host='$HOSTNAME'&ip='$IP'&ip6='$IP6'' #>> $LOG_FILE
echo "Update ... ($IP)"
echo "Update ... ($IP6)"
fi
Um das script automatiert auszuführen muss ein Cronjob angelegt werden
crontab -e
*/2 * * * * cd /home/pi && bash ddupdate6.sh