[PATCH] ng_tag - new netgraph node, please test (L7 filtering possibility)

Vadim Goncharov vadimnuclight at tpu.ru
Sat Jun 10 19:43:02 UTC 2006

Hello All!

I wrote new netgraph(4) node, called ng_tag, able to match packets by
their mbuf_tags(9) and assign new tags to mbufs. This can be used for
many things in the kernel network subsystem, but particularly useful
with recently added ipfw(8) tag/tagged functionality (will be MFCed to
RELENG_6 after Jun 24).

With this node, in conjunction with ng_bpf(4), I was able to match and  
block (perhaps shaping is also possible, but this relies solely on ipfw)  
DirectConnect P2P data connections traffic - you know, they're using  
random ports, so you can't match them with usual firewall rules and must  
check data payload contents of the packets. See man page for example of  
how to do this.

Download files from here: http://antigreen.org/vadim/freebsd/ng_tag/
Then do:

   kldload ./ng_tag.ko

Man page can be viewed as:

   cat ng_tag.4 | /usr/bin/tbl | /usr/bin/groff -S -Wall -mtty-char -man \
     -Tascii | /usr/bin/col | more -s

Please especially test tags with non-zero tag_len, if you can (though it's
not needed for ipfw).

P.S. BTW, what is correct subject prefix for new contributions? I think
[PATCH] is not correct as these are new files, not patch :)

WBR, Vadim Goncharov

More information about the freebsd-current mailing list