URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 83120
[ Назад ]

Исходное сообщение
"Проблемы с PPTP в Gentoo"

Отправлено GaroRobe , 29-Ноя-08 17:42 
Доброго времени суток!

Прошу помощи со следующей проблемой:

В моей домовой сети интернет раздаётся посредством PPTP-соединений (обязательно с mppe). В Windows всё работает идеально, но в Gentoo (ядро 2.6.24-gentoo-r7) вот уже больше месяца эту проблему расколоть не могу.

Для подключения использую pptp-client (последняя версия из портежей). Настройку произвёл согласно мануалу на офсайте (http://pptpclient.sourceforge.net/howto-gentoo.phtml).

Конфиги:

1) /etc/ppp/options.pptp:
lock
noauth
refuse-eap
refuse-chap
refuse-mschap
nobsdcomp
nodeflate

2) /etc/ppp/peers/khd_vpn:
pty "pptp 10.255.0.2 --nolaunchpppd"
name ppphds2427
mtu 1400
mru 1400
remotename PPTP
require-mschap
require-mschap-v2
require-mppe-128
file /etc/ppp/options.pptp
ipparam khd_vpn

Дебаг:

Скрипт запущен Сбт 29 Ноя 2008 23:23:47

localhost root # pon khd_vpn debug dump logfd 2 nodetach
preexec pppd options in effect:
debug        # (from command line)
nodetach        # (from command line)
logfd 2        # (from command line)
dump        # (from command line)
noauth        # (from /etc/ppp/options.pptp)
refuse-chap        # (from /etc/ppp/options.pptp)
refuse-mschap        # (from /etc/ppp/options.pptp)
refuse-eap        # (from /etc/ppp/options.pptp)
name ppphds2427        # (from /etc/ppp/peers/khd_vpn)
remotename PPTP        # (from /etc/ppp/peers/khd_vpn)
        # (from /etc/ppp/options.pptp)
pty pptp 10.255.0.2 --nolaunchpppd        # (from /etc/ppp/peers/khd_vpn)
mru 1400        # (from /etc/ppp/peers/khd_vpn)
mtu 1400        # (from /etc/ppp/peers/khd_vpn)
ipparam khd_vpn        # (from /etc/ppp/peers/khd_vpn)
nobsdcomp        # (from /etc/ppp/options.pptp)
nodeflate        # (from /etc/ppp/options.pptp)
require-mppe-128        # (from /etc/ppp/peers/khd_vpn)
using channel 5
Using interface ppp0
Connect: ppp0 <--> /dev/pts/2
sent [LCP ConfReq id=0x1 <mru 1400> <asyncmap 0x0> <magic 0x999a3b03> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x1 <asyncmap 0x0> <auth eap> <magic 0x48f8792f> <pcomp> <accomp>]
sent [LCP ConfNak id=0x1 <auth chap MS-v2>]
rcvd [LCP ConfAck id=0x1 <mru 1400> <asyncmap 0x0> <magic 0x999a3b03> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x2 <asyncmap 0x0> <auth chap MS-v2> <magic 0x48f8792f> <pcomp> <accomp>]
sent [LCP ConfAck id=0x2 <asyncmap 0x0> <auth chap MS-v2> <magic 0x48f8792f> <pcomp> <accomp>]
rcvd [LCP EchoReq id=0x0 magic=0x48f8792f]
sent [LCP EchoRep id=0x0 magic=0x999a3b03]
rcvd [CHAP Challenge id=0x10 <7d06d530c658fc849c74e490df54ac6b>, name = "100"]
sent [CHAP Response id=0x10 <40a0f613ee8a8a87eef1f186cb8643bc000000000000000048432ae0e498d75a5f2daf77b8eae30d28d581d9898a7c5200>, name = "ppphds2427"]
rcvd [CHAP Success id=0x10 "S=F3C8F4408A94D05D9449355FF54FDC57484F2400"]
CHAP authentication succeeded
sent [CCP ConfReq id=0x1 <mppe +H -M +S -L -D -C>]
rcvd [CCP ConfReq id=0x1 <mppe +H -M +S +L -D -C>]
sent [CCP ConfNak id=0x1 <mppe +H -M +S -L -D -C>]
rcvd [CCP ConfAck id=0x1 <mppe +H -M +S -L -D -C>]
rcvd [CCP ConfReq id=0x2 <mppe +H -M +S -L -D -C>]
sent [CCP ConfAck id=0x2 <mppe +H -M +S -L -D -C>]
MPPE 128-bit stateless compression enabled
sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 0.0.0.0>]
rcvd [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 10.101.0.1>]
sent [IPCP ConfAck id=0x1 <compress VJ 0f 01> <addr 10.101.0.1>]
rcvd [IPCP ConfNak id=0x1 <addr 92.50.243.227>]
sent [IPCP ConfReq id=0x2 <compress VJ 0f 01> <addr 92.50.243.227>]
rcvd [IPCP ConfAck id=0x2 <compress VJ 0f 01> <addr 92.50.243.227>]
local  IP address 92.50.243.227
remote IP address 10.101.0.1
Script /etc/ppp/ip-up started (pid 8955)
Script /etc/ppp/ip-up finished (pid 8955), status = 0x0
Modem hangup
Connect time 2.0 minutes.
Sent 855765759 bytes, received 0 bytes.
Script /etc/ppp/ip-down started (pid 9631)
MPPE disabled
sent [LCP TermReq id=0x2 "MPPE disabled"]
Connection terminated.
Script pptp 10.255.0.2 --nolaunchpppd finished (pid 8950), status = 0x0
Waiting for 1 child processes...
  script /etc/ppp/ip-down, pid 9631
