DynDNS mit BIND

  • Key erzeugen
# dnssec-keygen -a HMAC-MD5 -b 512 -n USER home.domain.de
  • Key in  /etc/bind/named.conf.local hinzufügen
key home.domain.de. {
	algorithm HMAC-MD5;
	secret "Das secret aus dem .key file kommt hier rein";
};
  • Zonen definition anpassen
zone  "domain.de" {
        type master;
        file  "domain.de";
        allow-update {
                key home.domain.de.;
        };
};
  • Update starten
nsupdate -k Khome.leppa.de.+157+36137.private server bind.home.leppa.de zone home.leppa.de update delete login A update add login 60 A 127.0.0.1 send
  • Update Skript
#!/bin/bash

ip_old=`host dione.home.leppa.de psj-world.de | awk '/^dione/ {print $4} '`
wget http://www.heise.de/netze/tools/meine-ip-adresse/ -O /tmp/myip.html
ip=`gawk '/arget_object/ {print $3}' /tmp/myip.html  | gawk -F= '{print $4}' | gawk -F\" '{print $1}'`

rm /tmp/myip.html

if [ "c${ip}" == "c${ip_old}" ]
then
echo "Keine Aenderung bei der IP-Adresse ${ip}"
exit 0
fi

echo "Aendere ${ip_old} nach ${ip}"
nsupdate -k /root/Khome.leppa.de.+157+58516.key << EOF
server psj-world.de
zone home.leppa.de
update delete dione.home.leppa.de A
update add dione.home.leppa.de 1200 A ${ip}
update delete login.home.leppa.de A
update add login.home.leppa.de 1200 A ${ip}
show
send
EOF