LINUX.ORG.RU
ФорумAdmin

Использование меток (tags, tagged) в ipfw nat, FreeBSD11

 , , ,


0

1

Добрый день! Столкнулся с проблемой маршрутизации трафика по двум активным каналам интернет. Пришел к тому выводу, что нужно использовать метки в ipfw. Но вот у меня они напрочь не хотят работать. Вот фрагмент:

ipfw add 01500 skipto 03000 tag 1 tcp from any to 195.128.ххх.ххх in recv tun1 keep-state
ipfw add 01600 setfib 1 tcp from 192.168.0.0/24 to not 192.168.0.0/24 tagged 1 keep-state

Так вот, если использовать правило 01600 без параметра tagget 1, пакеты всегда уходят через второй канал. Но мне нужно придать динамики, а теги мне никак не получается заставить работать. В чем может быть дело? Может я неверно понимаю значение меток? Эта метки исчезает при завершении первого прохода по правилам, или же остается при втором проходе?

Спасибо!


Метки

Ни на одном из профильных форумов, где я задал этот вопрос, мне никто не дал ответ по-поводу меток. Они хоть существуют? Хоть кто-то видел, что они где-то используются? Может забыть их и все же пересмотреть конструкцию fwd ${ISP_gw} ip from ${ISP_ip} to not ${localnet}?

BeLuY
() автор топика

Они в основном используются для прослеживания одного и того же трафика а) до и после ната, б) на разных проходах фаервола.

Tags are kept with the packet everywhere within the kernel, but are lost when packet leaves the kernel, for example, on transmitting packet out to the network or sending packet to a divert(4) socket.

Tags и state - это две разные вещи и друг с другом не пересекаются, так что хрен вам. :-) ipfw убог в части state и вообще динамики. Так что только fwd, только хардкор.

anonymous
()
Ответ на: комментарий от anonymous

У меня не работает ни со state, ни без него. Эти теги вообще работают? В сети куча примеров, которые «должны» работать. На одно из форумов прочел, что нужно патчить систему, но я так ничего и не понял...

BeLuY
() автор топика
Ответ на: комментарий от BeLuY

Ещё раз, теги у тебя сбрасываются при отправке пакета. Они у тебя сохраняются только во время проходов in/out для входящего пакета. Или исходящего. Т.е. вот так работать будет:

ipfw add allow tag 1 tcp from any to any in  via fxp0
ipfw add allow       tcp from any to any out via tun0 tagged 1

А так - нет:

ipfw add allow tag 1 tcp from any to any in via fxp0
ipfw add allow       tcp from any to any in via tun0 tagged 1

Для того чтобы не писать второе правило во втором случае - используется keep-state/check-state. Но к тегам оно никаким боком.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.