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

Исходное сообщение
"Разделение трафика по туннелям с разных ip адресов."

Отправлено timur_m , 07-Авг-06 16:42 
Уже долго не могу разобраться, поэтому прошу помочь Интернет-сообщество.
Задача следующая: разделить трафик с разных ip по VPN-туннелям.
Устанавливаю туннели к vpn серверу провайдера, причем менять маршрут по умолчанию нельзя.
Получаю следующее:
Маршрут по умолчанию на 10.1.1.254, интерфейс vlan0
Установив один маршрут, получаю 10.254.1.10, интерфейс ng0
Установив второй маршрут, получаю 10.254.1.11, интерфейс ng1

Необходимо пробросить трафик с ip 192.16.0.1 (vlan1) на ng0
и с ip 192.16.1.1 (vlan2) на ng1

Трансляция в /etc/ipnat.rules:
map ng0 192.16.0.0/24 -> 10.254.1.10/32 proxy port ftp ftp/tcp
map ng0 192.16.0.0/24 -> 10.254.1.10/32 portmap tcp/udp auto
map ng0 192.16.0.0/24 -> 10.254.1.10/32
Но, трафик идет на default route.
Если не сложно, подскажите, как можно его перенаправить?
ОС FreeBSD 6.1


Содержание

Сообщения в этом обсуждении
"Разделение трафика по туннелям с разных ip адресов."
Отправлено skyx , 07-Авг-06 16:44 
В линуксе это делает iproute2. Для фри - ещи аналоги.



"Разделение трафика по туннелям с разных ip адресов."
Отправлено Nigoro , 07-Авг-06 17:43 
ipfw fwd ....

"Разделение трафика по туннелям с разных ip адресов."
Отправлено timur_m , 07-Авг-06 18:17 
>ipfw fwd ....

Добавлял правило в ipfw:
ipfw 10 add forward 10.254.1.10 tcp from 192.16.0.1/24 to any via ng0
Трафик, так и продолжает идти через vlan0 с адреса 192.16.0.1
ipfw -d show
00010 0  0   fwd 10.254.1.10 tcp from 192.16.0.1 to any via ng0
(В прывило не попадает)

В ядро соответствующие опции добавлены...
options IPDIVERT
options IPFIREWALL_FORWARD


"Разделение трафика по туннелям с разных ip адресов."
Отправлено timur_m , 07-Авг-06 19:40 
Сделал следующее:
natd -a 10.254.1.10 -p 9999 (трафик должен перенаправляться с 10.254.1.10 на порт 9999)
В ipfw добавил правила:
ipfw 10 add fwd 213.1.1.178 ip from 10.254.1.10 to any # 213.1.1.178 - vpn сервер
ipfw 20 add divert 9999 all from any to 10.254.1.10
ipfw 30 add divert 9999 all from 192.16.0.10/32 to any

В итоге, все правила работают, ping-и с 192.16.0.10 в Интернет проходят, но сайты не открываются.
Прослушивая интерфейс ng0, видно что запрос от 10.254.1.10 в Интернет уходит, посылается он от 192.16.0.10, правда, похоже обратно ответ не получает.
Прошу поддержки, может не в том направлении капаю... Посоветуйте, что-то...