а кто как борется (поборол) зависание интерфейсов tun при раздаче PPPoE ?
на столе поковырял не висло, поставил тазик в продакшен и началось, клиент отпал а интерфес на сервере активен и естественно пользователь подключиться заново не может…
Как вариант решения как можно после поднятия ППП запустить скрипт и передать ему айпи пользователя ?
6.2-BETA2
на 5.3-RELEASE-p5 как-то реже висло, какие будут варианты ?
мои конфиги
default:
enable lqr
set lqrperiod 15
set echoperiod 5
enable echo
set server /var/tmp/pppuser%d "" 0177
set mtu max 1492
set mtu 1492
set mru max 1492
set mru 1492
set speed sync
set timeout 0
enable tcpmssfixup
allow mode direct
enable chap
enable deflate
accept deflate
disable acfcomp protocomp
deny acfcomp
disable vjcomp
deny vjcomp
set dns xxx.xxx.xxx.xxx
accept dnspppoeserver:
set ifaddr xxx.xxx.xxx.xxx
set radius /etc/ppp/radius.conf
>а кто как борется (поборол) зависание интерфейсов tun при раздаче PPPoE ?
>
>
>
>на столе поковырял не висло, поставил тазик в продакшен и началось, клиент
>отпал а интерфес на сервере активен и естественно пользователь подключиться заново
>не может…
>Запускать по крону.
#!/usr/bin/perl
$ppp="ifconfig | grep -A3 8050 | grep PID";
foreach (`$ppp`)
{
($a1,$a2,$a3,$pid)=split(' ',$_);
`kill -9 $pid`;
}
>[оверквотинг удален]
>
>foreach (`$ppp`)
>
>{
>
>($a1,$a2,$a3,$pid)=split(' ',$_);
>
>`kill -9 $pid`;
>
>}Решается проблема по другому.
Необходимо, чтобы в ppp.conf присутствовали следующие строкиpppoe-in:
set timeout 0
lcp-echo-interval 20
lcp-echo-failure 2Про эти опции написанов PPP-HOWTO следующее:
#lcp-echo-interval <n>
# Если эта опция назначена, pppd будет отправлять кадр LCP echo-request
# удаленной стороне каждые n секунд. Под Linux, echo-request отправляется
# когда пакеты не принимаются от удаленной стороны n секунд. Обычно
# удаленная сторона должна отвечать на echo-request отправкой echo-reply.
# Эта опция может быть использована с опцией lcp-echo-failure для
# определения что удаленная сторона больше не соединена.
#lcp-echo-failure <n>
# Если эта опция задана, pppd будет считать, что связи с peer нет, если n
# LCP echo-requests отправлены без приема правильных LCP echo-reply.
# Если это случилось, pppd завершит связь. Использование этой опции
# требует ненулевого значения для параметра lcp-echo-interval.
# Эта опция может быть использована, чтобы разрешить pppd завершать связь,
# если физическое соединение отсутствует (напр, модем бросил трубку) в
# ситуациях, когда доступны линии управления модемом.В результате на все поднятые интерфейсы tun каждые 20 сек. будут посылаться LCP-кадры для контроля состояния соединения. Если ответов для двух подряд посланных кадров LCP нет, то соединение считается потерянным, связь будет завершена, а интерфейс tun освобожден. Зависания нет.