Basically don't use queues named "foo_in" and "foo_out", just use
a single name "foo", defined with "queue foo on $tdcif" and "queue
foo on $sirif". See the list archives for more; this has come up
several times.



On 2011/02/11 02:25, Mikkel C. Simonsen wrote:
> I have attempted to setup a router/firewall with traffic shaping. The
> traffic passes through just fine, but all through the bulk queues
> (checked using systat queues).
> 
> The system runs OpenBSD 4.8 (GENERIC). I have included the complete
> config file below.
> 
> tdcif is the internet connection, and sirif is the internal /28
> network. The config is a combination of the pf.conf of the old
> system, and some bits found in the man-page and through web searches.
> I guess some small typo is in there somewhere, but where? I hope
> somebody has time to spot the error(s)...
> 
> The goal is to get "space" for some VOIP traffic, and to make sure
> that no single function (mail, http etc.) uses all the bandwidth.
> 
> Best regards,
> 
> Mikkel C. Simonsen
> 
> 
> sirif="fxp0"
> tdcif="fxp1"
> 
> table <web> const {1.2.3.171, 1.2.3.164}
> table <post> const {1.2.3.165, 1.2.3.168}
> table <sirocco> const {1.2.3.172}
> table <sir> const {1.2.3.160/28}
> table <dns> const {1.2.3.170, 1.2.3.164}
> table <dina> const {1.2.3.162}
> 
> altq on $tdcif hfsc bandwidth 10.5Mb queue { voip_out, dns_out,
> bulk_out, web_out, mail_out }
> 
> queue voip_out bandwidth 5%  priority 7 qlimit 500 hfsc (realtime 5%)
> queue dns_out bandwidth  5%  priority 6 qlimit 500 hfsc (realtime 5%)
> queue bulk_out bandwidth 25% priority 4 qlimit 500 hfsc (upperlimit
> 50% default)
> queue web_out bandwidth  40% priority 5 qlimit 500 hfsc (realtime 30%)
> queue mail_out bandwidth 25% priority 3 qlimit 500 hfsc (upperlimit 50%)
> 
> 
> altq on $sirif hfsc bandwidth 13.5Mb queue { voip_in, dns_in,
> bulk_in, web_in, mail_in }
> 
> queue voip_in bandwidth 4%  priority 7 qlimit 500 hfsc (realtime 4%)
> queue dns_in bandwidth  5%  priority 6 qlimit 500 hfsc (realtime 5%)
> queue bulk_in bandwidth 30% priority 4 qlimit 500 hfsc (upperlimit
> 50% default)
> queue web_in bandwidth  20% priority 5 qlimit 500 hfsc (realtime 15%)
> queue mail_in bandwidth 41% priority 3 qlimit 500 hfsc (upperlimit 50%)
> 
> set skip on lo
> set skip on rl0
> 
> pass in quick on $tdcif proto tcp from 2.105.54.144/29 to any port
> telnet queue bulk_in
> 
> block in quick on $tdcif proto tcp to <web> port smtp
> block in quick on $tdcif proto tcp to <sirocco> port 500
> block in quick on $tdcif proto tcp to <post> port 275
> block in quick on $tdcif proto tcp to any port telnet
> block in quick on $tdcif proto tcp to any port 717
> block in quick on $tdcif proto tcp from 89.104.217.210 to 1.2.3.165
> port smtp
> 
> pass in quick on $tdcif proto udp from any to <dina> queue voip_in
> pass in quick on $tdcif proto { tcp, udp } from any to <dns> port
> domain queue dns_in
> pass in quick on $tdcif proto tcp from any to <web> port {80, 443}
> queue web_in
> pass in quick on $tdcif proto tcp from any to <post> queue mail_in
> 
> pass in quick queue bulk_in
> 
> pass out quick on $sirif proto udp from <dina> to any queue voip_out
> pass out quick on $sirif proto tcp from <web> to any queue web_out
> pass out quick on $sirif from <dns> to any queue dns_out
> pass out quick on $sirif proto tcp from <mail> to any queue mail_out
> 
> pass out quick queue bulk_out

Reply via email to