The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"2 ISP (PBR+NAT)- ipfw routing проблема fwd c mac+ip "
Версия для распечатки Пред. тема | След. тема
Форум Информационная безопасность
Исходное сообщение [ Отслеживать ]

"2 ISP (PBR+NAT)- ipfw routing проблема fwd c mac+ip " +/
Сообщение от radiorobot (ok), 11-Дек-21, 23:31 
Добрый день коллеги,

столкнулся с задачей которую никак не могу решить верно (с помощью одного роутера freebsd).

сеть состоит из 3-х хостов R0, R1, H1. Необходимо обеспечить доступность H1 по обоим ip адресам, пусть для простоты будет tcp 110, при этом строгое условие - H1 должен отправлять пакеты отправителю с того адреса на который получен запрос.

Схематично: https://c.radikal.ru/c33/2112/a8/c337fae01d2f.jpg

R0  (не изменяемая часть)
ip A.A.A.A/24
================================
R1 (em0) (alias делать запрещено)
ip A.A.A.A+1/24
gw A.A.A.A

R1 (em2)
ip A.A.A.A+2/24
gw A.A.A.A

R1 (em1)
ip B.B.B.B/24
=================================
H1 (em0)
ip B.B.B.B+1/24 alias0 ip B.B.B.B+2/24
gw B.B.B.B


Как видно классический PBR и NAT, эта задача решается fwd (next-hop, c подменой mac), давнешний конфиг для этого (nat отдельным демоном) :

ipfw add 1000 divert 8778 ip from B.B.B.B+1 to any
ipfw add 1100 divert 8668 ip from B.B.B.B+2 to any

ipfw add 3000 fwd A.A.A.A log ip from A.A.A.A+1 to any
ipfw add 3100 fwd A.A.A.A ip from A.A.A.A+2 to any

ipfw add 4000 divert 8778 ip from any to A.A.A.A+1
ipfw add 4100 divert 8668 ip from any to A.A.A.A+2

ipfw add 5000 allow ip from any to any

Данный конфиг работает отлично когда внешние шлюзы R1 разные, т.е. A.A.A.A и какой-нибудь С.С.С.С, но в задаче выше шлюз одинаковый (читай mac+ip). Отладка правил показывает, что ipfw корректно работает по правилам, но отправка пакета действием fwd идет по первому попавшемуся соответствию в таблице соответствия mac+ip. Т.е. в случае выше по default-gateway A.A.A.A через интерфейс em0. По em2 tcpdump показывает, что получает пакеты из вне, но отправка ответа идет через em0. При этом хост H1 доступен через em0.

Соответственно вопрос, как в данной задаче обеспечить доступность хоста H1 через оба адреса (интерфейса) и с использованием только одного роутера R1 на базе FreeBSD? Накиньте идей, кручусь возле net.fibs(setfib), но что-то никак.

P.S. повторюсь, неизменяемые условия: R0, настройки R1 в части адресов А.А.А.0/24.

Ответить | Правка | Cообщить модератору

Оглавление
2 ISP (PBR+NAT)- ipfw routing проблема fwd c mac+ip , radiorobot, 11-Дек-21, 23:31  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру