rendered paste body# Flush tc qdiscs:
/sbin/tc qdisc del dev eth1 root >/dev/null 2>&1
# Create root qdiscs:
/sbin/tc qdisc add dev eth1 root handle 2: htb default 1000
# Create root class :
/sbin/tc class add dev eth1 parent 2: classid 2:1 htb rate 3584kbit ceil 3584kbit burst 0 prio 1
# Create default class :
/sbin/tc class add dev eth1 parent 2: classid 2:1000 htb rate 3500kbit ceil 3350kbit burst 0 prio 5
# Create class:
/sbin/tc class add dev eth1 parent 2:1 classid 2:44 htb rate 64kbit ceil 72kbit burst 8kbit prio 1 quantum 1536
# Create filter:
/sbin/tc filter add dev eth1 protocol ip parent 2:0 prio 1 handle 244 fw flowid 2:44
# Iptables rules:
/sbin/iptables -F -t mangle
/sbin/iptables -A PREROUTING -t mangle -p udp -s 172.16.0.185/32 --sport 10000:10100 -d 172.16.1.0/24 -j MARK --set-mark 244
Now the statistics:
server:~# iptables -vnx -L -t mangle
Chain PREROUTING (policy ACCEPT 47149617 packets, 16079655958 bytes)
pkts bytes target prot opt in out source destination
10732 643632 MARK udp -- * * 172.16.0.185 172.16.1.0/24 udp spts:10000:10100 MARK set 0xf4
The are iptables marked packages. Now the classes statistics:
baco:~# tc -s -d cl sh dev eth1
class htb 2:44 parent 2:1 prio 1 quantum 1536 rate 64000bit ceil 72000bit burst 1023b/8 mpu 0b overh ead 0b cburst 1608b/8 mpu 0b overhead 0b level 0
Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
lended: 0 borrowed: 0 giants: 0
tokens: 131070 ctokens: 183067
class htb 2:1 root rate 3584Kbit ceil 3584Kbit burst 2Kb/8 mpu 0b overhead 0b cburst 2Kb/8 mpu 0b ov erhead 0b level 7
Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
lended: 0 borrowed: 0 giants: 0
tokens: 4680 ctokens: 4680
class htb 2:1000 root prio 5 quantum 43750 rate 3500Kbit ceil 3350Kbit burst 2Kb/8 mpu 0b overhead 0 b cburst 2017b/8 mpu 0b overhead 0b level 0
Sent 54534126 bytes 270559 pkts (dropped 0, overlimits 0)
rate 274344bit 123pps
lended: 270559 borrowed: 0 giants: 0
tokens: 4505 ctokens: 4661
All the trafic going trhough the default class :(