Script /etc/ppp/ip-down finished (pid 9631), status = 0x0

Симптомы:
После запуска (как видно из лога) успешно проходит авторизация, поднимаются интерфейс ppp0 и маршрут по умолчанию на него (все IP-адреса такие же как в Винде - проверял). Но потом начинаются проблемы.

Пинги не ходят никуда - даже до pptp-сервера. По ifconfig'у я определил что в TX-очереди ppp0 скапливаются сплошным потоком пакеты, при этом не вызывая ошибок и никуда не отсылаясь. За пару минут в TX скапливается мегабайт 700-800, после чего интерфейс благополучно падает.

Помогите пожалуйста кто сталкивался. Заранее благодарю.


Содержание

Сообщения в этом обсуждении
"Проблемы с PPTP в Gentoo"
Отправлено Хоменко , 29-Ноя-08 19:54 
>После запуска (как видно из лога) успешно проходит авторизация, поднимаются интерфейс ppp0
>и маршрут по умолчанию на него (все IP-адреса такие же как
>в Винде - проверял). Но потом начинаются проблемы.
>
>Пинги не ходят никуда - даже до pptp-сервера. По ifconfig'у я определил
>что в TX-очереди ppp0 скапливаются сплошным потоком пакеты, при этом не
>вызывая ошибок и никуда не отсылаясь. За пару минут в TX
>скапливается мегабайт 700-800, после чего интерфейс благополучно падает.

Припоминаю, было и у меня что-то похожее -- тоже был запор исходящего трафика и еще sys CPU было 100%. За давностью уже не помню, как именно оно решилось... Вот, короче, выдержки из моего шкрипта:


pptp 10.10.10.100  name lalala \
    predictor1 noproxyarp nobsdcomp noccp noauth password 1234567 \
    mtu 260 mru 260

route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.110.254
route del default
route add -net default gw 172.22.254.254
# а это для одновременного доступа к локальной сети
# вместе с доступом к интернету:
route add -net 192.168.0.0  netmask 255.255.0.0  gw 192.168.110.254

где 172.22.254.254 -- адрес того конца ppp. И 10.10.10.100 надо соответственно поменять. (Прошу особо не ругать: как оно работает я если и помнил, то забыл.)


"Проблемы с PPTP в Gentoo"
Отправлено GaroRobe , 30-Ноя-08 07:11 
>[оверквотинг удален]
>route del default
>route add -net default gw 172.22.254.254
># а это для одновременного доступа к локальной сети
># вместе с доступом к интернету:
>route add -net 192.168.0.0  netmask 255.255.0.0  gw 192.168.110.254
>

>
>где 172.22.254.254 -- адрес того конца ppp. И 10.10.10.100 надо соответственно поменять.
>(Прошу особо не ругать: как оно работает я если и помнил,
>то забыл.)

За совет спасибо, но, к сожалению, не помогло - с такими параметрами эффект точно такой же. Между тем попробовал на Generic-ядре (2.6.24-r5) - всё то же самое.

Однако меня настораживает: после попытки подключения в Linux (и, естественно, его падения), если сразу перезагрузиться в Винду и поднять подключение, пакеты не ходят. Это значит что на серваке "зависла" моя сессия - стало быть проблемы (вероятно) на моей стороне. (справедливости ради: если по какой-то причине некорректно роняется подключение в Винде, оно точно так же зависает минут на 5)

Может будут советы куда копать? (повторюсь: при указании маршрутом по умолчанию ppp0 не пингуется даже PPTP-сервер).


"Проблемы с PPTP в Gentoo"
Отправлено GaroRobe , 30-Ноя-08 11:14 
Апдейт ситуации:

На офсайте pptp-клиента говорится что подобные сиптомы бывают при маршрутной "петле".
Своим умом я эту информацию пока не переварил - если кто может разъяснить, очень хотелось бы услышать.

На всякий случай, вот моя примерная таблица маршрутизации при поднятом ppp0:

addr             gw           dev
10.101.0.1/32   10.9.3.15     eth0
127.0.0.0/8                   lo
0.0.0.0/0       92.50.243.227 ppp0

здесь:
10.101.0.1     - удалённый адрес туннеля (адрес сервера - 10.255.0.2)
92.50.243.227  - локальный адрес туннеля


"Проблемы с PPTP в Gentoo"
Отправлено GaroRobe , 30-Ноя-08 12:47 
Отбой, Уважаемые! Разобрался!

Всё дело было в том, что подключение к pptp-серверу производилось посредством маршрута по умолчанию, который заменялся на ppp0 после поднятия туннеля. Естественно, что после этого все данные, отправленные в туннель не могли достигнуть pptp-сервера.

Я добавил строку "route add 10.255.0.2/32 gw 10.9.3.15" в /etc/ppp/ip-up.d/60-routes.sh и всё заработало как надо.

Всего!


"Проблемы с PPTP в Gentoo"
Отправлено Хоменко , 30-Ноя-08 17:30 
>Отбой, Уважаемые! Разобрался!

Вот и чудненько. Я тоже тогда помню, что в маршрутах собака порылась.