Skip to content

Перезапуск ppp в случае падения

Переехали в новый офис, а тут у провайдера периодически бывают проблемы. Авторизация и доступ к интернетам происходит через pppoe.

После того как провайдер рвал сессию из-за проблем - pppd умирал. И для того, чтобы в офисе появился интернет, после починки провайдером самого себя - сотрудникам приходилось перезагружать сервер.

Пришлось чинить, дабы они так его не насиловали :)

В AltLinux (юзается 7.0 Centaurus), судя по всему существует проблема, связанная с тем, что несмотря на опции persist и maxfail 0 (в etcnet юзаются параметры PPPPERSIST=on и PPPMAXFAIL=0 в файле options, который находится в директории интерфейса) - не работают.

Т.е. pppd берет и умирает. И никто его не пытается перезапустить. В Debian, кстати, такого не замечал, там всё ок.

Решением оказался вот такой костыль, найденный в интернетах (Он смотрит, есть ли pid файл процесса pppd, если нет - перезапускает интерфейс. Запускается раз в 5 минут по крону)

#!/bin/sh
[ -f /var/run/ppp1.pid ] || /sbin/ifdown ppp1;/sbin/ifup ppp1
*/5 * * * * root /usr/local/bin/ppp.sh

Leave a Reply

Your email address will not be published. Required fields are marked *

π