Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Общий по FreeBSD (http://forum.oszone.net/forumdisplay.php?f=10)
-   -   Два канало во внешний мир. (http://forum.oszone.net/showthread.php?t=121627)

mmn 31-10-2008 21:05 939354

Два канало во внешний мир.
 
Каким обрпазом через IPFW можно разделить исходящий трафик на 2 канала ??
бился с дивертами, всеравно исходящий трафик ломиться на дефоултный шлюз.

Prefer 01-11-2008 08:35 939671

Смотрите статьи по Policy Routing на FreeBSD.

mmn 01-11-2008 10:47 939731

а по подробнее можно ??
прочитал много статей, ниодна не заработало
http://www.samag.ru/art/02.2007/02.2007_09.html
http://www.opennet.ru/base/net/2_cha...ncing.txt.html
http://ipfw.ism.kiev.ua/pbr.html

Prefer 01-11-2008 12:23 939790

Опишите подробнее свою задачу.
Какие интерфесы подняты?
Что является критерием отправки к конкретному провайдеру?
Какой трафик имеется в виду (протокол)?

mmn 05-11-2008 10:44 943432

подробнее:
Есть 2 канала
rl0 - оплата по трафику IP 81.200.6.190 Шлюз 81.200.6.1
rl2 - безлимитка "стрим" IP 192.168.1.2 Шлюз 192.168.1.1

Внутреняя сетка
rl1 - 192.168.0.0


Задача состоит в том, чтобы из внутренней сетки пользователи ходили в инет и получали HTTP через rl2, весь остальной трафик должен идти через канал с реальными адресами.

На серваке стоит Squid, даже если в нем указывать tcp_outgoing_address 192.168.1.2 то через diver трафик всеравно направляется на rl0

для пробы бытался отправить весь трафик с одного адреса в rl2 всеравно все пытается попасть на rl0

# natd -n rl0 -p 8668
# natd -n rl2 -p 8669

defaultrouter="81.200.6.1"

divert 8669 log ip from 192.168.0.4 to any
divert 8668 log ip from 192.168.0.44 to any
fwd 192.168.1.1 log ip from 192.168.1.2 to any
fwd 81.200.6.1 log ip from 81.200.6.190 to any
divert 8669 log ip from any to 192.168.1.2
divert 8668 log ip from any to 81.200.6.190



Divert 8672 TCP 192.168.0.4:4728 217.23.134.43:80 in via rl1
Divert 8672 TCP 192.168.0.4:4728 217.23.134.43:80 out via rl0
Forward to 192.168.1.1 TCP 192.168.1.2:4728 217.23.134.43:80 out via rl0
Divert 8672 TCP 192.168.0.4:4728 217.23.134.43:80 in via rl1
Divert 8672 TCP 192.168.0.4:4728 217.23.134.43:80 out via rl0
Forward to 192.168.1.1 TCP 192.168.1.2:4728 217.23.134.43:80 out via rl0
Divert 8672 TCP 192.168.0.4:4728 217.23.134.43:80 in via rl1
Divert 8672 TCP 192.168.0.4:4728 217.23.134.43:80 out via rl0
Forward to 192.168.1.1 TCP 192.168.1.2:4728 217.23.134.43:80 out via rl0

Prefer 07-11-2008 09:04 945641

Фрагмент правил реализующий Policy Routing.
ipfw add fwd 192.168.1.1 ip from 192.168.1.2 to any
ipfw add fwd 81.200.6.1 ip from 81.200.6.190 to any

Для примера
HTTP - Squid указываем tcp_outgoing_address 192.168.1.2
MAIL - Postfix указываем smtp_bind_address=81.200.6.190

P.S. defaultrouter и Divert не используем.

mmn 17-11-2008 11:43 954756

Цитата:

Цитата Prefer
P.S. defaultrouter и Divert не используем. »

если это не оспользовать, то вобще никуда ничего не пойдет ))

Prefer 17-11-2008 12:10 954771

Вы пробовали или это умозрительное утверждение ?

mmn 17-11-2008 12:26 954782

может я конечно утрирую, что совсем ничего никуда не ходит, но пакеты не пытаются кудато пойти за пределы сервака, даже внешие интерфейсы не пингуются

Prefer 17-11-2008 12:35 954788

Например правило ipfw add fwd 192.168.1.1 ip from 192.168.1.2 to any
перенаправляет на ip 192.168.1.1 только пакеты исходящие с ip 192.168.1.2
Именно такой вариант и надо проверять

mmn 17-11-2008 12:52 954795

в логах происходит следующие
Forward to 192.168.1.1 ICMP:0.0 192.168.1.2 192.168.0.4 out via rl1
192.168.0.4 адрес в локалке
rl1 интерфейс локалки.

после добавления данног правила перестает пинговаться внешний интерфейс (192.168.1.2)

mmn 18-11-2008 11:27 955770

вобщем я уже ближе к истине, мепня ввела в заблуждение строка из логов
Forward to 192.168.1.1 TCP 192.168.1.2:4728 217.23.134.43:80 out via rl0
на самом деле все форвардиться куда надо, трафик уходит на rl2
это и есть заблуждение которое происходит у многих.
defaultrouter и Divert при этом работают нормально и отключать их не нужно !!


но есть одно НО, когда я обращаюсь к серверу удаленно он входящие пакеты тоже форвардит, как с этим быть ??

Prefer 18-11-2008 12:06 955803

А правило fwd использует параметр out ?

mmn 18-11-2008 12:22 955820

Цитата:

Цитата Prefer
А правило fwd использует параметр out ? »

само сабой
${fwcmd} add divert 8668 log ip from ${lan_net} to any
${fwcmd} add divert 8778 ip from ${lan_net} to any
${fwcmd} add fwd 192.168.1.1 log ip from 192.168.1.2 to any out
${fwcmd} add fwd 81.200.6.1 log ip from 81.200.6.190 to any out
${fwcmd} add divert 8668 ip from any to 81.200.6.190
${fwcmd} add divert 8778 ip from any to 192.168.1.2

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

mmn 18-11-2008 12:38 955840

поправочка.
С внешней стороны проходит пинг и все открывается при условии что адреса не соседнии т.е. не 81.200.6.ххх


Время: 06:49.

Время: 06:49.
© OSzone.net 2001-