The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Соединение 'точка-точка' пытаюсь направлять через gateway, и..."
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Соединение 'точка-точка' пытаюсь направлять через gateway, и..."
Сообщение от kD emailИскать по авторуВ закладки on 18-Фев-04, 23:17  (MSK)
Объясняю, что происходит :
есть впн сервак 10.0.0.1
есть **ip** назначаемый мне серваком
есть интерфейс ng0 (создается)
есть gateway XX.XX.XX.XX к серваку 10.0.0.1

изначально прописано:

Destination        Gateway            Flags    Refs      Use  Netif Expire
default            XX.XX.XX.XX        UGSc        1        1    ed0

Создаю соединение (через mpd):
и в конце поднимается интерфейс и выставляются маршруты:
khome mpd: [work] exec: /sbin/ifconfig ng0 **ip** 10.0.0.1 netmask 0xffffffff -link0
khome mpd: [work] exec: /sbin/route add **ip** -iface lo0
khome mpd: [work] exec: /sbin/route add 0.0.0.0 10.0.0.1
khome mpd: [work] exec: command returned 256

После чего дефолтовый роут заменяется (route add 0.0.0.0 10.0.0.1) интерфейс ng0 поднимается:

ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> mtu 1500
inet **ip** --> 10.0.0.1 netmask 0xffffffff

Создается маршрут
10.0.0.1 **ip** UH 1 1 ng0
**ip**    lo0                UHS         0        0    lo0

