cvs commit: src/sbin/ipfw ipfw2.c src/sys/netinet ip_fw.h ip_fw2.c
Gleb Smirnoff
glebius at FreeBSD.org
Tue Dec 13 04:16:04 PST 2005
glebius 2005-12-13 12:16:03 UTC
FreeBSD src repository
Modified files:
sbin/ipfw ipfw2.c
sys/netinet ip_fw.h ip_fw2.c
Log:
Add a new feature for optimizining ipfw rulesets - substitution of the
action argument with the value obtained from table lookup. The feature
is now applicable only to "pipe", "queue", "divert", "tee", "netgraph"
and "ngtee" rules.
An example usage:
ipfw pipe 1000 config bw 1000Kbyte/s
ipfw pipe 4000 config bw 4000Kbyte/s
ipfw table 1 add x.x.x.x 1000
ipfw table 1 add x.x.x.y 4000
ipfw pipe tablearg ip from table(1) to any
In the example above the rule will throw different packets to different pipes.
TODO:
- Support "skipto" action, but without searching all rules.
- Improve parser, so that it warns about bad rules. These are:
- "tablearg" argument to action, but no "table" in the rule. All
traffic will be blocked.
- "tablearg" argument to action, but "table" searches for entry with
a specific value. All traffic will be blocked.
- "tablearg" argument to action, and two "table" looks - for src and
for dst. The last lookup will match.
Revision Changes Path
1.82 +44 -46 src/sbin/ipfw/ipfw2.c
1.103 +2 -0 src/sys/netinet/ip_fw.h
1.119 +16 -5 src/sys/netinet/ip_fw2.c
More information about the cvs-src
mailing list