Queueing For a DMZ: Rules Part 2

pass in on $ext_if proto { tcp, udp } to $nameservers \
     port domain queue ext_udp
pass in on $int_if proto { tcp, udp } from $localnet to $nameservers \
     port domain
pass out on $dmz_if proto { tcp, udp } to $nameservers port \
     domain queue ext_dmz_udp
pass out on $dmz_if proto { tcp, udp } from $localnet to $nameservers \
     port domain queue dmz_udp
pass in on $ext_if proto tcp to $webserver port $webports \
     queue ext_web
pass in on $int_if proto tcp from $localnet to $webserver port $webports
pass out on $dmz_if proto tcp to $webserver port $webports \
     queue ext_dmz_web
pass out on $dmz_if proto tcp from $localnet to $webserver port $webports \
     queue dmz_web
pass in log on $ext_if proto tcp to $mailserver port smtp
pass in log on $ext_if proto tcp from $localnet to $mailserver port smtp
pass in log on $int_if proto tcp from $localnet to $mailserver port $email
pass out log on $dmz_if proto tcp to $mailserver port smtp \
     queue ext_mail
pass in on $dmz_if from $mailserver to port smtp queue dmz_mail
pass out log on $ext_if proto tcp from $mailserver to port smtp \
     queue ext_dmz_mail