Но вот связка с сервером теряется, так как без указания gateway'я  XX.XX.XX.XX этот сервер не видим дя системы :(( те я пробую его пинговать, вижу в tcpdump'e попытку достичь сервера 10.0.0.1 через **ip**, которая оканчивается неудачно :((

Пытался обойти замену дефолтового роута (убирал вообще строку set iface route default, те оставлял а качестве gateway'я XX.XX.XX.XX), но все равно из-за маршрута
10.0.0.1 **ip** UH 1 1 ng0
он все равно ломится через **ip** к серваку ... игнорируя правильный gateway :((

И как указать ему что между виртуальным интерфейсом ng0 и серваком ему необходимо лезть через определенный XX.XX.XX.XX gateway ?? Что-то все мои попытки не получились :((

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Соединение 'точка-точка' пытаюсь направлять через gateway, и..."
Сообщение от Xela emailИскать по авторуВ закладки on 19-Фев-04, 09:50  (MSK)
добавить в таблицу роутинга запись типа
route add VPN_SERVER_IP GATEWAY_IP
а уже после этого запускать VPN
  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Соединение 'точка-точка' пытаюсь направлять через gateway, и..."
Сообщение от kD emailИскать по авторуВ закладки on 19-Фев-04, 11:43  (MSK)
>добавить в таблицу роутинга запись типа
>route add VPN_SERVER_IP GATEWAY_IP
>а уже после этого запускать VPN


Да согласен . На первый взгляд это решение, но

Прописываю

VPN_SERVER_IP - сервер
GATEWAY_IP  - gateway


Internet:
Destination Gateway Flags Refs Use Netif Expire
default VPN_SERVER_IP UGSc 1 1 ed0
VPN_SERVER_IP GATEWAY_IP  UGHS 1 0 ed0
127.0.0.1 127.0.0.1 UH 0 0 lo0
.....
запускаю соединение.(mpd).
Запускает в конце:
...
khome mpd: [work] exec: /sbin/ifconfig ng0 **ip** VPN_SERVER_IP netmask 0xffffffff -link0
khome mpd: [work] exec: command returned 256
khome mpd: [work] exec: /sbin/route add **ip** -iface lo0
khome mpd: [work] exec: command returned 256
...
то есть он поднимает интерфейс, но не присваевает ему IP

ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> mtu 1500

, то же самое, он не создает маршрута в route, а пишет только это:

**ip** lo0 UHS 0 0 lo0


Вот :(( Как это можно побороть ? То есть я понимаю ему мешает этот созданный нами маршрут :
VPN_SERVER_IP GATEWAY_IP   UGHS 1 0 ed0
поскольку он хочет создать нечто вроде
VPN_SERVER_IP **ip** UH 1 1 ng0 , а получается что для VPN_SERVER_IP уже есть маршрут .... вот он и обламывается :((

1. Это вообще можно обойти ?
2. Есть такие мысли : Если соединение происходит как соединение точка-точка **ip** - VPN_SERVER_IP, то как можно ему указать что нужно идти не на прямую через **ip** к VPN_SERVER_IP, а как бы через еще gateway GATEWAY_IP   ??? Смотрел tcpdump на ng0 во время пинга VPN_SERVER_IP он на прямую ломится в **ip** ну и не получается у него достичь VPN_SERVER_IP соответственно.
3. Скажите если есть роут прямой VPN_SERVER_IP - **ip** и default на GATEWAY_IP  , то почему он использует именно прямой а не пытается через default пролезть ?? или это специфика соединения точка-точка ?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Соединение 'точка-точка' пытаюсь направлять через gateway, и..."
Сообщение от Xela emailИскать по авторуВ закладки on 19-Фев-04, 12:02  (MSK)
В общем, смотри как у меня сделано:
192.168.253.1 --- адрес vpn-server-а

в rc.conf:
ifconfig_ed0="DHCP"
defaultrouter="NO"
static_routes="vpn"
route_vpn="192.168.253.1 192.168.253.65"

т.е. прописан route до впн-сервера статиком.
После загрузки компа получаю следущую таблицу роутинга:
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            192.168.253.65     UGSc        3      185    ed0
127.0.0.1          127.0.0.1          UH          1       54    lo0
192.168.253.1      192.168.253.65     UGHS        2   163064    ed0
192.168.253.64/26  link#1             UC          2        0    ed0
192.168.253.65     00:80:48:19:ef:ab  UHLW        3        0    ed0    806

в mpd.conf:
        set iface route default

в логах mpd:
Feb 18 11:18:06 home mpd: [vpn] exec: /sbin/ifconfig ng1 xx.xx.xx.xx 192.168.19.242 netmask 0xffff
ffff -link0
Feb 18 11:18:06 home mpd: [vpn] exec: /sbin/route add xx.xx.xx.xx -iface lo0
Feb 18 11:18:06 home mpd: [vpn] exec: /sbin/route add 0.0.0.0 192.168.19.242

где 192.168.19.242 --- адрес дальней точки
И заметь! Никаких error code 256 что говорит о том, что комманды не выполнились( у тебя же: khome mpd: [work] exec: /sbin/ifconfig ng0 **ip** VPN_SERVER_IP netmask 0xffffffff -link0
khome mpd: [work] exec: command returned 256)

И все работает!

  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "Соединение 'точка-точка' пытаюсь направлять через gateway, и..."
Сообщение от Xela emailИскать по авторуВ закладки on 19-Фев-04, 12:04  (MSK)

>После загрузки компа получаю следущую таблицу роутинга:
Destination        Gateway    Flags   Refs      Use  Netif Expire
default            192.168.253.65     UGSc      3      185   ed0
^^^^^^^^^^ без этой строчки конечно. Брал из старых логов.
  Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "Соединение 'точка-точка' пытаюсь направлять через gateway, и..."
Сообщение от kD emailИскать по авторуВ закладки on 19-Фев-04, 14:20  (MSK)
>В общем, смотри как у меня сделано:
>192.168.253.1 --- адрес vpn-server-а
>
>route_vpn="192.168.253.1 192.168.253.65"
>
>т.е. прописан route до впн-сервера статиком.

>где 192.168.19.242 --- адрес дальней точки

Поясните, что это такое "дальняя точка" ?

>И заметь! Никаких error code 256 что говорит о том, что комманды
>не выполнились( у тебя же: khome mpd: [work] exec: /sbin/ifconfig ng0
>**ip** VPN_SERVER_IP netmask 0xffffffff -link0
>khome mpd: [work] exec: command returned 256)

Я понимаю, что 256 - это ошибка где-то возникла.

1. 192.168.253.65 - это gateway ?
2.
>Feb 18 11:18:06 home mpd: [vpn] exec: /sbin/ifconfig ng1 xx.xx.xx.xx >192.168.19.242 netmask 0xffffffff -link0


получается что Вы соединяетесь с некой дальней точкой, а не с сервером, почему ??

А вот я соединяюсь с сервером и что получается:

прописываю я роут :
10.0.0.1 - сервер
10.4.19.1 - gateway

Internet:
Destination Gateway Flags Refs Use Netif Expire
10.0.0.1 10.4.19.1 UGHS 1 0 ed0
10.4.19/24 link#1 UC 1 0 ed0
127.0.0.1 127.0.0.1 UH 0 0 lo0

все номально ...

в mpd.conf добавляю

set iface route default

начинаю соединятся с сервером 10.0.0.1
khome mpd: [work] exec: /sbin/ifconfig ng0 **ip** 10.0.0.1 netmask 0xffffffff -link0
khome mpd: [work] exec: command returned 256
khome mpd: [work] exec: /sbin/route add **ip** -iface lo0
khome mpd: [work] exec: command returned 256
khome mpd: [work] exec: /sbin/route add 0.0.0.0 10.0.0.1
khome mpd: [work] exec: command returned 256

да возникают ошибки, но вопрос именнов том, почему они возникают:

Возможно именно з-за наличия роута для 10.0.0.1:
10.0.0.1 10.4.19.1 UGHS 1 0 ed0

ведь при установке соединения mpd должен создать свой роут на 10.0.0.1
вроде:

10.0.0.1 **ip** UGHS 1 0 ed0

теперь он натыкается на проблему уже существования маршрута для 10.0.0.1 и не добавляет :(

Замкнутый круг получается ... для доступа к серверу нужен маршрут через gateway , а для установки соединения нужен маршрут через вирт. устройство ng0...

Поясните, что такое дальняя точка ... может это мне поможет ??

  Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "Соединение 'точка-точка' пытаюсь направлять через gateway, и..."
Сообщение от Xela emailИскать по авторуВ закладки on 19-Фев-04, 14:37  (MSK)
>1. 192.168.253.65 - это gateway ?
да.

>2.
>>Feb 18 11:18:06 home mpd: [vpn] exec: /sbin/ifconfig ng1 xx.xx.xx.xx >192.168.19.242 netmask 0xffffffff -link0
>получается что Вы соединяетесь с некой дальней точкой, а не с сервером,
>почему ??
Нет. мыже говорим о PTPP? То есть двух-точечном соединеии. С одной стороны -- точка ваша машина, с другой провайдера. Но это мелочи.
Не обращайте на это внимение. Этот адрес mpd получит и подставит сам.

>теперь он натыкается на проблему уже существования маршрута для 10.0.0.1 и не
>добавляет :(
Совершено верно!

>Замкнутый круг получается ... для доступа к серверу нужен маршрут через gateway
>, а для установки соединения нужен маршрут через вирт. устройство ng0...
Попробуй отключить default route в mpd.conf, установить соедниение и поиграться с роутингом руками.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "Соединение 'точка-точка' пытаюсь направлять через gateway, и..."
Сообщение от kD emailИскать по авторуВ закладки on 19-Фев-04, 15:56  (MSK)
>Нет. мыже говорим о PTPP? То есть двух-точечном соединеии. С одной стороны
>-- точка ваша машина, с другой провайдера. Но это мелочи.
>Не обращайте на это внимение. Этот адрес mpd получит и подставит сам.

Feb 18 11:18:06 home mpd: [vpn] exec: /sbin/ifconfig ng1 xx.xx.xx.xx  192.168.19.242 netmask 0xffffffff -link0

вот я и не понимаю:
у меня
khome mpd: [work] exec: /sbin/ifconfig ng0 **ip** VPN_SERVER_IP netmask 0xffffffff -link0

где **ip** - это то, что мне выделяет сервак, соответственно VPN_SERVER_IP - это сервер.

А У Вас получается наоборот:
Вы написали, что 192.168.253.1 --- адрес vpn-server-а
Как я понимаю это и есть вторая точка в соединении, но вы пишите

Feb 18 11:18:06 home mpd: [vpn] exec: /sbin/ifconfig ng1 xx.xx.xx.xx  192.168.19.242 netmask 0xffffffff -link0

И совсем становиться не понятно, если xx.xx.xx.xx  - это то что вам выделяет сервер, то что есть 192.168.19.242 ... как вторая точка ???

С роутингом поиграюсь конечно :))

  Рекомендовать в FAQ | Cообщить модератору | Наверх

8. "Соединение 'точка-точка' пытаюсь направлять через gateway, и..."
Сообщение от Xela emailИскать по авторуВ закладки on 19-Фев-04, 16:11  (MSK)
>Вы написали, что 192.168.253.1 --- адрес vpn-server-а
>Как я понимаю это и есть вторая точка в соединении, но вы
>пишите
Не совсем так.
Смотри:
mpd.links:
set pptp peer 192.168.253.1

ifconfig:
ng1: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> mtu 1500
        inet xx.xx.xx.xx --> 192.168.19.242 netmask 0xffffffff

mpd.log
Feb 18 11:18:02 home mpd: [vpn] device is now in state OPENING
Feb 18 11:18:02 home mpd: pptp0: connected to 192.168.253.1:1723
Feb 18 11:18:02 home mpd: pptp0: attached to connection with 192.168.253.1:1723
....
Feb 18 11:18:05 home mpd: [vpn] IPCP: SendConfigReq #13
Feb 18 11:18:05 home mpd:  IPADDR 0.0.0.0
Feb 18 11:18:05 home mpd:  COMPPROTO VJCOMP, 16 comp. channels, no comp-cid
Feb 18 11:18:05 home mpd: [vpn] IPCP: rec'd Configure Request #1 link 0 (Req-Sent)
Feb 18 11:18:05 home mpd:  IPADDR 192.168.19.242
Feb 18 11:18:05 home mpd:    192.168.19.242 is OK
Feb 18 11:18:05 home mpd:  COMPPROTO VJCOMP, 16 comp. channels, allow comp-cid
Feb 18 11:18:05 home mpd: [vpn] IPCP: SendConfigAck #1
Feb 18 11:18:05 home mpd:  IPADDR 192.168.19.242
Feb 18 11:18:05 home mpd:  COMPPROTO VJCOMP, 16 comp. channels, allow comp-cid
Feb 18 11:18:05 home mpd: [vpn] IPCP: state change Req-Sent --> Ack-Sent
Feb 18 11:18:06 home mpd: [vpn] rec'd unexpected protocol CCP on link 0, rejecting
Feb 18 11:18:06 home mpd: [vpn] IPCP: rec'd Configure Nak #13 link 0 (Ack-Sent)
Feb 18 11:18:06 home mpd:  IPADDR xx.xx.xx.xx
Feb 18 11:18:06 home mpd:    xx.xx.xx.xx is OK
Feb 18 11:18:06 home mpd: [vpn] IPCP: SendConfigReq #14
Feb 18 11:18:06 home mpd:  IPADDR xx.xx.xx.xx
Feb 18 11:18:06 home mpd:  COMPPROTO VJCOMP, 16 comp. channels, no comp-cid

  Рекомендовать в FAQ | Cообщить модератору | Наверх

9. "Соединение 'точка-точка' пытаюсь направлять через gateway, и..."
Сообщение от kD emailИскать по авторуВ закладки on 19-Фев-04, 17:42  (MSK)

>ifconfig:
>ng1: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> mtu 1500
>        inet xx.xx.xx.xx --> 192.168.19.242 netmask 0xffffffff

те вам сервер "выдает" как xx.xx.xx.xx так и 192.168.19.242
понятно, но это у вас так. У меня же при коннекте к серверу не меняется вторая (дальняя) точка, а остается адресом самого сервера 10.0.0.1.

Спасибо, попытаюсь еще руками роуты покапать, вечером, завтра напишу чего получилось :))

  Рекомендовать в FAQ | Cообщить модератору | Наверх

10. "Соединение 'точка-точка' пытаюсь направлять через gateway, и..."
Сообщение от kD emailИскать по авторуВ закладки on 19-Фев-04, 22:13  (MSK)
Есс Всем спасибо огромное, все получилось !!

  Рекомендовать в FAQ | Cообщить модератору | Наверх

11. "Соединение 'точка-точка' пытаюсь направлять через gateway, и..."
Сообщение от Xela emailИскать по авторуВ закладки on 20-Фев-04, 09:28  (MSK)
>Есс Всем спасибо огромное, все получилось !!

Так хоть бы рассказал что к чему! Интересно же.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

12. "Соединение 'точка-точка' пытаюсь направлять через gateway, и..."
Сообщение от kD emailИскать по авторуВ закладки on 20-Фев-04, 18:03  (MSK)
Рассказываю:

Пусть есть ВПН сервер (10.0.0.1)
Пусть есть компьютер, который мы хотим к серверу подсоединить, с внешним интерфейсом (10.4.19.3)
И есть шлюз,который позволяет нам подсоединяться к серверу
(шлюз 10.4.19.1) На самом деле вся беда именнно в его наличии (более подробно ниже).

Для соединения используем mpd (была попытка на pptp-client,но из=за меньшего количества настроек пришлось отказаться).

Вот конфиг с условием, что мой сервер не требует криптования и компресии (хотя с последним тоже работает):

Настройки mpd:

------------mpd.conf---------

default:
load work

work:
new -i ng0 work work
set ipcp enable req-pri-dns req-sec-dns
set link disable chap pap
set link accept chap
set iface idle 0
set bundle authname "******"
set bundle password "******"
set iface disable on-demand
open

-----------mpd.links---------

work:
set link type pptp
set pptp peer 10.0.0.1
set pptp enable originate outcall


Запускаем: mpd

Получаем лог:

Обрезал, но сверху все должно удачно пройти, те
должны быть получены ДНС адреса и внешний **ip**.
....................
Feb 15 20:20:51 khome mpd: [work] IPCP: LayerUp
Feb 15 20:20:51 khome mpd: **ip** -> 10.0.0.1
Feb 15 20:20:51 khome mpd: [work] IFACE: Up event
Feb 15 20:20:51 khome mpd: [work] setting interface ng0 MTU to 1500 bytes
Feb 15 20:20:51 khome mpd: [work] exec: /sbin/ifconfig ng0 **ip** 10.0.0.1 netmask 0xffffffff -link0
Feb 15 20:20:51 khome mpd: [work] exec: /sbin/route add **ip** -iface lo0
Feb 15 20:20:51 khome mpd: [work] exec: command returned 256
Feb 15 20:20:51 khome mpd: [work] IFACE: Up event
Feb 15 20:20:52 khome mpd: [work] error writing len 16 frame to bypass: Resource deadlock avoided

Вот тут и не получалось, а вот почему :
Для доступа к серверу (10.0.0.1) требуется наличие шлюза 10.4.19.1, который до соединения был шлюзом по умолчанию и все запросы на 10.0.0.1 шли просто на его, так как не было прописано прямого роута.
А теперь mpd предполагая,что между сервером и клиентом ничего нет прописывает:

10.0.0.1 **ip** UH 1 1 ng0

то есть появляется прямой роут для 10.0.0.1, но на самом деле в данным момент теряется связь с 10.0.0.1, так как компьютер перестает понимать , что для доступа к 10.0.0.1 нужно обязательно идти через 10.4.19.1 (шлюз).

Вот и происходит поднятие интерфейса ng0, но возможности работать через него нет, так как нет свзи с 10.0.0.1.

Решение:

В тот момент, когда была достигнута ошибка, mpd не срывает соединение (в отличие, кстати, от pptp-client'a), а, если было указано max в mpd.conf в строке set link keep-alive seconds max, то перезапускает соединение по достижению max. Но я использую seconds =0  и max =0 , что позволяет не перезапускать соединение вообще.

Дело за малым:

Удаляем маршрут 10.0.0.1 **ip** UH 1 1 ng0
(route delete 10.0.0.1)
Создаем то, что нам нужно (route add 10.0.0.1 10.4.19.1)
далее следуя рекомендациям статьи http://www.cs.rpi.edu/~flemej/fbsd-cisco-vpn/fbsd-cisco-vpn.pdf
удаляем шлюз (route delete default)
и создаем новый шлюз (route add default -interface ng0)

И все начинает работать!

Большое спасибо Xela и Freestyle за дельные советы и объяснения!

  Рекомендовать в FAQ | Cообщить модератору | Наверх

13. "Соединение 'точка-точка' пытаюсь направлять через gateway, и..."
Сообщение от VladimirV emailИскать по авторуВ закладки on 25-Янв-05, 17:03  (MSK)
у меня ситуация похожа на твою но вот только ничего не получилось даже после твоих пояснений.
Если не трудно покажи пожалуйста еще и таблицу маршрутизации.
  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру