Два канала и ограниченные умственные возможности.

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
chocopie
ефрейтор
Сообщения: 55
Зарегистрирован: 2009-09-21 15:57:01

Два канала и ограниченные умственные возможности.

Непрочитанное сообщение chocopie » 2010-01-10 20:45:05

Доброго времени суток. Суть проблемы в следующем.
Имеется FreeBSD (7.1): 172.19.48.239
Mpd 5.1 держит виртуальную подсеть 172.26.159.0/24.
Два интерфейса в интернет : ng0 ng1 (оба pptp). Default route стоит на ng1.
Коннекты по VPN принимаются через rl0. (подсеть 172.19.48.0/24)
Брандмауэр: pf.
Задача: Выпускать клиентов в интернет, при этом направлять HTTP, ICMP, POP3, SMTP ну и некоторые другие протоколы в ng0, а все остальное в ng1(для этого и маршрут дефолтным стоит).
Ход работы:

pf.conf:

Код: Выделить всё

nat on ng0 from 172.26.159.0/24 to any -> ng0
nat on ng1 from 172.26.159.0/24 to any -> ng1
pass out route-to (ng0 адрес шлюза?) proto tcp from ng1 to any port 80
Вот как раз с выпусканием, а также, как сказано в руководстве pf, с грамотным впусканием проблемы. Не могу схватить суть перенаправления, в каком месте отфильтровывать по порту, а также, можно ли обойтись без указания шлюза при перенаправлении (т.к. шлюз при каждом подключении разный выдается).

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35172
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Два канала и ограниченные умственные возможности.

Непрочитанное сообщение Alex Keda » 2010-02-28 20:16:48

юзайте ipfw =)
Убей их всех! Бог потом рассортирует...

_Гагарин
проходил мимо

Re: Два канала и ограниченные умственные возможности.

Непрочитанное сообщение _Гагарин » 2010-03-01 0:21:40

тут как-то недавно TITANius бился над идеей роуте ту
добились чтобы вообще получилось использовать роуте ту, завернув пакеты хотя бы в один интерфейс
defaultrouter закомменчен

Код: Выделить всё

int_if="stge0"
ext_if1="rl0"
ext_gw1 = "192.168.2.111"

#  правила nat для исходящих соединений
nat on $ext_if1 from any to any -> ($ext_if1)

block all

#  пропускаем все исходящие пакеты на внутреннем итерфейсе
pass out on $int_if from any to any

#  всё из внутренней сети должно идти через шлюз $ext_gw1
pass in on $int_if route-to ($ext_if1 $ext_gw1) from any to any

pass out on $ext_if1 from any to any
идея в принципе у тебя та же
то есть на ВНУТРЕННЕМ интерфейсе делаем роуте ту
судя по ману:
route-to
The route-to option routes the packet to the specified interface with an optional address for the
next hop. When a route-to rule creates state, only packets that pass in the same direction as the
filter rule specifies will be routed in this way. Packets passing in the opposite direction (replies) are
not affected and are routed normally.
адрес шлюза указывать не обязательно, тогда предположительные правила где-то такие:
defaultrouter в rc.conf закомменчен

Код: Выделить всё

int_if="ВнутреннийИнтерфейс"

...

nat on ng0 from 172.26.159.0/24 to any -> ng0
nat on ng1 from 172.26.159.0/24 to any -> ng1

...

pass in quick on $int_if route-to ng0 from any to any port { http pop3 smtp }
pass in quick on $int_if inet proto icmp route-to ng0 from any to any

pass in on $int_if route-to ng0 from any to any

pass out on ng0 from any to any
pass out on ng1 from any to any