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

Исходное сообщение
"Двойной OpenVPN на FreeBSD - проблемы с NAT"

Отправлено leave , 15-Май-08 19:44 
Добрый день.
Обращаюсь с простой проблемой, наверняка имеющей простое решение - но между тем уже день топчусь на одном месте. Прошу заранее извинить за ламерство :)

Итак, имеется следущая конфигурация OpenVPN:
client->server1->server2->internet
на server1 крутятся одновременно серверная и клиентская части, клиентская зацеплена к server2;
серверная часть висит на интерфейсе tun1 (10.0.0.0/24), клиентская - на tun0 (10.0.1.0/24);
на этом же сервере работает еще и mpd (ng0..6, 192.168.0.0/24), трафик с него тоже должен заворачиваться в tun0;

NAT хочется организовать с помощью pf, рулесы прописаны следующие:
ext_if="tun0"
nat on $ext_if from 192.168.0.0/24 to any -> ($ext_if:0)
nat on $ext_if from 10.0.0.0/24 to any -> ($ext_if:0)
pass in all
pass out all

форвардинг, естественно, включен.
но пакеты из tun1 в tun0 не натятся, из ng0 - тоже.

пробовал еще такую конфигурацию pf:
ext_if="tun0"
eth_if="em0"
nat on $ext_if from !($ext_if) to any -> ($ext_if:0)
#nat on $ext_if from 192.168.0.0/24 to any -> ($ext_if:0)
#nat on $ext_if from 10.0.0.0/24 to any -> ($ext_if:0)
pass quick on $eth_if
pass in all
pass out all

результат нулевой.

Раньше на сервере крутился тот же самый софт, но под линуксом, и там весь NAT решался двумя рулесами IPTABLES, однако по некоторым обстоятельствам пришлось переехать на FreeBSD (7.0-RELEASE).

Подскажите, пожалуйста, где я что не так сделал?


Содержание

Сообщения в этом обсуждении
"Двойной OpenVPN на FreeBSD - проблемы с NAT"
Отправлено domas , 16-Май-08 09:48 
1. 'pass out all' заменить на 'pass out keep state'

2. Проверить включен ли роутинг в ОС.


"Двойной OpenVPN на FreeBSD - проблемы с NAT"
Отправлено leave , 16-Май-08 11:19 
>1. 'pass out all' заменить на 'pass out keep state'
>
>2. Проверить включен ли роутинг в ОС.

1. пробовал, улучшений незаметно
2. включен


"Двойной OpenVPN на FreeBSD - проблемы с NAT"
Отправлено prada , 27-Май-08 16:18 
>>1. 'pass out all' заменить на 'pass out keep state'
>>
>>2. Проверить включен ли роутинг в ОС.
>
>1. пробовал, улучшений незаметно
>2. включен

Может еще у кого мнения есть?
Очень нужно это проблему решить


"Двойной OpenVPN на FreeBSD - проблемы с NAT"
Отправлено Gunslinger , 10-Авг-08 01:19 
В pf.conf:

ext_if="tun0"
nat on $ext_if from { 192.168.0.0/24, 10.0.0.0/24 } to any -> ($ext_if)
pass all

В rc.conf:
gateway_enable="YES"

Проверить, что default gateway точно выставляется на tun0.


"Двойной OpenVPN на FreeBSD - проблемы с NAT"
Отправлено leave , 10-Авг-08 02:08 
>В pf.conf:
>
>ext_if="tun0"
>nat on $ext_if from { 192.168.0.0/24, 10.0.0.0/24 } to any -> ($ext_if)
>pass all
>
>В rc.conf:
>gateway_enable="YES"
>
>Проверить, что default gateway точно выставляется на tun0.

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


"Двойной OpenVPN на FreeBSD - проблемы с NAT"
Отправлено toxa , 10-Авг-08 16:23 
>да и все это есть фигня, ибо я уже этим проектом не
>занимаюсь :)
>но спс за желание помочь. я теперь знаю, кого терроризировать вопросами по
>бсд :)

Вопрос и правда был тривиальный