Пользователи подключаются к серверу через pptpd, и нужно справедливо делить между ними интернет канал. Сейчас у меня реализовано так: Трафик идущий к интерфейсам ppp0..pppX перенаправляется на устройство ifb0 следующим образом:
Код: Выделить всё
tc filter add dev $DEV_PPP ingress
tc filter add dev $DEV_PPP parent ffff: protocol ip u32 match u32 0 0 action mirred egress redirect dev ifb0И на ifb0 вешается корневая дисциплина очереди htb.
Код: Выделить всё
tc class add dev ifb0 parent 1: classid 1:2 htb rate 100Mbit
tc class add dev ifb0 parent 1:2 classid 1:10 htb rate 128Kbit ceil 10Mbit prio 5
tc qdisc add dev ifb0 parent 1:10 handle 10 sfq perturb 10
tc class add dev ifb0 parent 1:2 classid 1:20 htb rate 256Kbit ceil 10Mbit prio 0
tc qdisc add dev ifb0 parent 1:20 handle 20 sfq perturb 10
tc filter add dev ifb0 parent 1:0 protocol ip prio 100 u32 match ip sport 27015 0xffff classid 1:20
tc class add dev ifb0 parent 1:2 classid 1:30 htb rate 1Kbit ceil 10Mbit prio 5
tc qdisc add dev ifb0 parent 1:30 handle 30 sfq perturb 10Но шейпер не работает, если один пользователь начинает качать торрент, то у остальных инет зависает. Подскажите в чем я ошибся. Заранее спасибо.