Witam.
Mam następujący scrypt, kŧóry resetuje połączenie z internetem, w momencie braku odpowiedzi na ping wp i onetu [scrypt znaleziony na tym forum]
HOST1="onet.pl"
HOST2="wp.pl"
LOG="/var/log/neo.log"
X=0
linia=`ping -n -c4 $HOST1 | grep "icmp_seq";
ping -n -c4 $HOST2 | grep "icmp_seq"`;
for i in `echo $linia`; do
i=`expr substr $i 1 3 `
if [ $i = "ttl" ]; then X=$[X+1]; fi;
done
if [ $X = 0 ]; then
date +%d/%m/%Y" "%X" Nie ma polaczenia z internetem. Restartuje poloczenie." >>$LOG
sleep 1
/etc/rc.d/internet restart
/etc/dyndns
else
date +%d/%m/%Y" "%X" OK ($X)" >>$LOG
fi
Dopisałem sobie do skryptu, że automatycznie ma aktualizować sobie dane na dyndsie.
Problem polega na tym, że skrypt się uruchamia co 5 min. Na dyndns blokują mi konto, bo za często się aktualizuje host.
Mógłbym wywalić do jakiegoś innego crona, ale to by się mijało z celem.
Jesli można to prosze o pomoc jak zastosować polecenie IF, THEN, ELSE w celu takim, by nazwa była aktualizowana do piero po zmianie IP i przydzieleniu go przez usługodawcę. Czy to wogóle możliwe? Czy po poleceniu /etc/rc.d/internet restart od razu dostajemy nowy adres? Czy zastosowanie pętli w tym plku nadąży z wysłaniem już nowego IP?
Z góry dzięki i pozdrawiam