princeps писал(а):интересно
рассказываю суть метода, маршрутизация средствами ipfw
есть два интерфейса в rc.conf
Код: Выделить всё
# Beeline
defaultrouter="89.188.253.1"
ifconfig_dc0="inet 89.188.253.2 netmask 255.255.255.248"
# TTK
#defaultrouter="188.168.64.25"
ifconfig_rl0="inet 188.168.64.26 netmask 255.255.255.252"
ситуация 1:
Код: Выделить всё
пакет приходит на 89.188.253.2 -> обрабатывается -> уходит на default gateway 89.188.253.1
[b]нас устраивает[/b]
ситуация 2:
Код: Выделить всё
пакет приходит на 188.168.64.26 -> обрабатывается -> уходит на default gateway 89.188.253.1
[b]нас не устраивает[/b]
Нам нужно перехватить пакеты пришедшие с интерфейса rl0 (188.168.64.26) и пытающиеся уйти на default gateway 89.188.253.1 через интерфейс dc0
средствами ipfw делается так:
Код: Выделить всё
ifpw add 30 fwd 188.168.64.25 all from 188.168.64.26 to any out via dc0
по-русски:
нужно добавить в самое начало правило, которое отфорвардит на gateway интерфейса rl0 (188.168.64.25) трафик пытающийся выйти через интерфейс dc0
P.S. могу нарисовать схему, если так не понятно
На фоне дураков четче хорошие люди прорисовываются.
(с) Граффити