PIPE и QUEUE в IPFW
Добавлено: 2009-07-27 8:28:52
ДЕло вот в чем, есть сеть, у меня на сервере прописано вот так, но почему-то не ощущается приоритета. Да и когда нет никого в сети тож немного инет работат с тормозами. Что, где я неправильно прописал? Помогите!
Код: Выделить всё
#!/bin/sh
cmd="ipfw -q add"
ipfw -f flush
ipfw -f queue flush
ipfw -f pipe flush
ipfw disable one_pass
lan="192.168.0.0/24"
nat="/sbin/natd"
$nat -n tun0 -p 8667 -s -m -dynamic
ipfw pipe 1 config bw 110KB/s
ipfw pipe 2 config bw 500Kbit/s
$cmd 1 deny MAC any ff:ff:ff:ff:ff:ff
$cmd 2 deny MAC ff:ff:ff:ff:ff:ff any
ipfw queue 1 config pipe 1 weight 80 queue 50 mask dst-ip 0xffffffff
ipfw queue 2 config pipe 1 weight 40 queue 50 mask dst-ip 0xffffffff
ipfw queue 3 config pipe 1 weight 2 queue 50 mask dst-ip 0xffffffff
$cmd 100 pass all from any to any via lo0
$cmd 105 deny all from 127.0.0.1/8 to any
$cmd 110 deny all from any to 127.0.0.1/8
$cmd 111 pass all from $lan to me in via sis0
$cmd 112 pass all from me to $lan out via sis0
$cmd 115 deny all from $notlan to not me
$cmd 116 deny all from not me to $notlan
$cmd 135 divert 8667 all from $users to any out via tun0
$cmd 140 divert 8667 all from any to me in via tun0
$cmd 141 queue 1 all from any to 192.168.0.0/24\{3,101,201,253} in via tun0
$cmd 142 queue 2 all from any to 192.168.0.0/24\{1,2,9,10,13,16,21,24} in via tun0
$cmd 143 queue 3 all from any to 192.168.0.0/24\{7,15,30} in via tun0
$cmd 145 pass all from me to any out via tun0
$cmd 150 pass all from any to me in via tun0
$cmd 155 pass all from any to $lan in via tun0
$cmd 160 pass all from $lan to not me in via sis0
$cmd 165 pass all from not me to $lan out via sis0
$cmd 180 pass all from me to any out via rl0
$cmd 185 pass all from any to me in via rl0
$cmd 190 deny log all from any to any