Eu não sou nenhum especialista nisso, mas tive mais sucesso com o cbq (veja abaixo). Esta versão retarda tudo, mas eu prefiro diminuir os downloads de longa duração ao longo do tempo, mantendo a navegação interativa rápida. Eu sei que posso fazer isso com um servidor proxy, mas gostaria de encontrar uma maneira de fazer isso neste nível.
rate=64kbps # 64kbps (512 kbit/sec) = 450 Mb/2 hrs, for each IP address
irate=192kbps # 192kbps allows 490 Gb in 31 days, for the whole interface, max 3 simultaneous downloaders
iface=eth0 # LAN address (could be WiFi)
ranges="192.168.201.128/25" # 192.168.1.128/255.255.255.128, only slow down DHCP dynamic addresses
alg=cbq # cbq or htb
echo "Throttling hotel network..."
# Clear existing
tc qdisc del dev $iface root 2>&1 | grep -v "No such"
# Limit interface rate
tc qdisc add dev $iface handle 1: root $alg avpkt 1000 bandwidth $irate
tc class add dev $iface parent 1: classid 1:1 $alg rate $rate allot 1500 prio 5 bounded isolated
# Limit rate of each IP address
for range in $ranges; do
echo "$range"
tc filter add dev $iface parent 1: protocol ip prio 16 u32 match ip dst $range flowid 1:1
tc filter add dev $iface parent 1: protocol ip prio 16 u32 match ip src $range flowid 1:1
done