Скрипт для перезапуска VPN соединения при исчезновении пинга
Модераторы: SLEDopit, Модераторы разделов
-
- Сообщения: 2
Скрипт для перезапуска VPN соединения при исчезновении пинга
Есть сервер на RH 9.0 на котором висит VPN соединение. Иногда случается что VPN соединение остается, но трафик по нему перестает ходить. Помогите пожалуйста написать скрипт, который бы данной ситуации перезапускал бы VPN соединение (например при исчезновении пинга до yandex.ru или корневых DNS). Сам бы скрипт я бы подвесил бы в crontab с периодичностью выполнения например 1 час.
-
- Сообщения: 3340
- Статус: It's the GNU Age
- ОС: Debian
Re: Скрипт для перезапуска VPN соединения при исчезновении пинга
На основе чего VPN? У OpenVPN есть встроенные опции для этого, почитайте man.
Если всё же нужно писать скрипт, пригодится команда ping и шелловая связка "||", означающая, что команду после неё нужно выполнять при неуспешности команды перед ней. К примеру,
У пинга ещё можно покрутить опции -w и -W (см. man), ну и при желании поставить число пакетов побольше, если в сети бывают случайные потери.
Если всё же нужно писать скрипт, пригодится команда ping и шелловая связка "||", означающая, что команду после неё нужно выполнять при неуспешности команды перед ней. К примеру,
Код: Выделить всё
ping -c 1 google.com || /etc/init.d/<vpn-служба> restart
У пинга ещё можно покрутить опции -w и -W (см. man), ну и при желании поставить число пакетов побольше, если в сети бывают случайные потери.
-
- Сообщения: 2
Re: Скрипт для перезапуска VPN соединения при исчезновении пинга
rm_ писал(а): ↑27.08.2008 12:02На основе чего VPN? У OpenVPN есть встроенные опции для этого, почитайте man.
Если всё же нужно писать скрипт, пригодится команда ping и шелловая связка "||", означающая, что команду после неё нужно выполнять при неуспешности команды перед ней. К примеру,
Код: Выделить всё
ping -c 1 google.com || /etc/init.d/<vpn-служба> restart
У пинга ещё можно покрутить опции -w и -W (см. man), ну и при желании поставить число пакетов побольше, если в сети бывают случайные потери.
Спасибо большое, смысл понятен. А вообще VPN на основе pptpclient и pppd, перезапускаю его командой /etc/rc.d/init.d/pptp-client restart.
-
- Сообщения: 176
- ОС: Fedora 13, Win Vista
Re: Скрипт для перезапуска VPN соединения при исчезновении пинга
у меня клинический случай
тоже самое
поднимаю тоннель с помощью pptp-client
иногда провайдер отрубает соединение
есть ли возможность узнать что тоннель исчезает?
фактически пропабает устройство ppp0
как это можно проследить, чтобы предпринять последующие меры?
прошу пинги не предлагать
я верю, что существует более техничный способ
например через системные сообщения
только как это реализовать?
на форумах встречал, что не только меня интересует подобная проблема
тоже самое
поднимаю тоннель с помощью pptp-client
иногда провайдер отрубает соединение
есть ли возможность узнать что тоннель исчезает?
фактически пропабает устройство ppp0
как это можно проследить, чтобы предпринять последующие меры?
прошу пинги не предлагать
я верю, что существует более техничный способ
например через системные сообщения
только как это реализовать?
на форумах встречал, что не только меня интересует подобная проблема
-
- Бывший модератор
- Сообщения: 2521
- Статус: статус, статус, статус
-
- Сообщения: 176
- ОС: Fedora 13, Win Vista
Re: Скрипт для перезапуска VPN соединения при исчезновении пинга
эмм.. не нашел такой функции
не могли бы вы подсказать?
не могли бы вы подсказать?
-
- Бывший модератор
- Сообщения: 2521
- Статус: статус, статус, статус
-
- Сообщения: 3340
- Статус: It's the GNU Age
- ОС: Debian
Re: Скрипт для перезапуска VPN соединения при исчезновении пинга
фактически пропабает устройство ppp0
как это можно проследить, чтобы предпринять последующие меры?
Например:
Код: Выделить всё
ifconfig ppp0 > /dev/null 2> /dev/null || echo "Командыръ, что-то пошло нье так!"
Это если почему-либо не удаётся воспользоваться persist, либо если моменты разрыва связи нужно отлавливать, и делать помимо переподключения ещё что-то.
-
- Сообщения: 176
- ОС: Fedora 13, Win Vista
Re: Скрипт для перезапуска VPN соединения при исчезновении пинга
спасибо за советы. буду пробовать
я просто думал, что возможно выполняется какой либо скрипт напр ppp_down или подобный
который можно подредактировать под свои нужды или hal(может и не он)) генерирует сист. вызов
который можно каким либо образом перхватить, и т.д.
и что значит эта конструкция?
сначала вывод перенаправляется в никуда, потом 2 туда же?
я просто думал, что возможно выполняется какой либо скрипт напр ppp_down или подобный
который можно подредактировать под свои нужды или hal(может и не он)) генерирует сист. вызов
который можно каким либо образом перхватить, и т.д.
и что значит эта конструкция?
сначала вывод перенаправляется в никуда, потом 2 туда же?