Re: ALTQ and tun

From: Max Laier <max_at_love2party.net>
Date: Thu, 22 Jul 2004 22:33:12 +0200
On Thursday 22 July 2004 22:04, Wiktor Niesiobedzki wrote:
> Hi,
>
> Recently I configured my DSL link to use pf+ALTQ instead of
> ipfw+DUMMYNET, but I encountered following problem:
> - no single packet wents through the ALTQ
>
> I guess, that I miss something very trival, but for checkout:
> pf.conf:
> iext_if="tun0
> int_if="dc0"
>
> altq on $ext_if priq queue {dc, ssh_interactive, ssh_bulk, other}
> queue dc priority 0
> queue ssh_interactive priority 15
> queue ssh_bulk priority 3
> queue other priority 7 priq(default)
>
> pass out on $ext_if proto tcp from any to any port 22 tos 0x10 queue
> ssh_interactive label ssh_inter pass out log on $ext_if proto tcp from any
> to any port 22 tos 0x08 queue ssh_bulk label ssh_bulk pass out log on
> $ext_if proto tcp from any to any port 22 queue ssh_interactive label
> ssh_inter2 pass out log on $ext_if proto tcp from any to any user dctc
> queue dc label dc_transfer #pass out on $ext_if inet proto tcp from
> ($ext_if) port 61412 to any queue dc label dc_transfer_port pass out on
> $ext_if proto tcp from krz.mine.nu port 61412 to any label dc_transfer_port
> pass in log on $ext_if proto tcp from any to ($ext_if) port
> {22,80,113,61412} label pass_in_tcp pass in log on $ext_if proto udp from
> any to ($ext_if) port 61412 label pass_in_udp pass in on $ext_if proto tcp
> from any to any port 4662 label pass_in_mule queue dc pass in on $ext_if
> proto udp from any to any port 4672 label pass_in_kad queue dc pass out log
> on $ext_if proto { tcp, udp } all keep state label pass_out_all queue other
> pass out on $ext_if inet proto icmp all icmp-type {0,1,3,4,8,11,12} keep
> state pass in on $int_if all label pass_in_internal
> pass out on $int_if all label pass_out_internal queue other
>
> And for example:
> # pfctl -v -s rule
> [...]
> pass out log on tun0 proto tcp all keep state label "pass_out_all" queue
> other [ Evaluations: 25193     Packets: 855303    Bytes: 645597787  
> States: 13    ] pass out log on tun0 proto udp all keep state label
> "pass_out_all" queue other [ Evaluations: 3023      Packets: 10152    
> Bytes: 1222129     States: 2     ] [...]
>
> # pfctl -v -s queue
> queue dc priority 0
>   [ pkts:          0  bytes:          0  dropped pkts:      0 bytes:      0
> ] [ qlength:   0/ 50 ]
> queue ssh_interactive priority 15
>   [ pkts:          0  bytes:          0  dropped pkts:      0 bytes:      0
> ] [ qlength:   0/ 50 ]
> queue ssh_bulk priority 3
>   [ pkts:          0  bytes:          0  dropped pkts:      0 bytes:      0
> ] [ qlength:   0/ 50 ]
> queue other priority 7 priq( default )
>   [ pkts:          0  bytes:          0  dropped pkts:      0 bytes:      0
> ] [ qlength:   0/ 50 ]
>
>
> Nothing. Just like ALTQ was not enabled, but then, how to enable it?
> Can someone point me out, what I am missing in my configuration?

Nothing. This is a problem in ALTQ activation. Please do the following:
1) # pfctl -d; pfctl -Fa; pfctl -ef /etc/pf.conf
Your queues should be working now.
2) Make sure to install the updated rc.d/pf script, which will "just do the 
right thing"[tm].
3) A revised ALTQ API (which I haven't found to time to do, yet) will solve 
this.

If the problem is persistent (which I don't think will be the case), please 
report back.

-- 
/"\  Best regards,			| mlaier_at_freebsd.org
\ /  Max Laier				| ICQ #67774661
 X   http://pf4freebsd.love2party.net/	| mlaier_at_EFnet
/ \  ASCII Ribbon Campaign		| Against HTML Mail and News

Received on Thu Jul 22 2004 - 18:35:27 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:02 UTC