Bug 12382

Summary: Проблемы в обработки соединения по PPPOE
Product: Sisyphus Reporter: Roman Savochenko <rom_as>
Component: pppAssignee: Michael Shigorin <mike>
Status: RESOLVED LATER QA Contact: qa-sisyphus
Severity: major    
Priority: P2 CC: MisHel64, hiddenman, mike, shrek
Version: unstable   
Hardware: all   
OS: Linux   

Description Roman Savochenko 2007-07-20 13:18:42 MSD
Проблема заключается в обработке опций PPPPERSIST и PPPMAXFAIL.

Во первых, эти опции фактически не обрабатываются, поскольку при 
отключении связи на линии (ADSL) соединение отключается и не 
восстанавливается при возникновении сигнала в кабеле.

Во вторых, если поставить опции persist и maxfail 0 прямо в файле 
pppoptions, то замечается подвисание системы при запуске, если кабель не 
рабочий, и загрузка никогда не уходит далее попытки инициализировать 
pppoe интерфейс. Всё это сопровождается сообщениями в логе:
Jul 20 09:27:33 server2 pppd[2280]: Using interface ppp0
Jul 20 09:27:33 server2 pppd[2280]: Connect: ppp0 <--> /dev/pts/1
Jul 20 09:27:33 server2 pppoe[4508]: Timeout waiting for PADO packets
Jul 20 09:27:33 server2 pppd[2280]: Script /usr/sbin/pppoe -I eth0 -U  
finished (pid 4508), status = 0x1
Jul 20 09:27:33 server2 pppd[2280]: LCP: timeout sending Config-Requests
Jul 20 09:27:33 server2 pppd[2280]: Modem hangup

Черевато это тем, что инициализация не доходит до подъёма ssh, и как 
следствие удалённое подключение к серверу не возможно до восстановления 
сигнала в кабеле. Если же учесть, что сервер без видухи и всего 
остального, то это печально.
Comment 1 Vladimir V. Kamarzin 2007-07-20 13:48:56 MSD
Опции PPPPERSIST и PPPMAXFAIL устарели.
Опции persist и maxfail 0 как вы заметили, использовать чревато :)

Самый надёжный вариант это запускать по крону нечто вроде
[ -s /var/run/ppp0.pid ] && exit 0 || ifup ppp0
Comment 2 Sir Raorn 2007-07-20 14:11:06 MSD
Это проблема pppd, а не etcnet.  "Надо оживлять pppwatch" (C)
Comment 3 Roman Savochenko 2007-07-25 12:34:57 MSD
Кстати вопрос. EtcNet содержимое /etc/ppp/pppoe.conf использует, если нет, 
то как указать его параметр CLAMPMSS=1412?
Comment 4 Denis Ovsienko 2007-07-26 23:03:50 MSD
Господа правы. Что касается опций pppd, их можно поместить в файл
$NAME/pppoptions, попробуйте.
Comment 5 Roman Savochenko 2007-07-27 18:03:54 MSD
(In reply to comment #4)
> Господа правы. Что касается опций pppd, их можно поместить в файл
> $NAME/pppoptions, попробуйте.
Мне казалось, что CLAMPMSS=1412 это не опция pppd, а опция pppoe, ибо в 
pppd такой опции нет вообще. И кстати, /etc/ppp/pppoe.conf не используется 
ибо на ALT4.0 в этом файле CLAMPMSS=1412 стоит, а маскардинг на этом 
сервере, с MTU 1500 на клиентах, не работает. В то-же время, на ALT2.4 и 
pppoe поднятом традиционно, с CLAMPMSS=1412, маскардинг и NAT нормально 
работают.
Comment 6 Michael Shigorin 2008-01-25 18:21:54 MSK
reassign
Comment 7 Michael Shigorin 2008-01-25 18:22:16 MSK
упс
Comment 8 Denis Smirnov 2008-03-28 00:35:16 MSK
Конкретные предложения как закрыть эту багу у кого-нибудь есть? ;-)
Comment 9 Michael Shigorin 2008-04-02 20:36:54 MSD
Валер, мож у тебя найдутся?.. я опять выпал из PPP-шного контекста.
Comment 10 Valery Inozemtsev 2008-04-02 21:27:01 MSD
я когда то по крону проверял
Comment 11 Sir Raorn 2008-04-02 21:40:27 MSD
> (In reply to comment #4)
> Мне казалось, что CLAMPMSS=1412 это не опция pppd, а опция pppoe,

В options:

PPPOE_EXTRA_OPTIONS="-m 1412"

man pppoe
Comment 12 Roman Savochenko 2008-04-07 16:18:58 MSD
Ага. Это работает
Comment 13 Michael Shigorin 2008-04-09 00:38:25 MSD
Ром, повесь багу нужного вида на alterator-net-pppoe, pls.
Comment 14 Roman Savochenko 2008-04-09 14:04:13 MSD
Повесил: https://bugzilla.altlinux.org/show_bug.cgi?id=15282
Comment 15 Michael Shigorin 2008-07-02 01:36:31 MSD
Возьму-ка себе.
Comment 16 Roman Savochenko 2008-09-21 15:25:35 MSD
Думаю можно отложить, пока.
Для восстановления оборваного интерфейса использую в cron:
*/5 * * * * root                /sbin/ifconfig ppp0 || /sbin/ifup ppp0
Comment 17 Sir Raorn 2010-05-30 21:45:53 MSD
*** Bug 23556 has been marked as a duplicate of this bug. ***