# cat net-env.sh
#!/bin/bash
ip_1=xxx.xxx.xxx.xxx
ip_2=xxx.xxx.xxx.xxx
tc qdisc add dev eth0 root handle 1: htb
tc class add dev eth0 parent 1: classid 1:11 htb rate 20000Mbit
tc class add dev eth0 parent 1: classid 1:12 htb rate 20000Mbit
tc filter add dev eth0 parent 1:0 protocol ip prio 1 u32 match ip dst ${ip_1} flowid 1:11
tc filter add dev eth0 parent 1:0 protocol ip prio 1 u32 match ip dst ${ip_2} flowid 1:12
# 隨機丟失25%數 50% 丟失成功 10%重包 25%數據準時到達 50%延時100ms
tc qdisc add dev eth0 parent 1:11 netem loss 25% 50% duplicate 10% delay 100ms reorder 25% 50%
tc qdisc add dev eth0 parent 1:12 netem loss 25% 50% duplicate 10% delay 100ms reorder 25% 50%
int=1
while(( $int<=60*15 ))
do
echo $int
let "int++"
sleep 1
done
# 清空 eth0網卡根目錄的隊列規則
tc qdisc del dev eth0 root