DNS ПРОБЛЕМИ

Bo ja jestem wyjątkowy jerk i zapisu strasznie pół upieczony i kod m″rliv, Był w stanie zostawić bez dostępu do hostingu mój maszyna całą noc. Problem okazał się być opóźniony banalne ale każdy myśli, czas.

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

Jest to poprawione skrypt, który nie pozwoli błąd. Po trochę wyjaśnię gdzie była część problemata teraz po to, aby wyjaśnić, co sprawia, że skrypt. Przynajmniej jestem dynamiczny publiczny adres ip. Ja wysłany pocztą powyższy skrypt, aby sprawdzić zmiany w mój adres, jeśli zmiany do zmiany ustawień urządzenia i wysyła informacje do mojej domeny, że jest to zmiana. Ogólnie banalne skryptu, ale dokonano strasznie opóźniony pass. W części gdzie jest sprawdzona do zmiany adresu

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

Wcześniej było

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

Tak nie następujących linii sam dostaje 2 adres IP i porównuje je, jeśli mają one tym samym przebieg, jeśli są różne, to tylko. W poprzedniej wersji brakowało bardzo ważne błąd jakiegoś powodu skrypt zdecydowano, że mam IP = “” (нищо) и пренаписало конфигурацията на bind-а ми с празно поле и при следващата смяна вече не може да пренапише правилно конфигурацията което води липса на връзка с nameservr-a. Малоумно нали 😉

2 Komentarze

  1. Не мога да не се въздържа и да не репликирам със следния виц:
    На Иванчо са му дали 3 ябълки.
    Той е изял 2.
    Колко ябълки има Иванчо?
    Мислите си че 1?
    Ама никъде не е казано, колко ябълки е имал Иванчо преди да му дадат 3-те.
    Изводнулирайте си променливите!

    Всички сме ги правили тези грешки, аз няма да забравя, когато цяла зона ми умря заради една долна черта. Вече долнтие черти си ги заменям с тирета и си чета рфц-тата редовно.
    Важното е следващия път варианта с липсващо ай пи да ни е на ум. 🙂

    1. 😀 Дам 12 са били :)))) Ами Мисля че както промених скрипта няма да се осерат нещата. Иначе дам хубаво е човек да си вади поуки и да не пише калпаво с леви крак 😉

Zostaw odpowiedź

Twoj adres e-mail nie bedzie opublikowany. wymagane pola są zaznaczone *

anty spam *