Protože já jsem jedinečný blbec a zápis příšerně nedopečený a m″rliv kódu, Jsem byl schopen opustit bez přístupu k hostování můj stroj celou noc. Problém se ukázalo být retardovaný triviální, ale všechny myšlenky o čas.

#!/bin/bash -x
wget http://checkip.dyndns.org/ -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" != "" ]
then
 sed -i "s/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/$IPADDR/" /etc/bind/neo2shyalien.eu
 /etc/init.d/bind9 restart
 echo "server localhost" > /tmp/nsupdate
 echo "zone neo2shyalien.eu" >> /tmp/nsupdate
 echo "update delete ns.neo2shyalien.eu. A" >> /tmp/nsupdate
 echo "update delete ns.neo2shyalien.eu. CNAME" >> /tmp/nsupdate
 echo "update add ns.neo2shyalien.eu. 38400 A $IPADDR" >> /tmp/nsupdate
 echo "update add *.neo2shyalien.eu. 38400 CNAME ns.neo2shyalien.eu." >> /tmp/nsupdate
 echo "show" >> /tmp/nsupdate
 echo "send" >> /tmp/nsupdate
 echo "" >> /tmp/nsupdate
 /usr/bin/nsupdate -k /etc/Kns.neo2shyalien.eu.+157+59417.private -d /tmp/nsupdate
 mv /tmp/ipaddr /tmp/ipaddr_old
fi

Toto je upravený skript, který nedovolí chybu. Po trochu budu vysvětlovat, kde byla část problemata teď vysvětlovat, co je skript. Alespoň já jsem dynamickou veřejnou ip. Jsem vyslán výše uvedený skript zkontrolovat pro změnu své adresy, pokud se změní na změnit nastavení počítače a odešle informace o doméně, To je změna. Obecně triviální skript, ale to bylo hrozně retardovaný pass. V části, kde je kontrolována pro změnu adresy

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

Předtím, než to bylo

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

Liptovem následující řádek samotný dostane 2 IP adresy a srovnává je, pokud mají stejné heslo, pokud se liší, to jen. V předchozí verzi z nějakého důvodu skript se minul velmi důležité chybou bylo rozhodnuto, že mám IP = “” (нищо) и пренаписало конфигурацията на bind-а ми с празно поле и при следващата смяна вече не може да пренапише правилно конфигурацията което води липса на връзка с nameservr-a. Малоумно нали 😉