поднят VPN на базе MPD 3.18Клиенты конектятся, через сквид прекрасно работает. Но как только отключил сквид оказалось что невожможно почти никуда зайти (реально зашло только на www.ya.ru). Правила ipfw такие.
vpnnet=192.168.10.0/24
ipinet=xxx.xxx.xxx.xxxipfw add divert natd ip from ${vpnnet} to any out xmit ppp0
ipfw add divert natd ip from any to ${ipinet}
ipfw add allow ip from any to anyв чем здесь загвоздка ?
>Клиенты конектятся, через сквид прекрасно работает. Но как только отключил сквид оказалось
>что невожможно почти никуда зайти (реально зашло только на www.ya.ru).Если клиенты виндовые, попробуй, в настройках VPN подключения, выключить галку: Networking\Internet Protocol (TCP\IP)\Properties\Advanced\Use default gateway on remote network
Смысл такой, после VPN подключения, шлюзом по-умолчанию становится, IP выданный VPN-сервером, т.е. рабочая станция становится сама-себе шлюзом и для удаленной сети, и для интернета.
>>Клиенты конектятся, через сквид прекрасно работает. Но как только отключил сквид оказалось
>>что невожможно почти никуда зайти (реально зашло только на www.ya.ru).
>
>Если клиенты виндовые, попробуй, в настройках VPN подключения, выключить галку: Networking\Internet Protocol
>(TCP\IP)\Properties\Advanced\Use default gateway on remote network
>
>Смысл такой, после VPN подключения, шлюзом по-умолчанию становится, IP выданный VPN-сервером, т.е.
>рабочая станция становится сама-себе шлюзом и для удаленной сети, и для
>интернета.Да виндовые.
Убрал птицу, конектиться но неработает.
после експериментов добавил правило
ipfw add divert natd ip from any to any via ppp0
страницы начали грузиться !
Но некоторые негрузяться
например http://www.microsoft.com/
почта клиентом авторизируется на рамблер ру например, но письмо забрать неможет.
>>Клиенты конектятся, через сквид прекрасно работает. Но как только отключил сквид оказалось
>>что невожможно почти никуда зайти (реально зашло только на www.ya.ru).
>
>Если клиенты виндовые, попробуй, в настройках VPN подключения, выключить галку: Networking\Internet Protocol
>(TCP\IP)\Properties\Advanced\Use default gateway on remote network
>
>Смысл такой, после VPN подключения, шлюзом по-умолчанию становится, IP выданный VPN-сервером, т.е.
>рабочая станция становится сама-себе шлюзом и для удаленной сети, и для
>интернета.Да виндовые.
Убрал птицу, конектиться но неработает.
после експериментов добавил правило
ipfw add divert natd ip from any to any via ppp0
страницы начали грузиться !
Но некоторые негрузяться
например http://www.microsoft.com/
почта клиентом авторизируется на рамблер ру например, но письмо забрать неможет.
После того как НАТ прописал так
ipfw add divert natd ip from ${vpnnet} to any ppp0
ipfw add divert natd ip from any to ${ipinet}
ipfw add divert natd ip from any to any via ppp0
заработала почта, и ася заработала (оказывается не у всех она работала)какправильно прописать НАТ для VPN на базе MPD ?
> ipfw add divert natd ip from ${vpnnet} to any ppp0
via действительно нет, или это опечатка?> ipfw add divert natd ip from any to ${ipinet}
> ipfw add divert natd ip from any to any via ppp0IMHO, третье правило перекрывает первое, может и оставить его?
Во втором правиле не указан интерфейс, так и задумано?Как это все, по замыслу должно работать? Клиенты подключаются по модему и получают доступ к интернету? Видимо, в начале, я не правильно понял, что ты хочешь добится.
Попробуй добавить в конец правило:
ipfw add deny log all from any to any
и посмотри в логе, что firewall-у не нравится.У тебя в правилах firewall-а, кроме divert-ов, другие правила есть?
IMHO, по идее, divert должен быть только через внешний интерфейс VPN сервера, через ppp0, он как бы и не нужен. Достаточно правила:
ipfw add allow all from any to any via ppp0
(или, если подключений несколько, ... via ppp\*), стоящего до divert-а.
ipfw -f flush# *************** VAR *******************************
my=192.168.0.240
mynet=192.168.0.0/24
vpnnet=192.168.10.0/24
ipinet=xxx.xxx.xxx.xxx# ***************GLOBAL***************************
# No Defrag
ipfw add deny icmp from any to any in icmptype 5,9,13,14,15,16,17
ipfw add deny all from any to ${my} frag
# Local
ipfw add allow all from any to any via lo0
ipfw add deny all from any to 127.0.0.0/8
ipfw add deny ip from 127.0.0.0/8 to any
# SSH
ipfw add allow tcp from ${mynet} to ${mynet} ssh via rl0
ipfw add allow tcp from ${mynet} ssh to ${mynet} via rl0# NAT ***************************************************************
ipfw add divert 8668 ip from ${mynet} to any via ppp0
ipfw add divert 8668 ip from any to any via ppp0
ipfw add allow ip from any to any
вот текущие правилауже все работает кроме мелкомягких 'microsoft.com', хотя если они не работают значит найдется и еще что нить.
Ко мне конектяться не по модему, а с локальной сети. mpd как авторизация используеться :))
>ipfw -f flush
>
># *************** VAR *******************************
>my=192.168.0.240
>mynet=192.168.0.0/24
>vpnnet=192.168.10.0/24
>ipinet=xxx.xxx.xxx.xxx
>
># ***************GLOBAL***************************
># No Defrag
> ipfw add deny icmp
>from any to any in icmptype 5,9,13,14,15,16,17
> ipfw add deny all
>from any to ${my} frag
># Local
> ipfw add allow all
>from any to any via lo0
> ipfw add deny all
>from any to 127.0.0.0/8
> ipfw add deny ip
>from 127.0.0.0/8 to any
># SSH
> ipfw add allow tcp
>from ${mynet} to ${mynet} ssh via rl0
> ipfw add allow tcp
>from ${mynet} ssh to ${mynet} via rl0
>
># NAT ***************************************************************
> ipfw add divert 8668
>ip from ${mynet} to any via ppp0
> ipfw add divert 8668
>ip from any to any via ppp0
> ipfw add allow ip
>from any to any
>вот текущие правила
>
>уже все работает кроме мелкомягких 'microsoft.com', хотя если они не работают значит
>найдется и еще что нить.
>
>Ко мне конектяться не по модему, а с локальной сети. mpd как
>авторизация используеться :))Очень похоже, imho, что mpd у тебя вообще побоку.
Нет правила: ipfw add allow gre from any to any
Правило: ipfw add divert 8668 ip from ${mynet} to any via ppp0 не совсем понятно заче, если следующее: ipfw add divert 8668 ip from any to any via ppp0У тебя, что, сервер получает доступ к интернету через интерфейс ppp0?
>Очень похоже, imho, что mpd у тебя вообще побоку.
>Нет правила: ipfw add allow gre from any to any
>Правило: ipfw add divert 8668 ip from ${mynet} to any via
>ppp0 не совсем понятно заче, если следующее: ipfw add divert 8668
>ip from any to any via ppp0
>
>У тебя, что, сервер получает доступ к интернету через интерфейс ppp0?
инет через ppp0
насчет НАТовских правил я сам уже ниче непойму, потому что так как теоритически надо нефига неработает.по поводу gre есть правила открывающие 47 протокол, я их невлепил, так как они работают. тут что то с НАТом, так как через тот же сквид проблемм нет
>по поводу gre есть правила открывающие 47 протокол, я их невлепил, так
>как они работают.
Не влепил, в смысле здесь не показал, или в правилах IPFW их тоже нет?Правила для GRE и интерфейсов, созданных MPD, должны стоять почти в самом начале, до divert.
Для НАТа, оставь пока:
ipfw add divert natd all from any to any via ppp0Посмотри, что у тебя в security.log пишется, может что-то полезное всплывет.
>Не влепил, в смысле здесь не показал, или в правилах IPFW их
>тоже нет?
в правилах есть
>
>Правила для GRE и интерфейсов, созданных MPD, должны стоять почти в самом
>начале, до divert.
какая разница GRE то на другой подсети работает 192.168.0.0/24>Для НАТа, оставь пока:
>ipfw add divert natd all from any to any via ppp0
>
>Посмотри, что у тебя в security.log пишется, может что-то полезное всплывет.ничего полезного ненашел :(
странно все это, не через VPN все прекрасно работаетКто нибудь делал подомное, может скинете минимальную конфигурацию MPD и IPFW ?
>поднят VPN на базе MPD 3.18
>
>Клиенты конектятся, через сквид прекрасно работает. Но как только отключил сквид оказалось
>что невожможно почти никуда зайти (реально зашло только на www.ya.ru). Правила
>ipfw такие.
>
>vpnnet=192.168.10.0/24
>ipinet=xxx.xxx.xxx.xxx
>
>ipfw add divert natd ip from ${vpnnet} to any out xmit ppp0
>
>ipfw add divert natd ip from any to ${ipinet}
>ipfw add allow ip from any to any
>
>в чем здесь загвоздка ?Попробуй вот так:
ipfw add divert natd ip from ${vpnnet} to any out xmit ppp0
ipfw add divert natd ip from any to ${ipinet} in recv ppp0
У меня так по ppp0 прописано.
>Попробуй вот так:
>ipfw add divert natd ip from ${vpnnet} to any out xmit ppp0
>
>ipfw add divert natd ip from any to ${ipinet} in recv ppp0
>
>У меня так по ppp0 прописано.так вообще непашет :(
Странноng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> mtu 1396
inet 192.168.0.240 --> 192.168.10.9 netmask 0xffffffffпочему mtu 1396, и неможет ли это какраз и влиять ?
>Странно
>
>ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> mtu 1396
> inet 192.168.0.240 --> 192.168.10.9 netmask 0xffffffff
>
>почему mtu 1396, и неможет ли это какраз и влиять ?да точно в mpd отрубил шифрование mtu поднялось до 1400, microsoft.com завелся. Неужели ничего нельзя сделать что-бы и шифрование оставить и mtu до 1496 поднять ?
ipfw add divert natd ip from ${vpnnet} to any out xmit ppp0
ipfw add divert natd ip from any to ${ipinet}
ipfw add allow ip from any to anyнеправильно
надо так
oip="xxx.xxx.xxx.xxx" - айпи на внешнем интерфейсеipfw add divert natd ip from ${vpnnet} to any out
ipfw add divert natd ip from any to ${oip}
ipfw add allow ip from any to anyестественно запустить natd
natd -u -dynamic -a ${oip}
а MPD IMHO здесь не причем.
>ipfw add divert natd ip from ${vpnnet} to any out xmit ppp0
>
>ipfw add divert natd ip from any to ${ipinet}
>ipfw add allow ip from any to any
>
>неправильно
>надо так
>oip="xxx.xxx.xxx.xxx" - айпи на внешнем интерфейсе
>
>ipfw add divert natd ip from ${vpnnet} to any out
>ipfw add divert natd ip from any to ${oip}
>ipfw add allow ip from any to any
>
>естественно запустить natd
>
>natd -u -dynamic -a ${oip}
>
>а MPD IMHO здесь не причем.IMHO еще как причем !
на этих правилах ната тольео ася умудрилась завестись и все !
и зачем нужно (-u -dynamic) ??? разве '-dynamic' и '-a' не противоречат друг другу ?вот такие вот НАТюки получаются :(
вообщем нат натом но в данном случае трабл MPD , mtu свежеподнятого ng(x) равняется 1396. По этой причеине некоторые сайты и неходють.
Попробуй в mpd.conf указать опцию: set iface enable tcpmssfix
>Попробуй в mpd.conf указать опцию: set iface enable tcpmssfix
Спасибо !!!!
завелось :))
>>ipfw add divert natd ip from ${vpnnet} to any out xmit ppp0
>>
>>ipfw add divert natd ip from any to ${ipinet}
>>ipfw add allow ip from any to any
>>
>>неправильно
>>надо так
>>oip="xxx.xxx.xxx.xxx" - айпи на внешнем интерфейсе
>>
>>ipfw add divert natd ip from ${vpnnet} to any out
>>ipfw add divert natd ip from any to ${oip}
>>ipfw add allow ip from any to any
>>
>>естественно запустить natd
>>
>>natd -u -dynamic -a ${oip}
>>
>>а MPD IMHO здесь не причем.
>
>IMHO еще как причем !
>на этих правилах ната тольео ася умудрилась завестись и все !
>и зачем нужно (-u -dynamic) ??? разве '-dynamic' и '-a'
> не противоречат друг другу ?У меня работает именно так
- dynamic - нужен, так как интерфейс где все натится, как и айпи появятся только при поднятии ppp соединения
-a xxx.xxx.xxx.xxx - потому что натишь не на интерфейсе, а на айпи>
>вот такие вот НАТюки получаются :(
>вообщем нат натом но в данном случае трабл MPD , mtu
>свежеподнятого ng(x) равняется 1396. По этой причеине некоторые сайты и неходють.
>вот конфиги МПД, на них работает около 200 клиентов
mpd.conf
---------
default:
load client0
client0:
new -i ng0 pptp0 pptp0
set iface disable on-demand
set iface enable proxy-arp
set iface idle 0
set bundle enable tcp-wrapper
set bundle disable multilink
set link yes acfcomp protocomp
set link no pap chap
set link enable chap
set link keep-alive 10 60
set ipcp yes vjcomp
set ipcp ranges ${oip} ${ip_pool}
set ipcp dns ${ip_dns}mpd.links
------------
pptp0:
set link type pptp
set pptp self ${iface ip of inetrnal network}
set pptp enable incoming
set pptp disable originate
tcpmssfix...
RTFM !!!