FreeBSD 7.2-RELEASEесть роутер с четырмя сетевушками:
em0: 192.168.1.1/24 (локальная сеть)
em1: 192.168.2.2/24 (локальная сеть)
em2: 1.1.1.1/24 (интернет)
em3: 10.10.10.10/24 (локальный пиринг)/etc/rc.conf
defaultrouter="1.1.1.254" (т.е. для всех клиентов на интерфейсах em0 и em1 весь траф идет через em2)по bgp с интерфейса em3 принимаются несколько префиксов (отличных от локальных) локального пиринга. Все хорошо, все работает.
Появился еще один канал в интернет, виден через интерфейс em2 с адресом шлюза 1.1.1.253. И стоит задача пустить клиентов из 192.168.2.0/24 на другой шлюз.
делаю так:
ipfw add 100 fwd 1.1.1.253 all from 192.168.2.0/24 to anyтут тоже все хорошо, часть клиентов уходит по основному (системному гейтвею), а вторая часть клиентов через альтернативный шлюз 1.1.1.253. Но при такой расстановке сил трассировка с клиентов (192.168.2.0/24, для тех кого fwd) к адресам локального пиринга (те, что сваливаются по bgp) выглядит примерно так:
1. 192.168.2.2
2. 1.1.1.253
3. узлы локального пиринга.Жить не мешает, но не люблю когда неправильно :)
Для клиентов же из 192.168.1.0/24 трассировка верная.Как заставить пакеты сначала использовать локальную таблицу маршрутизации, а уже потом форвардить с помощью ipfw.
ЗЫ: Повязать двух провов в бжп не предлагать :)
Заранее благодарен.
Или в правило с форвардом добавить
out xmit em2или перед ним вставить такое
add allow 192.168.2.0/24 to any out xmit em3
>Или в правило с форвардом добавить
>out xmit em2
>
>или перед ним вставить такое
>add allow 192.168.2.0/24 to any out xmit em3спасибо заработало по первому варианту.
но задача усложнилась тем, что прокинули еще один канал в интернет, со стороны интерфейса em3 (локальный пиринг) Т.е. и шлюз интернета и пиринг находятся в пределах одного интерфейса em3
и конструкция
ipfw add 100 fwd 10.10.10.5 all from 192.168.2.0/24 to any out xmit em3не срабатывает
Это должно срабатывать когда пакет уходит в пиринговую сеть, т.к. указано ем3.
Внутри ядра пакет сначала будет роутиться, т.е. для него определяется
исходящий интерфейс, а потом пакет прогоняется по правилам фильтра.Чтобы перенаправить в мир через ем3 правило будет такое же,
кроме некстхопаipfw add 100 fwd 10.10.10.5 all from 192.168.2.0/24 to any out xmit em2
подозреваю что вопрос в другом, как разрулить две сети на три канала
можно бОльшую сеть разбить на две подсети с масками /25
>FreeBSD 7.2-RELEASEsetfib