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

Исходное сообщение
"VPN и роутинг"

Отправлено Klice , 12-Янв-04 14:04 
Вообщем есть следующие. Машина на FreeBSD, два интерфейса:
ex0 - смотрит в сторону моей локалки (192.168.0.10/255.255.255.192)
ed0 - в сторону ISP (192.168.0.12/255.255.255.0)
У прова есть VPN сервер через который выходят в инет (при подключении дает адрес 192.168.100.102).
Хочу получить следующие:
1) сдалать обычный роутинг между сетями без всяких ограничений и учета трафика.
2) сдать NAT и VPN сервер что бы выходить в интернет из моей локалки, причем так что бы в VPN была возможность авторизации по имени и паролю, который я задам для каждого свой, и учет трафика для всех пользователей с возможностью его ограничение.
3) что бы соединение с VPN устанавливалось только когда оно нужно, а не всегда.

Что сделанно, но не работает:
В ядре:
options         IPFIREWALL
options         IPFIREWALL_VERBOSE
options         IPFIREWALL_VERBOSE_LIMIT=100
options         IPDIVERT

В /etc/rc.conf:
ifconfig_ex0="inet 192.168.0.10  netmask 255.255.255.192"
ifconfig_ed0="inet 192.168.10.12  netmask 255.255.255.0"
gateway_enabled="YES"

В /usr/local/etc/rc.d/fw.sh:
#!/bin/sh
/sbin/ipfw -f flush
/sbin/ipfw add divert natd all from any to any via tun0
/sbin/ipfw add pass all from any to any

В /usr/local/etc/rc.d/nat.sh:
#!/bin/sh
pptp 192.168.10.1 vpn &
/sbin/natd -f /etc/natd.conf -a 192.168.100.102 -s

В /etc/ppp/ppp.conf:
vpn:
set authname *******
set authkey ******
set timeout 0
set ifaddr 0 0
add default HISADDR

В /ect/natd.conf:
same_ports yes
use_sockets yes

Вот это все не работает, ни роутинг ни инет, даже не пингуется DNS сервер который я получаю при соеденении (192.168.11.1). Помогите сделать то что я хочу, желательно поподробнее ))

PS: В фрихи я новенький, потому попрошу сильно ногами не пинать, если где чушь сморозил )))
PSS: Зарание спасибо


Содержание

Сообщения в этом обсуждении
"VPN и роутинг"
Отправлено A Clockwork Orange , 12-Янв-04 14:37 
>Вообщем есть следующие. Машина на FreeBSD, два интерфейса:
>ex0 - смотрит в сторону моей локалки (192.168.0.10/255.255.255.192)
>ed0 - в сторону ISP (192.168.0.12/255.255.255.0)
>У прова есть VPN сервер через который выходят в инет (при подключении
>дает адрес 192.168.100.102).
>Хочу получить следующие:
>1) сдалать обычный роутинг между сетями без всяких ограничений и учета трафика.
>
>2) сдать NAT и VPN сервер что бы выходить в интернет из
>моей локалки, причем так что бы в VPN была возможность авторизации
>по имени и паролю, который я задам для каждого свой, и
>учет трафика для всех пользователей с возможностью его ограничение.
>3) что бы соединение с VPN устанавливалось только когда оно нужно, а
>не всегда.
>
>Что сделанно, но не работает:
>В ядре:
>options         IPFIREWALL
>options         IPFIREWALL_VERBOSE
>options         IPFIREWALL_VERBOSE_LIMIT=100
>options         IPDIVERT
>
>В /etc/rc.conf:
>ifconfig_ex0="inet 192.168.0.10  netmask 255.255.255.192"
>ifconfig_ed0="inet 192.168.10.12  netmask 255.255.255.0"
>gateway_enabled="YES"
>
>В /usr/local/etc/rc.d/fw.sh:
>#!/bin/sh
>/sbin/ipfw -f flush
>/sbin/ipfw add divert natd all from any to any via tun0
>/sbin/ipfw add pass all from any to any
>
>В /usr/local/etc/rc.d/nat.sh:
>#!/bin/sh
>pptp 192.168.10.1 vpn &
>/sbin/natd -f /etc/natd.conf -a 192.168.100.102 -s
>
>В /etc/ppp/ppp.conf:
>vpn:
> set authname *******
> set authkey ******
> set timeout 0
> set ifaddr 0 0
> add default HISADDR
>
>В /ect/natd.conf:
>same_ports yes
>use_sockets yes


