Была задача ограничить скорость интернета одного пользователя в сети.
Нашел решение тут: http://www.tangarus.ru/61/linux/ogranichenie-skorosti-kanalashaping-v-linux/
eth1 - Интерфейс на в локальную сеть
192.168.200.31 - ip пользователя в локальной сети
#!/bin/bash
#Обнуляем корневой класс
tc qdisc del dev eth1 root
tc qdisc del dev eth1 handle ffff: ingress
#Создаём корневой класс исходя из скорости канала в Интернет 10Мбит для входящего трафика...
tc qdisc add dev eth1 root handle 1: cbq avpkt 1000 bandwidth 10mbit
#... и для исходящего
tc qdisc add dev eth1 handle ffff: ingress
#Пользователь 1
USR1IP=192.168.200.31
USR1ID=1 #код потока пользователя, д.б. уникальный для каждого
USR1DOWNSPD=1024 #Ограничение входящей скорости
USR1UPSPD=512 #Ограничение исходящей скорости
let USR1UPSPDBSRT=$USR1UPSPD*1024
#Режим входящий трафик
tc class add dev eth1 parent 1: classid 1:$USR1ID cbq rate $USR1DOWNSPD\kbit allot 1500 prio 5 bounded isolated
tc filter add dev eth1 parent 1: protocol ip prio 16 u32 match ip dst $USR1IP flowid 1:$USR1ID
tc qdisc add dev eth1 parent 1:$USR1ID sfq perturb 10
#Режим исходящий трафик
tc filter add dev eth1 parent ffff: protocol ip prio 50 u32 match ip src $USR1IP/32 police rate $USR1UPSPD\Kbit burst $USR1UPSPDBSRT drop flowid :$USR1ID
Другая реализация ограничение скорости интернета для пользователей в сети
http://sudouser.com/nastrojka-ogranicheniya-i-raspredeleniya-kanala-htb-shaper.html
Установка и настройка биллинговой системы Stargazer
http://notes.ghost.dn.ua/node/66