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

Исходное сообщение
"VPN клиент при помощи mpd"

Отправлено Dr. Nebula , 13-Янв-05 12:02 
Всем привет!
Уже два дня пытаюсь поднять тунель между фрей (клиент) и циской (сервер). Попробовал при помощи pptp, счас пробую через mpd, но результата не видно. Нужен хелп, может кто сталкивался. В форуме находил много похожих тем, но ни один рецепт не помог :(
Трабл судя по всему в маршрутизации - соединение устанавливается, но через какое-то время падает по причине отсутствия эхо-ответов.

Фря: имеет два интерфейса, один из которых внешний:
free_outside_ip  = x.x.x.x
free_local_ip    = 192.168.16.122
free_def_gateway = z.z.z.z

Cisco соответсвенно тоже:
cisco_local_ip   = 192.168.18.1
cisco_outside_ip = y.y.y.y

При установке соединения выдается IP из диапазона 192.168.131.0/24


Вот конфиги mpd:
------------------------------
/usr/local/etc/mpd/mpd.conf
default:
        load vpn
vpn:
        new -i ng0 vpn vpn
        set iface disable on-demand
        set iface idle 0
        set iface addrs 192.168.131.0/24 192.168.131.0/24
        #set iface route default
        set link keep-alive 0 0
        set bundle disable multilink
        set bundle authname "user"
        set bundle password "passwd"
        set link yes acfcomp protocomp
        set link disable chap pap
        set link accept chap pap
        set link enable no-orig-auth
        set link keep-alive 0 0
        set link mtu 1492
        set ipcp yes vjcomp
        set ipcp ranges 0.0.0.0/0 0.0.0.0/0
        set iface up-script /usr/local/etc/mpd/iface-up.sh
        set iface down-script /usr/local/etc/mpd/iface-down.sh
        set ccp yes mpp-stateless
        open
------------------------------
/usr/local/etc/mpd/mpd.links
vpn:
        set link type pptp
        set pptp self x.x.x.x
        set pptp peer y.y.y.y
        set pptp enable originate incoming outcall
------------------------------
/usr/local/etc/mpd/iface-up.sh
#!/bin/sh

iface=$1
proto=$2
localip=$3
remoteip=$4
vpn_private_ip=192.168.18.1

route delete 192.168.18.1
route add $vpn_private_ip z.z.z.z
route delete default
route add default -interface $iface
------------------------------
/usr/local/etc/mpd/iface-down.sh
#!/bin/sh

iface=$1
proto=$2
localip=$3
remoteip=$4
vpn_private_ip=192.168.18.1

route delete $vpn_private_ip
route delete default
route add default z.z.z.z
------------------------------

Нужен хелп, а то я уже опух - ничего не понимаю...


Содержание

Сообщения в этом обсуждении
"VPN клиент при помощи mpd"
Отправлено butcher , 13-Янв-05 12:19 
>Нужен хелп, а то я уже опух - ничего не понимаю...
Совсем недавно в рассылке mpd-users было:
--
From time to time I've noticed people asking about using
MPD with a Cisco router.  The fix for Cisco bug:

  CSCdu30944  MPPE rejects stateless        Fixed in 12.3(11.4)

appears to allow MPD to create a PPTP / MPPE tunnel to a Cisco 3662
without any problems ... tested using MPD 4.0b2 and Cisco IOS 12.3(12).
--
Видимо нужно обновить IOS?


"VPN клиент при помощи mpd"
Отправлено Dr. Nebula , 13-Янв-05 12:21 
>Видимо нужно обновить IOS?
Боюсь что нет - в винды и другой циски туннель прекрасно поднимается... :(



"VPN клиент при помощи mpd"
Отправлено bsd , 13-Янв-05 14:25 
чувак тебе нужен вот это имхо

http://www.freshports.org/security/vpnc/


"VPN клиент при помощи mpd"
Отправлено Dr. Nebula , 13-Янв-05 14:44 
>чувак тебе нужен вот это имхо
>
>http://www.freshports.org/security/vpnc/

Хотелось бы все таки на базе mpd это реализовать....


"VPN клиент при помощи mpd"
Отправлено butcher , 13-Янв-05 14:57 
>Хотелось бы все таки на базе mpd это реализовать....

Почему не хотите обновить IOS?
Один из разработчиков ответил на то сообщение так:
--
Thanx, I added a note to the troubleshooting section of Mpd's manual.
--
так что..


"VPN клиент при помощи mpd"
Отправлено Dr. Nebula , 13-Янв-05 15:41 
>>Хотелось бы все таки на базе mpd это реализовать....
>
>Почему не хотите обновить IOS?
>Один из разработчиков ответил на то сообщение так:
>--
>Thanx, I added a note to the troubleshooting section of Mpd's manual.
>
>--
>так что..

На данный момент к ней нет просто физического доступа, а по сети... как то не хочется...
а во вторых, думаешь обновление поможет? Ведь тунель циска-циска и винда-циска прекрасно поднимается... У меня подозрение, что у меня траблы с роутингом



"VPN клиент при помощи mpd"
Отправлено butcher , 13-Янв-05 15:58 
>а во вторых, думаешь обновление поможет? Ведь тунель циска-циска и винда-циска прекрасно

Видишь ли, опенсоурс ПО пишут согласно общепринятым стандартам, PPTP сервер в MPD уже изъездили как могли, в плоть до того, что уже находят лажи в самом протоколе. А Microsoft, Cisco, .. - гиганты, которые сами себе пишут стандарты.. Если ты заметил, то довольно часто народ жалуется на проблемы в работе Windows -> mpd. И, на сколько я знаю, эти проблемы есть не только у mpd, даже опцию добавили специальную..

Возможно, если поковряться, подебажить, то можно и обойтись теми средствами, которые есть, т.е. без обновления IOS'а.. НО, нужно ведь ковыряться, и наверняка придётся вставить какой-нибудь костыль в код mpd, чтобы ублажить Cisco'вский сервер..

>поднимается... У меня подозрение, что у меня траблы с роутингом

От куда такие подозрения? Слишком мало инфы.. Что в логах? Что если попробовать stateless mode вырубить?


"VPN клиент при помощи mpd"
Отправлено Dr. Nebula , 13-Янв-05 16:04 
>>поднимается... У меня подозрение, что у меня траблы с роутингом
>
>От куда такие подозрения? Слишком мало инфы.. Что в логах? Что если
>попробовать stateless mode вырубить?

В консоли mpd сыпятся сообщения типа

Resource deadlock avoided

при попытке сделать пинг машины сидящей за циской мы либо молчим как рыба об лед либо пишем

ping: sendto: No buffer space available


"VPN клиент при помощи mpd"
Отправлено butcher , 13-Янв-05 16:23 
>Resource deadlock avoided
>ping: sendto: No buffer space available

так, это уже более интересно. Покажите полный лог установления соединения, желательно не маскируя адреса, которые там фигурируют.


"VPN клиент при помощи mpd"
Отправлено Dr. Nebula , 14-Янв-05 13:20 
>>Resource deadlock avoided
>>ping: sendto: No buffer space available
>
>так, это уже более интересно. Покажите полный лог установления соединения, желательно не
>маскируя адреса, которые там фигурируют.

Лови. В другой консоли делел пинг и получал дэдлоки

Script started on Fri Jan 14 13:03:58 2005
free53# mpd vpn
Multi-link PPP for FreeBSD, by Archie L. Cobbs.
Based on iij-ppp, by Toshiharu OHNO.
mpd: pid 18756, version 3.18 (root@free53.office.arctel.ru 12:50 14-Jan-2005)
[vpn] ppp node is "mpd18756-vpn"
[vpn] using interface ng0
mpd: bad IP address "192.168.131.0/24"
[vpn] IPCP: peer address cannot be zero
[vpn] IFACE: Open event
[vpn] IPCP: Open event
[vpn] IPCP: state change Initial --> Starting
[vpn] IPCP: LayerStart
[vpn:vpn] [vpn] bundle: OPEN event in state CLOSED
[vpn] opening link "vpn"...
[vpn] link: OPEN event
[vpn] LCP: Open event
[vpn] LCP: state change Initial --> Starting
[vpn] LCP: LayerStart
[vpn] device: OPEN event in state DOWN
pptp0: connecting to 207.170.222.152:1723
[vpn] device is now in state OPENING
pptp0: connected to 207.170.222.152:1723
pptp0: attached to connection with 207.170.222.152:1723
pptp0-0: outgoing call connected at 64000 bps
[vpn] PPTP call successful
[vpn] device: UP event in state OPENING
[vpn] device is now in state UP
[vpn] link: UP event
[vpn] link: origination is local
[vpn] LCP: Up event
[vpn] LCP: state change Starting --> Req-Sent
[vpn] LCP: phase shift DEAD --> ESTABLISH
[vpn] LCP: SendConfigReq #1
ACFCOMP
PROTOCOMP
MRU 1500
MAGICNUM 43b8d9bc
[vpn] LCP: rec'd Configure Request #1 link 0 (Req-Sent)
AUTHPROTO CHAP MD5
MAGICNUM 685420dd
[vpn] LCP: SendConfigAck #1
AUTHPROTO CHAP MD5
MAGICNUM 685420dd
[vpn] LCP: state change Req-Sent --> Ack-Sent
[vpn] LCP: rec'd Configure Ack #1 link 0 (Ack-Sent)
ACFCOMP
PROTOCOMP
MRU 1500
MAGICNUM 43b8d9bc
[vpn] LCP: state change Ack-Sent --> Opened
[vpn] LCP: phase shift ESTABLISH --> AUTHENTICATE
[vpn] LCP: auth: peer wants CHAP, I want nothing
[vpn] LCP: LayerUp
[vpn] CHAP: rec'd CHALLENGE #1
Name: "CISCO"
Using authname "user"
[vpn] CHAP: sending RESPONSE
[vpn] CHAP: rec'd SUCCESS #1
[vpn] LCP: authorization successful
[vpn] LCP: phase shift AUTHENTICATE --> NETWORK
[vpn] setting interface ng0 MTU to 1492 bytes
[vpn] up: 1 link, total bandwidth 64000 bps
[vpn] IPCP: Up event
[vpn] IPCP: state change Starting --> Req-Sent
[vpn] IPCP: SendConfigReq #1
IPADDR 0.0.0.0
COMPPROTO VJCOMP, 16 comp. channels, no comp-cid
[vpn] IPCP: rec'd Configure Request #1 link 0 (Req-Sent)
IPADDR 207.170.222.152
   207.170.222.152 is OK
[vpn] IPCP: SendConfigAck #1
IPADDR 207.170.222.152
[vpn] IPCP: state change Req-Sent --> Ack-Sent
[vpn] IPCP: rec'd Configure Reject #1 link 0 (Ack-Sent)
COMPPROTO VJCOMP, 16 comp. channels, no comp-cid
[vpn] IPCP: SendConfigReq #2
IPADDR 0.0.0.0
[vpn] IPCP: rec'd Configure Nak #2 link 0 (Ack-Sent)
IPADDR 192.168.131.1
   192.168.131.1 is OK
[vpn] IPCP: SendConfigReq #3
IPADDR 192.168.131.1
[vpn] IPCP: rec'd Configure Ack #3 link 0 (Ack-Sent)
IPADDR 192.168.131.1
[vpn] IPCP: state change Ack-Sent --> Opened
[vpn] IPCP: LayerUp
  192.168.131.1 -> 207.170.222.152
[vpn] IFACE: Up event
[vpn] setting interface ng0 MTU to 1492 bytes
[vpn] exec: /sbin/ifconfig ng0 192.168.131.1 207.170.222.152 netmask 0xffffffff -link0
[vpn] exec: /sbin/route add 192.168.131.1 -iface lo0
[vpn] exec: /usr/local/etc/mpd/iface-up.sh ng0 inet 192.168.131.1 207.170.222.152 user
[vpn] IFACE: Up event
[vpn:vpn] show routes
Routing tables

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            ng0                US          0        0    ng0
127.0.0.1          127.0.0.1          UH          0        0    lo0
192.168.16/23      link#1             UC          0        0    xl0
192.168.16.1       00:07:e9:05:f6:7d  UHLW        0       55    xl0   1196
192.168.16.2       00:30:48:70:b0:c1  UHLW        1        0    xl0    784
192.168.16.22      00:0c:30:b5:1c:80  UHLW        0        2    xl0   1140
192.168.16.122     00:10:dc:ad:53:2d  UHLW        0       74    xl0    827
192.168.18.1       192.168.16.2       UGHS        0        0    xl0
192.168.131.1      lo0                UHS         0        0    lo0
207.170.222.152    192.168.131.1      UH          0        1    ng0
[vpn:vpn] quit
[vpn] IPCP: Down event
[vpn] IPCP: state change Opened --> Starting
[vpn] IPCP: LayerDown
[vpn] IFACE: Down event
[vpn] exec: /usr/local/etc/mpd/iface-down.sh ng0 inet user
[vpn] exec: /sbin/route delete 192.168.131.1 -iface lo0
[vpn] exec: /sbin/ifconfig ng0 down delete -link0
[vpn] IFACE: Close event
[vpn] IPCP: Close event
[vpn] IPCP: state change Starting --> Initial
[vpn] IPCP: LayerFinish
mpd: process 18756 terminated
free53# exit
exit

Script done on Fri Jan 14 13:04:58 2005


"VPN клиент при помощи mpd"
Отправлено butcher , 14-Янв-05 13:48 
У вас получается что, адрес PPTP сервера 207.170.222.152, циска даёт вам адрес 192.168.131.1, а со своего конца туннеля она так же использует 207.170.222.152. Как там на циске настраивается я не знаю, сделайте чтобы у неё в тунеле был другой адрес.

"VPN клиент при помощи mpd"
Отправлено Dr. Nebula , 14-Янв-05 15:46 
Люди! Хелп - не могу врубиться почему с винды я без проблем могу приконектиться по vpn-у к этой злосчастной циски, а с фрюхи - нифига не выходит?

"VPN клиент при помощи mpd"
Отправлено butcher , 14-Янв-05 16:59 
>Люди! Хелп - не могу врубиться почему с винды я без проблем
>могу приконектиться по vpn-у к этой злосчастной циски, а с фрюхи
>- нифига не выходит?

Вот ваша проблема и её решение:
--
> I'm trying to connect to a Cisco VPN server using mpd under -current.
> While the connection setup seems to work fine (see attached log), when I
> try to send traffic over the tunnel, I see these messages:
>
>       PING hbo.isi.edu (128.9.160.75): 56 data bytes
>       ping: sendto: Resource deadlock avoided
>       ping: sendto: No buffer space available
>       ping: sendto: No buffer space available
>       ping: sendto: No buffer space available
>       ^C
>       --- hbo.isi.edu ping statistics ---
>       4 packets transmitted, 0 packets received, 100% packet loss
>
> For the first packet after the tunnel comes up, I always get "resource
> deadlock avoided", for all later packets "no buffer space".

This is because the remote external IP address of the VPN tunnel
is equal to the remote internal IP address, and mpd/FreeBSD is
not smart enough to avoid trying to send the encapsulated packet
back through the tunnel.

Try configuring the Cisco box to use separate internal and external
IP addresses, or adding a host route to the remote peer first before
starting mpd.
--
(С) Archie Cobbs


"VPN клиент при помощи mpd"
Отправлено Dr. Nebula , 14-Янв-05 17:04 
спасибо!
Я как раз сам до этого допер - после твоего поста про IPишники - поэксперементировал - поднял VPN сервак на другой фрюхе, и конектился к нему - и если IP внешний и внутренний различаются - проблемы нет, а ессли совпадают - тот же трабл.
В понедельник буду пинать цискарей, если все будет удачно - запостю в эту ветку результаты

>>Люди! Хелп - не могу врубиться почему с винды я без проблем
>>могу приконектиться по vpn-у к этой злосчастной циски, а с фрюхи
>>- нифига не выходит?
>
>Вот ваша проблема и её решение:
>--
>> I'm trying to connect to a Cisco VPN server using mpd under -current.
>> While the connection setup seems to work fine (see attached log), when I
>> try to send traffic over the tunnel, I see these messages:
>>
>>       PING hbo.isi.edu (128.9.160.75): 56 data bytes
>>       ping: sendto: Resource deadlock avoided
>>       ping: sendto: No buffer space available
>>       ping: sendto: No buffer space available
>>       ping: sendto: No buffer space available
>>       ^C
>>       --- hbo.isi.edu ping statistics ---
>>       4 packets transmitted, 0 packets received, 100% packet loss
>>
>> For the first packet after the tunnel comes up, I always get "resource
>> deadlock avoided", for all later packets "no buffer space".
>
>This is because the remote external IP address of the VPN tunnel
>
>is equal to the remote internal IP address, and mpd/FreeBSD is
>not smart enough to avoid trying to send the encapsulated packet
>back through the tunnel.
>
>Try configuring the Cisco box to use separate internal and external
>IP addresses, or adding a host route to the remote peer first
>before
>starting mpd.
>--
>(С) Archie Cobbs



"VPN клиент при помощи mpd"
Отправлено denn , 13-Янв-05 16:27 
>>>поднимается... У меня подозрение, что у меня траблы с роутингом
>>
>>От куда такие подозрения? Слишком мало инфы.. Что в логах? Что если
>>попробовать stateless mode вырубить?
>
>В консоли mpd сыпятся сообщения типа
>
>Resource deadlock avoided
>
>при попытке сделать пинг машины сидящей за циской мы либо молчим как
>рыба об лед либо пишем
>
>ping: sendto: No buffer space available


версия mpd
3.18+параметры нет тюннинга
это обсуждалось давно и много
ищи на форуме тут есть топ на сотню советов


"VPN клиент при помощи mpd"
Отправлено Finch , 14-Янв-05 15:54 
У самого такая же ситуация.
Закоментируй строки

set iface up-script /usr/local/etc/mpd/iface-up.sh
set iface down-script /usr/local/etc/mpd/iface-down.sh

И перезапусти mpd или лучше всю машину. Тогда без них хотя бы route add работает, но нихрена не пингуется, всё висит.....

Пингую с другой консоли сервак прова впн, а на другой консоли, где работает mpd, смотрю что происходит....

[vpn:vpn] [vpn] LCP: protocol 0x2145 was rejected
[vpn]: unknown command. Try "help".
[vpn:vpn] [vpn] LCP: rec'd Protocol Reject #25 link 0 (Opened)
[vpn]: unknown command. Try "help".
[vpn:vpn] [vpn] LCP: protocol 0x2145 was rejected
[vpn]: unknown command. Try "help".

Т.е.  режется какой то протокол? И кем? С винды всё работало, а тут нет, мне кажется что это из-за настроек mpd . Смотрел help show в самом mpd, куча параметров, которые disable. Мне кажется это из-за них, но что именно надо enable?


"VPN клиент при помощи mpd"
Отправлено denn , 13-Янв-05 16:23 
>>>Хотелось бы все таки на базе mpd это реализовать....
>>
>>Почему не хотите обновить IOS?
>>Один из разработчиков ответил на то сообщение так:
>>--
>>Thanx, I added a note to the troubleshooting section of Mpd's manual.
>>
>>--
>>так что..
>
>На данный момент к ней нет просто физического доступа, а по сети...
>как то не хочется...
>а во вторых, думаешь обновление поможет? Ведь тунель циска-циска и винда-циска прекрасно
>поднимается... У меня подозрение, что у меня траблы с роутингом

http://www.opennet.me/tips/sml/84.shtml


"VPN клиент при помощи mpd"
Отправлено Dr. Nebula , 13-Янв-05 17:28 
>http://www.opennet.me/tips/sml/84.shtml
Я это уже почти наизусть знаю ;)
Равно как и
http://linux.opennet.ru/openforum/vsluhforumID1/40757.html

"VPN клиент при помощи mpd"
Отправлено denn , 13-Янв-05 17:31 
>>http://www.opennet.me/tips/sml/84.shtml
>Я это уже почти наизусть знаю ;)
>Равно как и
>http://linux.opennet.ru/openforum/vsluhforumID1/40757.html


