Суть в следующем. Подключение к провайдеру БИГТелеком осуществляется через VPN-соединение. Поднял его средствами MPD5. При неактивности соединения ~10-20 минут соединение отваливается, после чего не восстанавливается. Если рвать принудительно - например, выдернуть сетевой шнурок, дождаться обрыва и подключить вновь - все работает нормально. Звонил прову - у них нет опции разрыва соединения по неактивности.
Получается, косяк где-то в настройках.. Сможете ткнуть носом? Буду очч благодарен. Фря 8.1 MPD 5.5
Конфиг MPD:default:
load pptp_client
pptp_client:create bundle static B1
set iface up-script "/usr/local/etc/mpd5/ng0_up.sh"
set iface down-script "/usr/local/etc/mpd5/ng0_down.sh"
set iface idle 0
set iface enable tcpmssfix
set iface route default
set ipcp ranges 0.0.0.0/0 0.0.0.0/0
set ipcp no vjcompcreate link static L1 pptp
set link action bundle B1
set auth authname "12345678"
set auth password "12345678"
set link disable multilink
set link max-redial 999
set link latency 0
set link mtu 1476
set link keep-alive 20 75
set pptp peer vpn.bigtelecom.ru
set pptp disable windowing
openВ скриптах поднимаю и прибиваю нат на второй интерфейс ng0.
Вот логи успешного соединения:
Feb 16 22:12:21 server mpd: process 2636 started, version 5.5 (root@server.com 19:56 23-Jan-2011)
Feb 16 22:12:21 server mpd: Label 'startup' not found
Feb 16 22:12:21 server mpd: [B1] Bundle: Interface ng0 created
Feb 16 22:12:21 server mpd: [L1] Link: OPEN event
Feb 16 22:12:21 server mpd: [L1] LCP: Open event
Feb 16 22:12:21 server mpd: [L1] LCP: state change Initial --> Starting
Feb 16 22:12:21 server mpd: [L1] LCP: LayerStart
Feb 16 22:12:21 server mpd: [L1] PPTP call successful
Feb 16 22:12:21 server mpd: [L1] Link: UP event
Feb 16 22:12:21 server mpd: [L1] LCP: Up event
Feb 16 22:12:21 server mpd: [L1] LCP: state change Starting --> Req-Sent
Feb 16 22:12:21 server mpd: [L1] LCP: SendConfigReq #1
Feb 16 22:12:21 server mpd: [L1] ACFCOMP
Feb 16 22:12:21 server mpd: [L1] PROTOCOMP
Feb 16 22:12:21 server mpd: [L1] ACCMAP 0x000a0000
Feb 16 22:12:21 server mpd: [L1] MRU 1500
Feb 16 22:12:21 server mpd: [L1] MAGICNUM f10b2598
Feb 16 22:12:21 server mpd: [L1] LCP: rec'd Configure Request #1 (Req-Sent)
Feb 16 22:12:21 server mpd: [L1] AUTHPROTO CHAP MSOFTv2
Feb 16 22:12:21 server mpd: [L1] MAGICNUM 2d59dcc5
Feb 16 22:12:21 server mpd: [L1] LCP: SendConfigAck #1
Feb 16 22:12:21 server mpd: [L1] AUTHPROTO CHAP MSOFTv2
Feb 16 22:12:21 server mpd: [L1] MAGICNUM 2d59dcc5
Feb 16 22:12:21 server mpd: [L1] LCP: state change Req-Sent --> Ack-Sent
Feb 16 22:12:21 server mpd: [L1] LCP: rec'd Configure Ack #1 (Ack-Sent)
Feb 16 22:12:21 server mpd: [L1] ACFCOMP
Feb 16 22:12:21 server mpd: [L1] PROTOCOMP
Feb 16 22:12:21 server mpd: [L1] ACCMAP 0x000a0000
Feb 16 22:12:21 server mpd: [L1] MRU 1500
Feb 16 22:12:21 server mpd: [L1] MAGICNUM f10b2598
Feb 16 22:12:21 server mpd: [L1] LCP: state change Ack-Sent --> Opened
Feb 16 22:12:21 server mpd: [L1] LCP: auth: peer wants CHAP, I want nothing
Feb 16 22:12:21 server mpd: [L1] LCP: LayerUp
Feb 16 22:12:21 server mpd: [L1] CHAP: rec'd CHALLENGE #1 len: 25
Feb 16 22:12:21 server mpd: [L1] Name: "VPN4"
Feb 16 22:12:21 server mpd: [L1] CHAP: Using authname "12345678"
Feb 16 22:12:21 server mpd: [L1] CHAP: sending RESPONSE #1 len: 62
Feb 16 22:12:21 server mpd: [L1] CHAP: rec'd SUCCESS #1 len: 46
Feb 16 22:12:21 server mpd: [L1] MESG: S=2F84C0799E2B8007B1E09D263EC498FEC64C25DC
Feb 16 22:12:21 server mpd: [L1] LCP: authorization successful
Feb 16 22:12:21 server mpd: [L1] Link: Matched action 'bundle "B1" ""'
Feb 16 22:12:21 server mpd: [L1] Link: Join bundle "B1"
Feb 16 22:12:21 server mpd: [B1] Bundle: Status update: up 1 link, total bandwidth 64000 bps
Feb 16 22:12:21 server mpd: [B1] IPCP: Open event
Feb 16 22:12:21 server mpd: [B1] IPCP: state change Initial --> Starting
Feb 16 22:12:21 server mpd: [B1] IPCP: LayerStart
Feb 16 22:12:21 server mpd: [B1] IPCP: Up event
Feb 16 22:12:21 server mpd: [B1] IPCP: state change Starting --> Req-Sent
Feb 16 22:12:21 server mpd: [B1] IPCP: SendConfigReq #1
Feb 16 22:12:21 server mpd: [B1] IPADDR 0.0.0.0
Feb 16 22:12:21 server mpd: [B1] IPCP: rec'd Configure Request #1 (Req-Sent)
Feb 16 22:12:21 server mpd: [B1] COMPPROTO VJCOMP, 16 comp. channels, allow comp-cid
Feb 16 22:12:21 server mpd: [B1] IPADDR 172.16.1.1
Feb 16 22:12:21 server mpd: [B1] 172.16.1.1 is OK
Feb 16 22:12:21 server mpd: [B1] IPCP: SendConfigRej #1
Feb 16 22:12:21 server mpd: [B1] COMPPROTO VJCOMP, 16 comp. channels, allow comp-cid
Feb 16 22:12:21 server mpd: [B1] IPCP: rec'd Configure Nak #1 (Req-Sent)
Feb 16 22:12:21 server mpd: [B1] IPADDR 87.255.21.1
Feb 16 22:12:21 server mpd: [B1] 87.255.21.1 is OK
Feb 16 22:12:21 server mpd: [B1] IPCP: SendConfigReq #2
Feb 16 22:12:21 server mpd: [B1] IPADDR 87.255.21.1
Feb 16 22:12:21 server mpd: [B1] IPCP: rec'd Configure Request #2 (Req-Sent)
Feb 16 22:12:21 server mpd: [B1] IPADDR 172.16.1.1
Feb 16 22:12:21 server mpd: [B1] 172.16.1.1 is OK
Feb 16 22:12:21 server mpd: [B1] IPCP: SendConfigAck #2
Feb 16 22:12:21 server mpd: [B1] IPADDR 172.16.1.1
Feb 16 22:12:21 server mpd: [B1] IPCP: state change Req-Sent --> Ack-Sent
Feb 16 22:12:21 server mpd: [B1] IPCP: rec'd Configure Ack #2 (Ack-Sent)
Feb 16 22:12:21 server mpd: [B1] IPADDR 87.255.21.1
Feb 16 22:12:21 server mpd: [B1] IPCP: state change Ack-Sent --> Opened
Feb 16 22:12:21 server mpd: [B1] IPCP: LayerUp
Feb 16 22:12:21 server mpd: [B1] 87.255.21.1 -> 172.16.1.1
Feb 16 22:12:21 server mpd: [B1] IFACE: Up event
После чего идет разрыв. Логи:Feb 16 21:22:40 server mpd: [L1] PPTP call terminated
Feb 16 21:22:40 server mpd: [L1] Link: DOWN event
Feb 16 21:22:40 server mpd: [L1] LCP: Down event
Feb 16 21:22:40 server mpd: [L1] LCP: state change Opened --> Starting
Feb 16 21:22:40 server mpd: [L1] Link: Leave bundle "B1"
Feb 16 21:22:40 server mpd: [B1] Bundle: Status update: up 0 links, total bandwidth 9600 bps
Feb 16 21:22:40 server mpd: [B1] IPCP: Close event
Feb 16 21:22:40 server mpd: [B1] IPCP: state change Opened --> Closing
Feb 16 21:22:40 server mpd: [B1] IPCP: SendTerminateReq #3
Feb 16 21:22:40 server mpd: [B1] IPCP: LayerDown
Feb 16 21:22:40 server mpd: [B1] IFACE: Down event
Feb 16 21:22:40 server mpd: [B1] IPCP: Down event
Feb 16 21:22:40 server mpd: [B1] IPCP: LayerFinish
Feb 16 21:22:40 server mpd: [B1] Bundle: No NCPs left. Closing links...
Feb 16 21:22:40 server mpd: [B1] IPCP: state change Closing --> Initial
Feb 16 21:22:40 server mpd: [L1] LCP: LayerDown
Feb 16 21:22:40 server mpd: [L1] Link: reconnection attempt 1 in 3 seconds
Feb 16 21:22:43 server mpd: [L1] Link: reconnection attempt 1
Feb 16 21:22:43 server mpd: [L1] PPTP call successful
Feb 16 21:22:43 server mpd: [L1] Link: UP event
Feb 16 21:22:43 server mpd: [L1] LCP: Up event
Feb 16 21:22:43 server mpd: [L1] LCP: state change Starting --> Req-Sent
Feb 16 21:22:43 server mpd: [L1] LCP: SendConfigReq #2
Feb 16 21:22:43 server mpd: [L1] ACFCOMP
Feb 16 21:22:43 server mpd: [L1] PROTOCOMP
Feb 16 21:22:43 server mpd: [L1] ACCMAP 0x000a0000
Feb 16 21:22:43 server mpd: [L1] MRU 1500
Feb 16 21:22:43 server mpd: [L1] MAGICNUM 2fad8706
Feb 16 21:22:45 server mpd: [L1] LCP: SendConfigReq #3
Feb 16 21:22:45 server mpd: [L1] ACFCOMP
Feb 16 21:22:45 server mpd: [L1] PROTOCOMP
Feb 16 21:22:45 server mpd: [L1] ACCMAP 0x000a0000
Feb 16 21:22:45 server mpd: [L1] MRU 1500
Feb 16 21:22:45 server mpd: [L1] MAGICNUM 2fad8706
Feb 16 21:22:45 server mpd: [L1] LCP: rec'd Configure Request #1 (Req-Sent)
Feb 16 21:22:45 server mpd: [L1] AUTHPROTO CHAP MSOFTv2
Feb 16 21:22:45 server mpd: [L1] MAGICNUM 89bccaad
Feb 16 21:22:45 server mpd: [L1] LCP: SendConfigAck #1
Feb 16 21:22:45 server mpd: [L1] AUTHPROTO CHAP MSOFTv2
Feb 16 21:22:45 server mpd: [L1] MAGICNUM 89bccaad
Feb 16 21:22:45 server mpd: [L1] LCP: state change Req-Sent --> Ack-Sent
Feb 16 21:22:45 server mpd: [L1] LCP: rec'd Configure Ack #3 (Ack-Sent)
Feb 16 21:22:45 server mpd: [L1] ACFCOMP
Feb 16 21:22:45 server mpd: [L1] PROTOCOMP
Feb 16 21:22:45 server mpd: [L1] ACCMAP 0x000a0000
Feb 16 21:22:45 server mpd: [L1] MRU 1500
Feb 16 21:22:45 server mpd: [L1] MAGICNUM 2fad8706
Feb 16 21:22:45 server mpd: [L1] LCP: state change Ack-Sent --> Opened
Feb 16 21:22:45 server mpd: [L1] LCP: auth: peer wants CHAP, I want nothing
Feb 16 21:22:45 server mpd: [L1] LCP: LayerUp
Feb 16 21:22:45 server mpd: [L1] CHAP: rec'd CHALLENGE #1 len: 24
Feb 16 21:22:45 server mpd: [L1] Name: "VPN"
Feb 16 21:22:45 server mpd: [L1] CHAP: Using authname "12345678"
Feb 16 21:22:45 server mpd: [L1] CHAP: sending RESPONSE #1 len: 62
Feb 16 21:22:45 server mpd: [L1] CHAP: rec'd SUCCESS #1 len: 46
Feb 16 21:22:45 server mpd: [L1] MESG: S=1C067D093FC8D3CE0D91A26DF748D5CC1BC95760
Feb 16 21:22:45 server mpd: [L1] LCP: authorization successful
Feb 16 21:22:45 server mpd: [L1] Link: Matched action 'bundle "B1" ""'
Feb 16 21:22:45 server mpd: [L1] Link: Join bundle "B1"
Feb 16 21:22:45 server mpd: [B1] Bundle: Status update: up 1 link, total bandwidth 64000 bps
Feb 16 21:22:45 server mpd: [B1] IPCP: Open event
Feb 16 21:22:45 server mpd: [B1] IPCP: state change Initial --> Starting
Feb 16 21:22:45 server mpd: [B1] IPCP: LayerStart
Feb 16 21:22:45 server mpd: [B1] IPCP: Up event
Feb 16 21:22:45 server mpd: [B1] IPCP: state change Starting --> Req-Sent
Feb 16 21:22:45 server mpd: [B1] IPCP: SendConfigReq #4
Feb 16 21:22:45 server mpd: [B1] IPADDR 0.0.0.0
Feb 16 21:22:45 server mpd: [B1] IPCP: rec'd Configure Request #1 (Req-Sent)
Feb 16 21:22:45 server mpd: [B1] COMPPROTO VJCOMP, 16 comp. channels, allow comp-cid
Feb 16 21:22:45 server mpd: [B1] IPADDR 172.16.1.1
Feb 16 21:22:45 server mpd: [B1] 172.16.1.1 is OK
Feb 16 21:22:45 server mpd: [B1] IPCP: SendConfigRej #1
Feb 16 21:22:45 server mpd: [B1] COMPPROTO VJCOMP, 16 comp. channels, allow comp-cid
Feb 16 21:22:45 server mpd: [B1] IPCP: rec'd Configure Nak #4 (Req-Sent)
Feb 16 21:22:45 server mpd: [B1] IPADDR 87.255.21.1
Feb 16 21:22:45 server mpd: [B1] 87.255.21.1 is OK
Feb 16 21:22:45 server mpd: [B1] IPCP: SendConfigReq #5
Feb 16 21:22:45 server mpd: [B1] IPADDR 87.255.21.1
Feb 16 21:22:45 server mpd: [B1] IPCP: rec'd Configure Request #2 (Req-Sent)
Feb 16 21:22:45 server mpd: [B1] IPADDR 172.16.1.1
Feb 16 21:22:45 server mpd: [B1] 172.16.1.1 is OK
Feb 16 21:22:45 server mpd: [B1] IPCP: SendConfigAck #2
Feb 16 21:22:45 server mpd: [B1] IPADDR 172.16.1.1
Feb 16 21:22:45 server mpd: [B1] IPCP: state change Req-Sent --> Ack-Sent
Feb 16 21:22:45 server mpd: [B1] IPCP: rec'd Configure Ack #5 (Ack-Sent)
Feb 16 21:22:45 server mpd: [B1] IPADDR 87.255.21.1
Feb 16 21:22:45 server mpd: [B1] IPCP: state change Ack-Sent --> Opened
Feb 16 21:22:45 server mpd: [B1] IPCP: LayerUp
Feb 16 21:22:45 server mpd: [B1] 87.255.21.1 -> 172.16.1.1
Feb 16 21:22:45 server mpd: [B1] system: command "/usr/local/etc/mpd5/ng0_up.sh ng0 inet 87.255.21.1/32 172.16.1.1 '-' '' '' '87.255.0.194'" returned 256
Feb 16 21:22:45 server mpd: [B1] IPCP: parameter negotiation failed
Feb 16 21:22:45 server mpd: [B1] IPCP: state change Opened --> Stopping
Feb 16 21:22:45 server mpd: [B1] IPCP: SendTerminateReq #6
Feb 16 21:22:45 server mpd: [B1] IPCP: LayerDown
Feb 16 21:22:45 server mpd: [B1] IPCP: rec'd Terminate Ack #6 (Stopping)
Feb 16 21:22:45 server mpd: [B1] IPCP: state change Stopping --> Stopped
Feb 16 21:22:45 server mpd: [B1] IPCP: LayerFinish
Feb 16 21:22:45 server mpd: [B1] Bundle: No NCPs left. Closing links...
Feb 16 21:22:45 server mpd: [B1] Bundle: closing link "L1"...
Feb 16 21:22:45 server mpd: [L1] Link: CLOSE event
Feb 16 21:22:45 server mpd: [L1] LCP: Close event
Feb 16 21:22:45 server mpd: [L1] LCP: state change Opened --> Closing
Feb 16 21:22:45 server mpd: [L1] Link: Leave bundle "B1"
Feb 16 21:22:45 server mpd: [B1] Bundle: Status update: up 0 links, total bandwidth 9600 bps
Feb 16 21:22:45 server mpd: [B1] IPCP: Close event
Feb 16 21:22:45 server mpd: [B1] IPCP: state change Stopped --> Closed
Feb 16 21:22:45 server mpd: [B1] IPCP: Down event
Feb 16 21:22:45 server mpd: [B1] IPCP: state change Closed --> Initial
Feb 16 21:22:45 server mpd: [L1] LCP: SendTerminateReq #4
Feb 16 21:22:45 server mpd: [L1] LCP: LayerDown
Feb 16 21:22:45 server mpd: [L1] LCP: rec'd Terminate Ack #4 (Closing)
Feb 16 21:22:45 server mpd: [L1] LCP: state change Closing --> Closed
Feb 16 21:22:45 server mpd: [L1] LCP: LayerFinish
Feb 16 21:22:45 server mpd: [L1] PPTP call terminated
Feb 16 21:22:45 server mpd: [L1] Link: DOWN event
Feb 16 21:22:45 server mpd: [L1] LCP: Down event
Feb 16 21:22:45 server mpd: [L1] LCP: state change Closed --> InitialИ все.. попыток восстановить соединение нет. В чем трабла?
Перемудрили.
Вы после установки mpd файлик такой mpd.conf.sample просматривать пробовали?
Там для вашего случая конкретно написаноpptp_client:
#
# PPTP client: only outgoing calls, [u]auto reconnect[/u],
# ipcp-negotiated address, one-sided authentication,
# default route points on ISP's end
#create bundle static B1
set iface route default
set ipcp ranges 0.0.0.0/0 0.0.0.0/0create link static L1 pptp
set link action bundle B1
set auth authname MyLogin
set auth password MyPass
set link max-redial 0
set link mtu 1460
set link keep-alive 20 75
set pptp peer 1.2.3.4
set pptp disable windowing
openСравните свой файл с этим примером и найдите 10 отличий. ))
Приведите свой файл к этому виду и все у вас заработает как надо.
>[оверквотинг удален]
> set link max-redial 0
> set link mtu 1460
> set link keep-alive 20
> 75
> set pptp peer 1.2.3.4
> set pptp disable windowing
> open
> Сравните свой файл с этим примером и найдите 10 отличий. ))
> Приведите свой файл к этому виду и все у вас заработает как
> надо.гмм.. Если бы было все так просто.. Объясню подробнее - при РАЗРЫВЕ соединения реконнект идет, связь восстанавливается. У меня же причина в другом - MPD гасит канал при НЕАКТИВНОСТИ. В среднем через 10-15 минут, после чего вновь его не поднимает, в логах это видно. Причем эта же картина наблюдается в том числе и с той версией конфига, который привели Вы. Мне необходимо найти причину, по которой это происходит.
... поскипано> Feb 16 21:22:40 server mpd: [L1] LCP: LayerDown
> Feb 16 21:22:40 server mpd: [L1] Link: reconnection attempt 1 in 3
> seconds
> Feb 16 21:22:43 server mpd: [L1] Link: reconnection attempt 1... поскипано
> Feb 16 21:22:45 server mpd: [B1] system: command "/usr/local/etc/mpd5/ng0_up.sh ng0 inet
> 87.255.21.1/32 172.16.1.1 '-' '' '' '87.255.0.194'" returned 256
> Feb 16 21:22:45 server mpd: [B1] IPCP: parameter negotiation failed
> И все.. попыток восстановить соединение нет. В чем трабла?Ну как видно, переподсоединится сервер все-же пытается, НО, скрипт выдает ошибку (256), почему? в результате дальнейшие попытки прекращаются!!! Не увидел в логах запуска скрипта по DOWN, может чего-то не подчищается?
>[оверквотинг удален]
>> seconds
>> Feb 16 21:22:43 server mpd: [L1] Link: reconnection attempt 1
> ... поскипано
>> Feb 16 21:22:45 server mpd: [B1] system: command "/usr/local/etc/mpd5/ng0_up.sh ng0 inet
>> 87.255.21.1/32 172.16.1.1 '-' '' '' '87.255.0.194'" returned 256
>> Feb 16 21:22:45 server mpd: [B1] IPCP: parameter negotiation failed
>> И все.. попыток восстановить соединение нет. В чем трабла?
> Ну как видно, переподсоединится сервер все-же пытается, НО, скрипт выдает ошибку (256),
> почему? в результате дальнейшие попытки прекращаются!!! Не увидел в логах запуска
> скрипта по DOWN, может чего-то не подчищается?В этом скрипте прибивается нат на виртуальный интерфейс:
#!/bin/sh -
if [ -f /var/run/natd2.pid ] ; then
kill `cat /var/run/natd2.pid`
fiПрсле разрыва дефолтный маршрут также прибивается. Тем более, что впн-сервер находится в сети провайдера и путь к нему прописан статическим маршрутом. Что еще должно чистится, кроме таблицы роутинга?
Да, и еще - если есть активность на интерфейсе (например, в локалке запущена аська), то канал не рвется сутками.. Как только активность пропадает (например, компы в локалке выключаются на ночь) - мин через 10-15 канал отваливается.
>[оверквотинг удален]
> if [ -f /var/run/natd2.pid ] ; then
> kill `cat /var/run/natd2.pid`
> fi
> Прсле разрыва дефолтный маршрут также прибивается. Тем более, что впн-сервер находится
> в сети провайдера и путь к нему прописан статическим маршрутом. Что
> еще должно чистится, кроме таблицы роутинга?
> Да, и еще - если есть активность на интерфейсе (например, в локалке
> запущена аська), то канал не рвется сутками.. Как только активность пропадает
> (например, компы в локалке выключаются на ночь) - мин через 10-15
> канал отваливается.завершите скрипт exit 0
а вот почему отключается, не понятно, если бы Mpd ложил канал по неактивности, то уверяю, в логах была бы запись об этом:
Oct 1 12:21:48 mrk mpd: [common_B-1] IFACE: Idle timeoutвот она, нашел у себя, хотя у меня сервер, а не клиент, но думаю клиент бы так-же написал.
Так что ищите подходы к провайдеру, поинтересуйтесь у соседей, страдают они так-же или нет.