[-use_sockets | -s]  - два раза писать одно не обязательно

сначала запускается fw.sh и ругается на несуществование tun
интересно ты поднимаешь vpn

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


>
>Вот это все не работает, ни роутинг ни инет, даже не пингуется
>DNS сервер который я получаю при соеденении (192.168.11.1). Помогите сделать то
>что я хочу, желательно поподробнее ))
>
>PS: В фрихи я новенький, потому попрошу сильно ногами не пинать, если
>где чушь сморозил )))
>PSS: Зарание спасибо


Сделай одну часть а потом другую так легче будет контролировать все


"VPN и роутинг"
Отправлено Klice , 12-Янв-04 15:32 

>[-use_sockets | -s]  - два раза писать одно не обязательно
>
>сначала запускается fw.sh и ругается на несуществование tun
>интересно ты поднимаешь vpn
Понял, исправил, но не в этом дело было, я и руками запускал все, не пашет
>
>Судя по желаемому тебе нужно что бы шлюз был одновременно и  
>VPN клиентом (для провайдера) и VPN сервером  ( для клиентов
>локальной сети )
>
ага, точно

>>
>>Вот это все не работает, ни роутинг ни инет, даже не пингуется
>>DNS сервер который я получаю при соеденении (192.168.11.1). Помогите сделать то
>>что я хочу, желательно поподробнее ))
>>
>>PS: В фрихи я новенький, потому попрошу сильно ногами не пинать, если
>>где чушь сморозил )))
>>PSS: Зарание спасибо
>
>
>Сделай одну часть а потом другую так легче будет контролировать все
согласен, первый вопрос, почему роутинг не работает?
ну как бы время поджимает, народ требует )))
вот и обращаюсь, мож знает кто как это сделать


"VPN и роутинг"
Отправлено A Clockwork Orange , 12-Янв-04 15:40 
Зафигач поиск по VPN есть отличные ссылки, по отдельности все настроишь , точно заработает, очень много отличных ссылок.
А потом уже сделаешь соединение по требованию.

"VPN и роутинг"
Отправлено Klice , 13-Янв-04 08:45 
Ну объясните пожалуста, почему вот эта конструкция не работает, ведь вроде все по докам сделанно



"VPN и роутинг"
Отправлено A Clockwork Orange , 13-Янв-04 09:46 
Где по докам то, какой VPN ты ипользуешь?
Что конкретно не работает? Твоей сервер подключается к VPN гейту провайдеру? Инет есть?

"VPN и роутинг"
Отправлено Klice , 13-Янв-04 12:41 
>Где по докам то, какой VPN ты ипользуешь?
>Что конкретно не работает? Твоей сервер подключается к VPN гейту провайдеру? Инет
>есть?

через PPtP подключается, но даже сервак не пингуется, говорит нет пути до хоста, прописываю мой айпи который выдается при подключении (192.168.100.102) как дефаулт роутер, в этом случае сервер тоже не пингуется, но уже ни чего не говорит.

и самое главное: Ну почему роутинг то между сетями не пашет?!


"VPN и роутинг"
Отправлено A Clockwork Orange , 13-Янв-04 13:17 
приконнектись к провайдеру
дай
ifconfig
netstat -r

"VPN и роутинг"
Отправлено Klice , 14-Янв-04 11:23 
>приконнектись к провайдеру
>дай
>ifconfig
>netstat -r

вот что получилось:

Server# ifconfig
ex0: flags=843<UP,BROADCAST,RUNNING,SIMPLEX> mtu 1500
        inet 192.168.0.10 netmask 0xffffffc0 broadcast 192.168.0.63
        ether 00:aa:00:69:aa:e2
        media: Ethernet 10baseT/UTP
