Вообще всегда использовал ipfw, думаю трансформировать сможешь.
#вот это, сразу после описаний переменных
pass all from any to any via $if_in
pass all from any to any via $if_vpn
pass all from $vpn_network to $our_network
pass all from $our_network to $vpn_network
в rc.conf
gateway_enable="YES"
стоит?
gateway_enable="YES"
канешно стоит
а вот это видишь правило
[div class=\'codetop\']CODE[div class=\'codemain\' style=\'height:200px;white-space:pre;overflow:auto\']pass quick all keep state
оно означает что разрешить БЫСТРЫЙ/МГНОВЕННЫЙ проход всех пакетов с возможностью прекращения фильтрации в будующем
вообщем я его поставил в самом начале экрана и при попадании на него любого пакета она сразуже срабатывает тобишь пропускает всех хоть куда....
Почему я и коментирую его как временное правило.
pass quick all keep state
Видишь в чём фишка первое:
1. ВПН подсетка она получается прикрепленна фактически не к внутреннему интерфейсу, а к логичиескому когда mpd ставишь то в старых версия ты заранее описываешь коллво интерфейсов, а в 5ом я заметил что сколько ты выделил в опции set ippool add poolsat 192.168.0.1 192.168.0.50 стоко у тя и подымется при подключении ВПН_клиентов, т.е. есть есть текущих 1о подключения то у тя на ifconfig
[div class=\'codetop\']CODE[div class=\'codemain\' style=\'height:200px;white-space:pre;overflow:auto\']
ivc_router /etc# ifconfig
sis0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=8<VLAN_MTU>
ether 00:01:6c:ad:33:12
inet xxx.yyy.zzz.qqq netmask 0xfffffff8 broadcast ййй.ццц.ууу.ййй
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
xl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=8<VLAN_MTU>
ether 00:60:97:20:e1:eb
inet 192.168.0.175 netmask 0xffff0000 broadcast 192.168.255.255
inet 192.168.1.175 netmask 0xffff0000 broadcast 192.168.255.255
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
plip0: flags=108810<POINTOPOINT,SIMPLEX,MULTICAST,NEEDSGIANT> metric 0 mtu 1500
pflog0: flags=0<> metric 0 mtu 33204
pfsync0: flags=0<> metric 0 mtu 1460
syncpeer: 224.0.0.240 maxupd: 128
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x6
inet6 ::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000
ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1396
inet 192.168.0.175 --> 192.168.0.26 netmask 0xffffffffа не как раньше все 50 висели...
вот если бы было бы просто 502 компа образно 256 сидят в 192.168.1.0/24 а другие 256 в 192.168.0.0/24 можно было бы тупо ни парить мозга маку сделать /16 и всё, но с ВПН клиентами это не проканывает и блин ты глянь как я натю:
[div class=\'codetop\']CODE[div class=\'codemain\' style=\'height:200px;white-space:pre;overflow:auto\']
nat on $if_out from { $if_in:network } to any -> $if_out
и чё ты думаешь ВПНовские клиенты транслируются и лазят в инет !!!
я понимаю что я чегото просто не догоняю а точнее в голове не правильно рисую вот и прошу ваше помощи.
Видишь когда я ВПН подсеть начу то она тогда "ПОИДЕИ" должно вылазить в локалку с IP маршрутизатора 192.168.1.175 и всё свободно видеть всё гуд - НО (это 2ое но), причём локалка то видет ВПНовскую подсет без всяких там заначивании...
выявил я это методом подбора вот если в pf.conf
[div class=\'codetop\']CODE[div class=\'codemain\' style=\'height:200px;white-space:pre;overflow:auto\']
nat on $if_out from { $if_in:network } to any -> $if_out
pass quick all keep state
- тогда бред какой то начинается с ВПН_сети народ половина пингуют половина компов нет.....
+ я так же из локалки пингую половина ВПНщиков половина нет
и с сервера также самого я ВПНщиков пингую местами каво нет каво да..... бред какой то....
выдаю mpd.conf
[div class=\'codetop\']CODE[div class=\'codemain\' style=\'height:200px;white-space:pre;overflow:auto\']
startup:
# Nastroika Lokalnix monitorov c adminskimi pravami
# (login: Admin PASSW: Admin)
set user login passw admin
# po telnet`y
# set console self 127.0.0.1 5005
# set console open
# 4erez WEB interface
set web self xxx.yyy.zzz.qqq 5006
set web open
default: # Zagruzaem profil po default`y
load vpn
vpn: #Cam profile
set ippool add vpn_network 192.168.0.1 192.168.0.50
create bundle template B
set iface enable proxy-arp
set iface idle 1800
set iface enable tcpmssfix
set ipcp yes vjcomp
# Specify IP address pool for dynamic assigment -
# zdes zadaem gateway Dla VPN-clientskix ta4ek 192.168.0.1 - 192.168.0.50
# mozno sdelatb tak "set ipcp ranges 192.168.0.255/32 ippool poolsat"
set ipcp ranges 192.168.0.175/32 ippool vpn_network
# NASHI DNS servera vnytrennie i vneshnii na vsak pozarnii
# Причём первый ДНС ВПНщики не хавают пожтому пришлось поставить вторым ВНЕШНИЙ
set ipcp dns 192.168.1.252 yyy.dns.vnesh.IP
# The five lines below enable Microsoft Point-to-Point encryption
# (MPPE) using the ng_mppc(

netgraph node type.
# KARO4E podderzka Win Microsoft shifrovania
set bundle enable compression
set ccp yes mppc
set mppc yes e40
set mppc yes e128
set mppc yes stateless
create link template L pptp
set link action bundle B
# Multilink adds some overhead, but gives full 1500 MTU
# NAstroiki Dla podderzki MTU v 1500 bait
set link enable multilink
set link yes acfcomp protocomp
set link mtu 1460
#vIKLYSHAEM pap-zashity
set link no pap chap
set link enable chap
set link keep-alive 10 60
# moi vnishnii IP na kotorom po 1723 port`y slyshaet MPD5
set pptp self xxx.yyy.zzz.qqq
# Bkly4aem vxodashie zvonki - zapros na soedinenie
set link enable incoming
rИ ещё кстати посмотрите МТU я выставляю в настройках MPD 1460
в реале у меня
ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1396
inet 192.168.0.175 --> 192.168.0.26 netmask 0xffffffff
ng1: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1396
inet 192.168.0.175 --> 192.168.0.29 netmask 0xffffffff
ng2: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1396
inet 192.168.0.175 --> 192.168.0.4 netmask 0xffffffff
ng3: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1396
inet 192.168.0.175 --> 192.168.0.7 netmask 0xffffffff
Мистика какая то ......
настраивал по этим манам
http://www.lissyara.su/?id=1680http://www.lissyara.su/?id=1258по первой ссылке парень в ipfw делал так:
# NATd - вот правило транслирования адресов для двух сетей разделены
${fwcmd} nat 123 config ip 218.22.33.218
${fwcmd} add nat 123 ip from 192.168.0.248/29 to not 192.168.0.0/24{1-231,240-254}
${fwcmd} add nat 123 ip from 192.168.0.0/24{1-231,240-249} to any
${fwcmd} add nat 123 ip from any to 218.22.33.218 via bce0
# далее идут правила для всех клиентов, обслуживаемых через NAT: запросы из LAN в мир