Граждане FreeBSDшники, просьба потестить

Jun 11, 2006 05:09

Сабж новую нетграф-ноду ng_tag. Выполняет роутинг пакетов внутри нетграфа по наличию указанных mbuf_tags(9), а также может их навешивать. Теги используются в сетевой подсистеме ядра много где, но на текущий момент наиболее интересным, имхо, является взаимодействие с недавно добавленной в ipfw функциональностью tag/tagged - анализ пакетов выполняется в нетграфе, потом проверяем это дело в ipfw (или наоборот, метим в ipfw для дальнейшей обработки в нетграфе). Это позволяет сделать, например, анализ содержимого пакетов (фактически L7 filtering) полностью в ядре.
В качестве proof-of-concept в мане приведен пример фильтрации соединений данных P2P-трафика системы DirectConnect (как и многие другие, отличается тем, что по портам не зафильтруешь, надо в payload пакета лезть), в сочетании с нодой ng_bpf(4) (вот блин, в системе с 4.0 в ядре анализатор трафика имеется, а мло кто и внимание обращал). То, что делает сторонний линуксовый iptables-модуль ipp2p, сможем гибче делать штатно ;)

Для теста необходим CURRENT от 25 мая или новее - MFC в RELENG_6 патчей tag/tagged к ipfw будет в районе 24 июня. Можно впрочем и на 6-ке их сейчас накатить, или из CVS, или наложить патчи с http://butcher.heavennet.ru/patches/kernel/ipfw_tags/ - только в CVS оно всё же доправлено/дофикшено (плюс к тому, поменялось значение MTAG_IPFW, т.е. конфигурять ng_tag надо будет чуть иначе).

Брать тут: http://antigreen.org/vadim/freebsd/ng_tag/
Сборка:

make
kldload ./ng_tag.ko
Ман читать так:

cat ng_tag.4 | /usr/bin/tbl | /usr/bin/groff -S -Wall -mtty-char -man \
-Tascii | /usr/bin/col | more -s
Просьба поддержать это дело в current@ и в net@ (я туда письма отправил, желательно на них отвечать) - дабы закоммиттили в дерево, хочется-таки в 6.2 это заиметь.

P.S. Сегодня удачный день у меня в плане BSD выдался... ng_tag заработал, багу в ufs2tools совместно с автором починили... Хорошо, однако.

сети, программирование, freebsd

Previous post Next post
Up