Because I'm unique jerk and write horribly half-baked and m″rliv code, I was able to leave without access to hosting my machine all night. The problem turned out to be retarded trivial but any thoughts of a time.

#!/bin/bash -x
wget -O /tmp/ipaddr
IPADDR=$(cat /tmp/ipaddr | grep -Eo '\<[[:digit:]]{1,3}(\.[[:digit:]]{1,3}){3}\>')
IPADDROLD=$(cat /tmp/ipaddr_old | grep -Eo '\<[[:digit:]]{1,3}(\.[[:digit:]]{1,3}){3}\>')

if [ "$IPADDR" != "$IPADDROLD"  -a "$IPADDR" != "" ]
 sed -i "s/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/$IPADDR/" /etc/bind/
 /etc/init.d/bind9 restart
 echo "server localhost" > /tmp/nsupdate
 echo "zone" >> /tmp/nsupdate
 echo "update delete A" >> /tmp/nsupdate
 echo "update delete CNAME" >> /tmp/nsupdate
 echo "update add 38400 A $IPADDR" >> /tmp/nsupdate
 echo "update add * 38400 CNAME" >> /tmp/nsupdate
 echo "show" >> /tmp/nsupdate
 echo "send" >> /tmp/nsupdate
 echo "" >> /tmp/nsupdate
 /usr/bin/nsupdate -k /etc/ -d /tmp/nsupdate
 mv /tmp/ipaddr /tmp/ipaddr_old

This is a revised script that will not allow the error. After a bit I will explain where she was part problemata now to explain what makes the script. At least I'm a dynamic public ip. I posted the above script to check for a change in my address if you change to change the settings of the machine and sends the information for my domain, that there is a change. Generally trivial script but it was made a terribly retarded pass. In the part where it is checked for change of address

if [ "$IPADDR" != "$IPADDROLD"  -a "$IPADDR" != "" ]

Before it was

if [ "$IPADDR" != "$IPADDROLD"]

So does the following line itself gets 2 IP address and compares them if they have the same pass if they are different, it only. In the previous version I had missed a very important mistake for some reason the script it was decided that I have IP = “” (нищо) и пренаписало конфигурацията на bind-а ми с празно поле и при следващата смяна вече не може да пренапише правилно конфигурацията което води липса на връзка с nameservr-a. Малоумно нали 😉