lp0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> mtu 1500
ed0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        inet 192.168.10.12 netmask 0xffffff00 broadcast 192.168.10.255
        ether 00:c0:df:50:7e:ce
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
        inet 127.0.0.1 netmask 0xff000000
ppp0: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
sl0: flags=c010<POINTOPOINT,LINK2,MULTICAST> mtu 552
faith0: flags=8002<BROADCAST,MULTICAST> mtu 1500
tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1498
        inet 192.168.100.102 --> 192.168.11.1 netmask 0xffffffff
        Opened by PID 159

Server# netstat -r
Routing tables

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            192.168.11.1       UGSc        0        0   tun0
localhost.kolom.ru localhost.kolom.ru UH          0        0    lo0
192.168.0/26       link#1             UC          6        0    ex0
192.168.0.1        00:01:02:ca:0c:24  UHLW        2      119    ex0    969
192.168.0.3        00:50:22:e1:c1:36  UHLW        1       76    ex0    969
192.168.0.5        00:00:17:00:04:34  UHLW        1       59    ex0    969
192.168.0.6        00:e0:4c:79:00:86  UHLW        1       65    ex0    785
Server             00:aa:00:69:aa:e2  UHLW        0      906    lo0
192.168.0.63       ff:ff:ff:ff:ff:ff  UHLWb       3       43    ex0
192.168.10.0       ff:ff:ff:ff:ff:ff  UHLWb       0        2    ed0 =>
192.168.10         link#3             UC          4        0    ed0
192.168.10.1       00:50:8b:07:d8:20  UHLW        2      208    ed0    801
192.168.10.35      00:02:44:4f:4e:d8  UHLW        1       55    ed0    969
192.168.10.255     ff:ff:ff:ff:ff:ff  UHLWb       2       43    ed0
192.168.11.1       192.168.100.102    UH          1       11   tun0


"VPN и роутинг"
Отправлено A Clockwork Orange , 14-Янв-04 11:46 
Хорошо
ping 192.168.11.1
что показывает?

"VPN и роутинг"
Отправлено Klice , 14-Янв-04 13:12 
>Хорошо
>ping 192.168.11.1
>что показывает?

ни чего, по таймауту все вылетает


"VPN и роутинг"
Отправлено A Clockwork Orange , 14-Янв-04 13:15 
ping 192.168.100.102
И проверьте фаерволл у себя и у провайдера

"VPN и роутинг"
Отправлено Klice , 14-Янв-04 14:28 
>ping 192.168.100.102
>И проверьте фаерволл у себя и у провайдера

пингует, файр вол у меня:
ipfw add pass all form any to any

у прова не знаю, но должен быть в порядке, т.к. в винде все без проблем работает


"VPN и роутинг"
Отправлено A Clockwork Orange , 14-Янв-04 14:44 
чего нибудь в руководстве pptpclient может есть?

"VPN и роутинг"
Отправлено A Clockwork Orange , 14-Янв-04 14:46 
cat /var/log/security
Покажи при пинге


Протокол PPTP использует следующие порты и протоколы:
На сервере - порт 1723, протокол TCP.
У клиента (т.е. у Вас) - некий верхний порт (>1023), протокол TCP.
С обеих сторон - протокол GRE (для создания туннеля).


"VPN и роутинг"
Отправлено Klice , 14-Янв-04 15:36 
>cat /var/log/security
>Покажи при пинге
>
пустой он у меня :)



"VPN и роутинг"
Отправлено A Clockwork Orange , 14-Янв-04 15:39 
65533 allow log all from any to any
65534 deny log all from any to any
65535 deny log ip from any to any
Добавь и покажи что просил

"VPN и роутинг"
Отправлено Klice , 14-Янв-04 16:12 
>65533 allow log all from any to any
>65534 deny log all from any to any
>65535 deny log ip from any to any
>Добавь и покажи что просил

я навенрно мдленный, но все равно он у меня пустой


