Elastix – trunk sip bloccato quando cade internet
Ho da nn molto installato nella mia ditta un centralino Elastix, e con molta calma ho configurato tutto per benino
I miei trunk mclink funzionano una meraviglia con elastix ma c’e’ un problemino ino ino …..
se per qualunque motivo cade l’ adsl o non è disponibile la rete , i trunk SIP restano congelati …. immobili, anche se torna su internet non si ri-registrano
anche connettendo in ssh e lanciando ogni sorta di comando di reload , non si riesce a farli ripartire,
c’e’ una sola soluzione : RIAVVIARE IL SISTEMA
Googlando ho trovato diversi tipi di script che in caso di mancata connessione scambiano i file di configurazione per poi ripristinarli nel momento in cui la connessione torna su.
ne ho provato uno in perl, ma non ho avuto successo.
nel mio caso avvengono sporadiche cadute della rete e quasi tutte di notte, quindi ho pensato di scrivermi io un bash script da eseguire in crontab,
come funziona:
1- pinga google
2- se non risponde pinga un secondo host
3- se non risponde neanche il secondo avvia un ciclo while e continua a pingare google
4- quando il google torna disponibile, riavvia il sistema
ipcheck2.sh – CODE:
#!/bin/bash
#controllo connessione a internet e reboot
#cromoq@gmail.com
# use in crontab -e
PRIMO=”www.google.it”
SECONDO=”4.2.2.1″
clear
ping -c 1 $PRIMO -q
num=$?
if [ $num = 0 ] ; then
echo “\n\n\nL’ HOST” $PRIMO “HA RISPOSTO”
echo “\n\nInternet is UP”
echo “uscita in corso….”
exit
else
clear
echo “\n\n\nL’ HOST” $PRIMO “NON HA RISPOSTO”
echo “\n\nprobabile mancata risposta DNS”
echo “start step 2″
ping -c 1 $SECONDO -q
num2=$?
if [ $num2 = 0 ] ; then
clear
echo “\n\n\nl’ host” $SECONDO “HA RISPOSTO”
echo “INTERRUZIONE SCRIPT”
exit
else
echo “\n\n\nl’ host” $SECONDO “NON HA RISPOSTO\n”
echo “\n\nstart step 3″
echo “INIZIALIZZO CICLO DI CONTROLLO”
res=2
while [ $res = 2 ] ; do
echo “\neseguo ping”
ping -c 2 -q $PRIMO
res=$?
done
clear
shutdown -r now
fi
fi
Non è una soluzione vera ma sicuramente un buon workarround