и не выходит?
тех трафик проверь. не идет ли он в сам тунель... он должен в обход бегать.
и покажи что ты используешь из этой ссылки+настройки+трасы


"VPN клиент при помощи mpd"
Отправлено Dr. Nebula , 13-Янв-05 17:35 
>>>http://www.opennet.me/tips/sml/84.shtml
>>Я это уже почти наизусть знаю ;)
>>Равно как и
>>http://linux.opennet.ru/openforum/vsluhforumID1/40757.html
>
>и не выходит?
>тех трафик проверь. не идет ли он в сам тунель... он должен
>в обход бегать.
>и покажи что ты используешь из этой ссылки+настройки+трасы

Неа, не выходит... счас уже ничего не могу правда показать - система переходит на 5.3 ("а вдруг...")


"VPN клиент при помощи mpd"
Отправлено Finch , 14-Янв-05 13:27 
Ну у нас почти одинаковые с тобой ситуации. Только у тебя у прова cisco, а у моего прова linux. Я уже с этим впн е*усь третий день....
Пробывал сначала на pptp, не получилось, даже не соединялся с провайдером. Попробывал на mpd, соединяется, получает ip адресс свой и провайдера, и всё: ни чего не работает, ни пинг на какую либо машину в инете, ничего .....
Пишет тоже самое:
#ping <внешний ip провайдера, который получаю при поднятии впн>
PING ip (ip): 56 data bytes
ping: sendto: No buffer space available
ping: sendto: No buffer space available
ping: sendto: No buffer space available
^C
--- 213.85.43.5 ping statistics ---
3 packets transmitted, 0 packets received, 100% packet loss

То же фря 5.3
Файл настроек почти как у тебя, взял у тебя вызов скриптов про роутинг, то же самое.... не помогло.... а ты это вылечил?
Если да, поделися советом :) Я тоже думаю это роутинг, но что именно, и как тогда правильно поднимать роутинг в данном случае? Может кто подсказать?