Исходные данные:
Есть две корпоративные локальные сети(192.168.0.0/24 и 192.168.2.0/24) находятся в разных частях города в разных офисах,в обоих сетях есть сервер FreeBsd 7.3.
Интернет провайдер по витой паре дает 25 мбит в первом офисе, на сервере есть белый айпи.
Кроме интернета по тем же проводам ходит городская локальная сеть с бесплатным трафиком 100 мбит.
Второй офис соответственно со вторым сервером FreeBSD тоже подключен к сети провайдера, но не имеет реального айпи и не имеет маршрутизации в интернет. С первым сервером связан на серых айпишниках(172.16.x.x - 172.16.x.y).Задача поднять VPN между двумя фряхами, чтобы windows юзеры обоих локальных сетей видели друг друга в пределах одной рабочей группы. И соответственно имели доступ к интернету. Ключевой отличие от типичной задачи, чтобы VPN ходил на серых транспортных айпи, потому как локальный городской трафик у провайдера не тарифицируется. С помощью VPN канала корпоративная сеть будет защищена от просмотра из городской сети другими абонентами.
Рассматривается вариант mpd5 для VPN канала, и затем ipnat для интернета из 192.168.x.x машин.
Просидел уже пару недель над этим вопросом где то есть какие то грабли не работает....
Первый сервер Freebsd с реальным IP
на одной сетевухе 192.168.0.1 первая корпоративная локалка
на второй 172.16.0.1 (транспорт для VPN) и алиасом реальный IP 1.3.4.5(сюда приходит интернет.)-подключена в сеть провайдера.
Второй сервер Freebsd
на одной сетевухе 192.168.2.1 - вторя корпоративная локалка
на второй 172.16.0.2 (транспорт для VPN)подключена в сеть провайдера
mpd.conf
startup:
default:
<------>load pptp_vpn
pptp_vpn:
<------>create bundle static pptp1
<------>set ipcp ranges 192.168.0.1/32 192.168.2.1/32
<------>set ipcp dns 8.8.8.8
<------>set iface route 192.168.2.0/24
<------>set iface enable proxy-arp
<------>set face enable on-demand
# Enable Microsoft Point-to-Point encryption (MPPE)
<------>set bundle enable compression
<------>set ccp yes mppc
<------>set mppc yes e40
<------>set mppc yes e128
<------>set mppc enable compress
<----->set bundle enable crypt-reqd
<----->set mppc yes stateless
<------>
<------>create link static Lpptp1 pptp
<------>set link action bundle pptp1
# Enable both sides to authenticat each other with CHAP
<------>set link no pap chap eap
<------>set link yes chap
<------>set auth authname "usera"
<------>set auth password "passworda"
<------>set link mtu 1460
<------>set link keep-alive 20 75
<------>set link max-redial -1
# Configure PPTP and open link
<------>set pptp peer 172.16.0.2
<------>set link enable incoming
mpd.conf со второго сервера.
startup:
default:
<------>load pptp_client
pptp_client:
<------>create bundle static B1
<------>set iface route default
<------>set ipcp ranges 0.0.0.0/0 0.0.0.0/0
<------>
<------>create link static L1 pptp
<------>set link action bundle B1
<------>set auth authname "usera"
<------>set auth password "passworda"
<------>set link max-redial 0
<------>set link mtu 1460
<------>set link keep-alive 20 75
<------>set pptp peer 172.16.0.1
<------>set pptp disable windowing
<------>open
шлюзом у втрого сервера стоит стоит ip первого 192.168.0.1
Канал поднимается. Пакеты в мир летят из обоих подсетей. Но локалки друг другу не видны.