aboutsummaryrefslogtreecommitdiff
path: root/share/examples/pf/queue2
diff options
context:
space:
mode:
Diffstat (limited to 'share/examples/pf/queue2')
-rw-r--r--share/examples/pf/queue228
1 files changed, 28 insertions, 0 deletions
diff --git a/share/examples/pf/queue2 b/share/examples/pf/queue2
new file mode 100644
index 000000000000..1968d8f3e8a3
--- /dev/null
+++ b/share/examples/pf/queue2
@@ -0,0 +1,28 @@
+# $OpenBSD: queue2,v 1.4 2006/10/07 04:48:01 mcbride Exp $
+# advanced queue example.
+# give interactive ssh traffic priority over ssh bulk transfers (scp, sftp)
+
+ext_if="dc0"
+developerhosts="192.168.2.0/24"
+employeehosts="192.168.0.0/23"
+
+altq on $ext_if cbq bandwidth 5Mb queue { std, http, mail, ssh }
+
+queue std bandwidth 10% cbq(default)
+queue http bandwidth 60% priority 2 cbq(borrow red) { employees, developers }
+queue developers bandwidth 75% cbq(borrow)
+queue employees bandwidth 15%
+queue mail bandwidth 10% priority 0 cbq(borrow ecn)
+queue ssh bandwidth 20% cbq(borrow) { ssh_interactive, ssh_bulk }
+queue ssh_interactive bandwidth 25% priority 7
+queue ssh_bulk bandwidth 75% priority 0
+
+block return out on $ext_if inet all queue std
+pass out on $ext_if inet proto tcp from $developerhosts to any port 80 \
+ queue developers
+pass out on $ext_if inet proto tcp from $employeehosts to any port 80 \
+ queue employees
+pass out on $ext_if inet proto tcp from any to any port 22 \
+ queue(ssh_bulk, ssh_interactive)
+pass out on $ext_if inet proto tcp from any to any port 25 \
+ queue mail