On 04/19/2013 09:51 AM, Tom Eastep wrote:
> On 04/18/2013 04:47 PM, Dash Four wrote:
> 
>>> Let me think about it a while...
>>>   
>> No problem, take your time - I know it isn't straight-forward, but I 
>> think it would be worth it in the end as there is a lot to be gained, 
>> certainly from a performance point of view.
> 
> The attached small patch allows for incrementing an nfacct counter when
> an IPSET is match.
> 
> For some time, the following has been supported:
> 
>       +"["{<set>["["<src-dst-list>"]"]}[,...]"]"
> 
> where "[" and "]" are square brackets while [ and ] are meta-symbols.
> 
> The new syntax is:
> 
>       +"["{<set>["["<src-dst-list>"]"][(<nfacct-object-list>)]}
>               [,...]"]"
>       
> 
> Your original rule list was:
> 
> SECTION INPUT
> NFACCT(all)
> NFACCT(dmz_in) - +dmz-net
> 
> SECTION OUTPUT
> NFACCT(all)
> NFACCT(dmz_out) - - +dmz-net
> 
> SECTION FORWARD
> NFACCT(all)
> NFACCT(dmz_fwd) - +dmz-net
> NFACCT(dmz_fwd) - - +dmz-net
> 
> With this patch, you can now have:
> 
> SECTION INPUT
> NFACCT(all)   -       +[dmz-net(dmz_in)]
> 
> SECTION OUTPUT
> NFACCT(all)   -       -       +[dmz-net(dmz_out)]
> 
> SECTION FORWARD
> NFACCT(all)   -       +[dmz-net(dmz_fwd)]
> COUNT         -       -       +[dmz-net(dmz_fwd)]
> 
> This set of rules produces:
> 
> -A accountfwd -m nfacct --nfacct-name all -m set --match-set dmz-net \
>       src -m nfacct --nfacct-name dmz_fwd
> -A accountfwd -m set --match-set dmz-net(dmz_fwd) dst
> -A accountin -m nfacct --nfacct-name all \
>       -m set --match-set dmz-net src -m nfacct --nfacct-name dmz_in
> -A accountout -m nfacct --nfacct-name all -m set --match-set \
>       dmz-net(dmz_out) dst
> 
> One consequence of this patch is that now both 'set' and 'nfacct' go to
> the end of the rule.
> 
> Another thing to note is that this feature can be used anywhere that
> ipsets are allowed; it is not restricted to the accounting file.
> 
> Finally, the +[....] form must be used;
> +<set>...(<nfacct-object-list>) is not supported.


Please hold off on this for a while -- I just realized that it is
incomplete.

-Tom
-- 
Tom Eastep        \ When I die, I want to go like my Grandfather who
Shoreline,         \ died peacefully in his sleep. Not screaming like
Washington, USA     \ all of the passengers in his car
http://shorewall.net \________________________________________________

Attachment: signature.asc
Description: OpenPGP digital signature

------------------------------------------------------------------------------
Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured data. The platform includes APIs for building
apps and a phenomenal toolset for data science. Developers can use
our toolset for easy data analysis & visualization. Get a free account!
http://www2.precog.com/precogplatform/slashdotnewsletter
_______________________________________________
Shorewall-devel mailing list
Shorewall-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/shorewall-devel

Reply via email to