в двух словах: iptables пока оставь

) В смысле, с его помощью можно сделать маскарад, но не зажать траффик.
про то, как надо: допустим, надо пользователю 10.0.0.10 зажать траффик до 64Kbit
1) делаем корневую очередь на девайсе
к пользователю, советую HTB
Код:

tc qdisc add dev eth0 root handle 1:0 htb
2) создаём класс, котoрый будет жать траффик
Код:

tc class add dev eth0 parent 1:0 classid 1:1 htb rate 64Kbit
3) вешаем очередь SFQ за классом, чтобы зажатый траффик был более-менее равномерен
Код:

tc qdisc add dev eth0 parent 1:1 sfq perturb 10
4) создаём фильтр, который будет кидать траффик в класс
Код:

tc filter add dev eth0 parent 1:0 protocol ip prio 16 u32 match ip dst 10.0.0.10 flowid 1:1
всё. Смотрим статистику.
Код:

tc -s qdisc show
tc -s class show dev eth0
tc filter show dev eth0
кстати, в том дистре, который я сегодня объявлял это бы выглядело так:
Код:

!
shaper rule test
address 10.0.0.10
bound 64Kbit
!
ip shaper ethernet 0
shaper rule test
!
а вообще
http://lartc.org