"VPN и роутинг"
Отправлено A Clockwork Orange , 14-Янв-04 16:16 
ipfw show

"VPN и роутинг"
Отправлено Klice , 24-Янв-04 17:59 
>ipfw show

прошу прощения что не отвечал долго, вот:

00100 399 55711 allow ip from any to any
65533   0     0 allow log logamount 100 ip from any to any
65534   0     0 deny log logamount 100 ip from any to any
65535  19  1090 deny ip from any to any



"VPN и роутинг"
Отправлено Klice , 24-Янв-04 18:11 
>>ipfw show
>
>прошу прощения что не отвечал долго, вот:
>
>00100 399 55711 allow ip from any to any
>65533   0     0 allow log logamount
>100 ip from any to any
>65534   0     0 deny log logamount
>100 ip from any to any
>65535  19  1090 deny ip from any to any

поправка, вот что выдает ipfw при попытке добавить последнее правило:
ip_fw.ctl: can't add rule 65535
ipfw: getsockopt(IP_FW_ADD): Invalid argument


"VPN и роутинг"
Отправлено EHoT , 15-Янв-04 00:21 
>Вообщем есть следующие. Машина на FreeBSD, два интерфейса:
>ex0 - смотрит в сторону моей локалки (192.168.0.10/255.255.255.192)

подсеть класса С?
если С, то получаем - 192.168.0.0/26, или если ограничивать по маске 192 -62 машины. смотри утилиту ipcalc в портах

>ed0 - в сторону ISP (192.168.0.12/255.255.255.0)

тоже интересная сеть. 0.12 - всегда был не сетью а ip адресом ) см выше пример, то маска /24 либо 255.255.255.0

>У прова есть VPN сервер через который выходят в инет (при подключении
>дает адрес 192.168.100.102).

оригинальный пров )

>Хочу получить следующие:
>1) сдалать обычный роутинг между сетями без всяких ограничений и учета трафика.
>
>2) сдать NAT и VPN сервер что бы выходить в интернет из
>моей локалки, причем так что бы в VPN была возможность авторизации
>по имени и паролю, который я задам для каждого свой, и
>учет трафика для всех пользователей с возможностью его ограничение.

как только ты подымаешь на одном интерфейсе VPN & Nat - тебе на наруднем интерфейсе надо real-ip. Иначе не работает. Проверенно.
а у прова на реальном соединении должен тоже стоять реал-ай.пи.

>3) что бы соединение с VPN устанавливалось только когда оно нужно, а
>не всегда.

просто в Inetd прописываешь порт, и при запросе на него идет индентификация, лучше вирт. порт squid'а например.

>Что сделанно, но не работает:
>В ядре:
>options         IPFIREWALL
>options         IPFIREWALL_VERBOSE
>options         IPFIREWALL_VERBOSE_LIMIT=100
>options         IPDIVERT
>
>В /etc/rc.conf:
>ifconfig_ex0="inet 192.168.0.10  netmask 255.255.255.192"
>ifconfig_ed0="inet 192.168.10.12  netmask 255.255.255.0"
>gateway_enabled="YES"
>
>В /usr/local/etc/rc.d/fw.sh:
>#!/bin/sh
>/sbin/ipfw -f flush
>/sbin/ipfw add divert natd all from any to any via tun0
>/sbin/ipfw add pass all from any to any
>
>В /usr/local/etc/rc.d/nat.sh:
>#!/bin/sh
>pptp 192.168.10.1 vpn &
>/sbin/natd -f /etc/natd.conf -a 192.168.100.102 -s
>
>В /etc/ppp/ppp.conf:
>vpn:
> set authname *******
> set authkey ******
> set timeout 0
> set ifaddr 0 0
> add default HISADDR

а не pptpd разве надо настраивать?

>
>В /ect/natd.conf:
>same_ports yes
>use_sockets yes
>
>Вот это все не работает, ни роутинг ни инет, даже не пингуется
>DNS сервер который я получаю при соеденении (192.168.11.1). Помогите сделать то
>что я хочу, желательно поподробнее ))

хех. почитал б маны & how-to сначала.


