Cxar Mi estas unika ektiro kaj skribi terure marliv kaj duone bakita kodo, Mi lasas sen aliro al la maŝino retprovizanton min por la tuta nokto. La problemo rezultis esti imbecile banalaj sed neniu pensoj de tempo.

#!/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

Tio nun korektis skripto kiu ne eraras. Mi klarigos kie estis la problemo parto nun klarigi kion faras la skripton. Almenaŭ mi havas dinamikan publika ip. Mi metis la supran skripton por kontroli ŝanĝo en mia adreson se ŝanĝita por ŝanĝi la maŝino agordojn kaj sendas informon por mia regado, ŝanĝo. Entute banalaj skripto sed mi fariĝis terure freneza preterlaso. En la parto kie vi kontrolu por ŝanĝo de sidejo

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

antaux gxi

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

Tiel por mem faras ĉi prenas 2nd IP kaj cotejo ilin se ili estas identaj maltrafis se malsamaj ĝisdatigoj. En la antaŭa versio mi maltrafis tre grava eraro ial la skripto mi decidis ke mi IP = “” (nenio) kaj preapical ligi agordo-kaj mia kampo estas malplena, tiam ĉe la venonta ŝanĝo ne povas reverki ĝuste la konfiguracio kiu kaŭzas la manko de rilato kun nameservr-a. Maniulo, ĉu vi 😉