Это старая версия документа!
pfSense
HowTo
Перазагрузка pfSense если не доступн Internet
Скрипт проверки доступности сервера DNS Yandex
1. Простой
В консоле pfSense
tee > inet_check.sh chmod +x inet_check.sh
Редактировать
#!/bin/sh ping -n -q -c 4 -t 3 78.88.8.8
Редактировать cron
crontab -e
Добавить в cron pfSense
*/10 * * * * /usr/local/bin/inet_check.sh
2. С логами
<code bash> #!/bin/sh
# СКРИПТ ПРОВЕРКИ РАБОТЫ И АКТИВНОСТИ ИНТЕРНЕТ СОЕДИНЕНИЯ
# ОПРЕДЕЛЯЕМ ПЕРЕМЕННЫЕ, ПУТИ ДО ЛОГ-ФАЙЛОВ И ИСПОЛНЯЕМЫХ СКРИПТОВ
# ПУТЬ ДО ЛОГ-ФАЙЛА LOG=«/var/log/check_inet.log»
# ОПРЕДЕЛЯЕМ СЕРВЕР ДЛЯ ПРОВЕРКИ ДОСТУПНОСТИ ИНТЕРНЕТА SERVER=«77.88.8.8»
# ОПРЕДЕЛЯЕМ ПУТЬ ДО ИСПОЛНЯЕМОГО ФАЙЛА ПРОГРАММЫ PING PING=«/sbin/ping»
# ОПРЕДЕЛЯЕМ ПУТЬ ДО ИСПОЛНЯЕМОГО ФАЙЛА ПРОГРАММЫ REBOOT REBOOT=«/sbin/reboot»
# ПРОВЕРКА ИНТЕРНЕТА restart() { ${PING} -q -c1 -t1 -s0 ${SERVER} >/dev/null 2>/dev/null if [ $? -eq 0 ]; then
echo "$(date +%d-%m-%y\ %H:%M:%S) ТЕСТ PING ${SERVER} УСПЕШНО ВЫПОЛНЕН!" >> ${LOG}
exit 0
else
echo "$(date +%d-%m-%y\ %H:%M:%S) ОШИБКА!! ТЕСТ НЕУДАЧЕН!! --> REBOOT СЕРВЕРА" >> ${LOG}
${REBOOT}
fi
return 0 }
# СТАРТ - ОБЩЕЕ НАЧАЛО РАБОТЫ СКРИПТА echo «=============================================================» » ${LOG} echo «$(date +%d-%m-%y\ %H:%M:%S) СТАРТ ПРОВЕРКИ ДОСТУПНОСТИ ИНТЕРНЕТА» » ${LOG} restart
exit 0 <code> Истоник