Страница 1 из 1
Удалённая перезагрузка dir-320
Добавлено: 2011-04-15 18:58:31
Alex Keda
сабж со стандартной прошивкой.
дома за точкой стоит комп на котором ftp хранилищще бэкапов.
стал постоянно инет подлагивать - причём точка без ребута не подцепляет новый динамический адрес.
пришлось нарисовать такое вот поделие:
Код: Выделить всё
p3-800# cat /root/scripts/dir-320.reboot.sh
#!/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
login="admin"
pass="21255297a5ea"
host="192.168.254.1"
# check access point
ping -c 3 $host >/dev/null 2>&1 || exit;
# check inet
if ping -c 3 ya.ru >/dev/null 2>&1
then
# OK
else
cd /tmp/
wget -S -O - --keep-session-cookies --save-cookies /tmp/.cookie --post-data "ACTION_POST=LOGIN&FILECODE=&VERIFICATION_CODE=&LOGIN_USER=$login&LOGIN_PASSWD=$pass" http://$host/login.php
wget -S -O - --keep-session-cookies --load-cookies /tmp/.cookie "http://$host/sys_cfg_valid.xgi?&exeshell=submit%20REBOOT"
echo "inet is down, reboot dir-320" | mail -s "reboot dir-320" root
fi
и в крон раз в 5 минут.
наблюдаю, по результатам отпишусь
Re: Удалённая перезагрузка dir-320
Добавлено: 2011-04-16 14:19:22
Alex Keda
вторая версия.
- пропускается один цикл, если на перыдущем был ребут
- проверяется не один сайт а два, с таймаутом между проверками - для избегания ложных срабатываний в случае кратковременного пропадания инета, например.
- добавлена опция таймаута к ключам wget
Код: Выделить всё
p3-800# cat /root/scripts/dir-320.reboot.sh
#!/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
login="admin"
pass="57834273287208"
host="192.168.254.1"
lock_file="/tmp/dir-320.txt"
# check lock file
if test -f $lock_file
then
# delete file and exit
rm -f $lock_file
exit
fi
# check access point
ping -c 3 $host >/dev/null 2>&1 || exit;
# check inet
if ping -c 3 ya.ru >/dev/null 2>&1
then
# OK
else
sleep 60
# second check
if ping -c 3 www.google.com >/dev/null 2>&1
then
# OK
else
cd /tmp/
wget -S -O - --timeout=30 --keep-session-cookies --save-cookies /tmp/.cookie --post-data "ACTION_POST=LOGIN&FILECODE=&VERIFICATION_CODE=&LOGIN_USER=$login&LOGIN_PASSWD=$pass" http://$host/login.php
wget -S -O - --timeout=30 --keep-session-cookies --load-cookies /tmp/.cookie "http://$host/sys_cfg_valid.xgi?&exeshell=submit%20REBOOT"
echo "inet is down, reboot dir-320" | mail -s "reboot dir-320" root
# lock file for next stage
echo 1 > $lock_file
fi
fi
Re: Удалённая перезагрузка dir-320
Добавлено: 2011-04-18 9:10:24
hizel
прошивка какая?
Re: Удалённая перезагрузка dir-320
Добавлено: 2011-04-18 13:27:36
Alex Keda
штатная 1.21 чтоли
Re: Удалённая перезагрузка dir-320
Добавлено: 2011-04-19 7:57:16
alex117
Может у тебя дело не в инете, а в роутере? На D-Link идут постоянные жалобы, что соединение рвется.
Re: Удалённая перезагрузка dir-320
Добавлено: 2011-04-19 9:19:48
Alex Keda
в инете. комп с которого ватчдог смотрит - он раньше был гейтом.
было тоже самое.
Re: Удалённая перезагрузка dir-320
Добавлено: 2011-04-19 10:55:08
FreeBSP
а перешить на ddwrt или OpenWrt не лучше? шелл будет, на нем на самом можно будет что то ковырять без ребута
Re: Удалённая перезагрузка dir-320
Добавлено: 2011-04-19 10:58:29
hizel
да позвони уже провайдеру
Re: Удалённая перезагрузка dir-320
Добавлено: 2011-04-19 14:34:16
Alex Keda
к нему нет физического доступа
оно на антресолях стоит.
туда лезть очень тяжело и долго.
да и менять один линух на другой - не вижу смысла
Re: Удалённая перезагрузка dir-320
Добавлено: 2011-04-20 13:46:06
manefesto
у меня стоял последняя прошивка, но точне не та которую ты сказал, вроде повыше версия была, нормально работало на 3G!!!! модеме.
пинай прова
Re: Удалённая перезагрузка dir-320
Добавлено: 2011-04-20 20:02:52
Alex Keda
от мне делать больше нечего...
чем больше от него народу разбежится - тем свободней каналы будут.
а я себе костыль уже нарисовал

)
Re: Удалённая перезагрузка dir-320
Добавлено: 2013-04-29 10:01:50
ray8810
Alex Keda писал(а):вторая версия.
- пропускается один цикл, если на перыдущем был ребут
- проверяется не один сайт а два, с таймаутом между проверками - для избегания ложных срабатываний в случае кратковременного пропадания инета, например.
- добавлена опция таймаута к ключам wget
Код: Выделить всё
p3-800# cat /root/scripts/dir-320.reboot.sh
#!/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
login="admin"
pass="57834273287208"
host="192.168.254.1"
lock_file="/tmp/dir-320.txt"
# check lock file
if test -f $lock_file
then
# delete file and exit
rm -f $lock_file
exit
fi
# check access point
ping -c 3 $host >/dev/null 2>&1 || exit;
# check inet
if ping -c 3 ya.ru >/dev/null 2>&1
then
# OK
else
sleep 60
# second check
if ping -c 3 www.google.com >/dev/null 2>&1
then
# OK
else
cd /tmp/
wget -S -O - --timeout=30 --keep-session-cookies --save-cookies /tmp/.cookie --post-data "ACTION_POST=LOGIN&FILECODE=&VERIFICATION_CODE=&LOGIN_USER=$login&LOGIN_PASSWD=$pass" http://$host/login.php
wget -S -O - --timeout=30 --keep-session-cookies --load-cookies /tmp/.cookie "http://$host/sys_cfg_valid.xgi?&exeshell=submit%20REBOOT"
echo "inet is down, reboot dir-320" | mail -s "reboot dir-320" root
# lock file for next stage
echo 1 > $lock_file
fi
fi
Здравствуйте!
Подскажите простому юзеру

Как реализовать это, хотелось бы более подробную инструкцию.
Наш роутер находится в другом конце города и переодически подвисает соединение и приходится ездить и ребутить его в ручную.
Re: Удалённая перезагрузка dir-320
Добавлено: 2013-04-29 10:08:01
Alex Keda
из втнутренней сети - подобным скриптом мониторить...
ничё сложного, в общем-то