Hi,
I use a different approach and instead of hardcoding port
numbers for mldonkey and BitTorrent run those as a separate
user on my lil' firewall:
altq on $ext_if priq bandwidth 100Kb queue \
{tcp_ack, ssh_login, other, p2p}
queue tcp_ack priority 7 priq
queue ssh_login priority 5 priq
queue other priority 3 priq
queue p2p priority 1 priq(default)
pass out quick on $ext_if proto tcp from $ext_if to any user p2p \
keep state queue(p2p, tcp_ack)
pass in quick on $ext_if proto tcp from any to $ext_if user p2p \
keep state queue(p2p, tcp_ack)
pass out quick on $ext_if proto tcp from $ext_if to any port ssh \
keep state queue(other, ssh_login)
pass in quick on $ext_if proto tcp from any to $ext_if port ssh \
keep state queue(other, ssh_login)
pass out on $ext_if proto tcp from $ext_if to any \
keep state queue(other, tcp_ack)
pass in on $ext_if proto tcp from any to $ext_if \
keep state queue(other, tcp_ack)
This make sure you always have a "low id" and "open port"
(using the language of those sites ;-)
And I run the bittorent client with non-standard ports
(--minport, --maxport )
Regards
Alex