aboutsummaryrefslogtreecommitdiff
path: root/share
diff options
context:
space:
mode:
authorKristof Provost <kp@FreeBSD.org>2025-06-03 07:15:21 +0000
committerKristof Provost <kp@FreeBSD.org>2025-06-25 17:56:23 +0000
commitff11f1c8c76c053b442f1f1df97272939fbf5afc (patch)
tree5f673835826467ca5b7752fe23e50a7a88fb6dac /share
parent53a341d0e445269590dcb32f8c8320c3459a21c4 (diff)
Diffstat (limited to 'share')
-rw-r--r--share/man/man5/pf.conf.519
1 files changed, 18 insertions, 1 deletions
diff --git a/share/man/man5/pf.conf.5 b/share/man/man5/pf.conf.5
index edcb335619ba..010096369c83 100644
--- a/share/man/man5/pf.conf.5
+++ b/share/man/man5/pf.conf.5
@@ -27,7 +27,7 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd June 12, 2025
+.Dd June 17, 2025
.Dt PF.CONF 5
.Os
.Sh NAME
@@ -2216,6 +2216,22 @@ directive occurs only at configuration file parse time, not during runtime.
.It Ar ridentifier Aq Ar number
Add an identifier (number) to the rule, which can be used to correlate the rule
to pflog entries, even after ruleset updates.
+.It Cm max-pkt-rate Ar number Ns / Ns Ar seconds
+Measure the rate of packets matching the rule and states created by it.
+When the specified rate is exceeded, the rule stops matching.
+Only packets in the direction in which the state was created are considered,
+so that typically requests are counted and replies are not.
+For example:
+.Pp
+.Bd -literal -offset indent -compact
+block in proto icmp
+pass in proto icmp max-pkt-rate 100/10
+.Ed
+.Pp
+passes up to 100 icmp packets per 10 seconds.
+When the rate is exceeded, all icmp is blocked until the rate falls below
+100 per 10 seconds again.
+.Pp
.It Xo Ar queue Aq Ar queue
.No \*(Ba ( Aq Ar queue ,
.Aq Ar queue )
@@ -3388,6 +3404,7 @@ filteropt = user | group | flags | icmp-type | icmp6-type | "tos" tos |
"max-mss" number | "random-id" | "reassemble tcp" |
fragmentation | "allow-opts" |
"label" string | "tag" string | [ "!" ] "tagged" string |
+ "max-pkt-rate" number "/" seconds |
"set prio" ( number | "(" number [ [ "," ] number ] ")" ) |
"queue" ( string | "(" string [ [ "," ] string ] ")" ) |
"rtable" number | "probability" number"%" | "prio" number |