Hi, I was reviewing my firewall rules and got confused about priority rules. I wasn't certain was it better to have higher priority number for a rule or lower. After some digging it seems that the higher priority numbers get processed first. I think the pf.conf(5) man page should document this so others shouldn't have to dig for this info from PF FAQ. I don't
While I looked for the priority info I noticed the queuing section has wrong priorities listed in the example rule. Here's a small patch to fix both. Timo Index: man5/pf.conf.5 =================================================================== RCS file: /cvs/src/share/man/man5/pf.conf.5,v retrieving revision 1.530 diff -u -u -p -r1.530 pf.conf.5 --- man5/pf.conf.5 12 Oct 2013 21:44:57 -0000 1.530 +++ man5/pf.conf.5 27 Oct 2013 06:32:23 -0000 @@ -646,6 +646,8 @@ code point in the 802.1Q VLAN header. If two priorities are given, packets which have a TOS of .Ar lowdelay and TCP ACKs with no data payload will be assigned to the second one. +Packets with higher priority number are processed first and packets with +the same priority are processed in a round-robin fashion. .Pp For example: .Bd -literal -offset indent @@ -1551,7 +1553,7 @@ pass out on em0 inet proto tcp from $dev pass out on em0 inet proto tcp from $employeehosts to any port 80 \e set queue employees pass out on em0 inet proto tcp from any to any port 22 \e - set (queue(ssh_bulk, ssh_interactive), prio (6, 3)) + set (queue(ssh_bulk, ssh_interactive), prio (3, 6)) pass out on em0 inet proto tcp from any to any port 25 \e set queue mail .Ed