"VPN и роутинг"
Отправлено EHoT , 16-Янв-04 10:07 
в догонку

http://www.artifact.spb.ru/labs/mpd.shtml
тут VPN  описывается

http://www.artifact.spb.ru/labs/short/short-rec3.shtml
тут настройка natd и сервера

и вообще неплохие рещения по реализации задач


"VPN и роутинг"
Отправлено A Clockwork Orange , 16-Янв-04 10:43 
>>Вообщем есть следующие. Машина на FreeBSD, два интерфейса:
>>ex0 - смотрит в сторону моей локалки (192.168.0.10/255.255.255.192)
>
>подсеть класса С?
>если С, то получаем - 192.168.0.0/26, или если ограничивать по маске 192
>-62 машины. смотри утилиту ipcalc в портах
>
>>ed0 - в сторону ISP (192.168.0.12/255.255.255.0)
>
>тоже интересная сеть. 0.12 - всегда был не сетью а ip адресом
>) см выше пример, то маска /24 либо 255.255.255.0

        С адресами у него просто опечатка вначале, смотри вывод ifconfig
        И почему нельзя использовать нулевую сеть?

>>У прова есть VPN сервер через который выходят в инет (при подключении
>>дает адрес 192.168.100.102).
>
>оригинальный пров )

      Значит пров берет на себя трансляцию адресов, может вообще инет  
      получается через сеть провайдера.

>
>>Хочу получить следующие:
>>1) сдалать обычный роутинг между сетями без всяких ограничений и учета трафика.
>>
>>2) сдать NAT и VPN сервер что бы выходить в интернет из
>>моей локалки, причем так что бы в VPN была возможность авторизации
>>по имени и паролю, который я задам для каждого свой, и
>>учет трафика для всех пользователей с возможностью его ограничение.
>
>как только ты подымаешь на одном интерфейсе VPN & Nat - тебе
>на наруднем интерфейсе надо real-ip. Иначе не работает. Проверенно.
>а у прова на реальном соединении должен тоже стоять реал-ай.пи.


      Где такие ограничения на нат описаны?


>
>>3) что бы соединение с VPN устанавливалось только когда оно нужно, а
>>не всегда.
>
>просто в Inetd прописываешь порт, и при запросе на него идет индентификация,
>лучше вирт. порт squid'а например.


>
>>Что сделанно, но не работает:
>>В ядре:
>>options         IPFIREWALL
>>options         IPFIREWALL_VERBOSE
>>options         IPFIREWALL_VERBOSE_LIMIT=100
>>options         IPDIVERT
>>
>>В /etc/rc.conf:
>>ifconfig_ex0="inet 192.168.0.10  netmask 255.255.255.192"
>>ifconfig_ed0="inet 192.168.10.12  netmask 255.255.255.0"
>>gateway_enabled="YES"
>>
>>В /usr/local/etc/rc.d/fw.sh:
>>#!/bin/sh
>>/sbin/ipfw -f flush
>>/sbin/ipfw add divert natd all from any to any via tun0
>>/sbin/ipfw add pass all from any to any
>>
>>В /usr/local/etc/rc.d/nat.sh:
>>#!/bin/sh
>>pptp 192.168.10.1 vpn &
>>/sbin/natd -f /etc/natd.conf -a 192.168.100.102 -s
>>
>>В /etc/ppp/ppp.conf:
>>vpn:
>> set authname *******
>> set authkey ******
>> set timeout 0
>> set ifaddr 0 0
>> add default HISADDR
>
>а не pptpd разве надо настраивать?


      вот тебе ссылочка в ответ
      http://www.vzletka.net/net/serv/os/unix/
      автор делал точно как тут описано

>
>>
>>В /ect/natd.conf:
>>same_ports yes
>>use_sockets yes
>>
>>Вот это все не работает, ни роутинг ни инет, даже не пингуется
>>DNS сервер который я получаю при соеденении (192.168.11.1). Помогите сделать то
>>что я хочу, желательно поподробнее ))
>
>хех. почитал б маны & how-to сначала.