TC 使用实例
原理介绍
Linux 操作系统中的流量控制器 TC(Traffic Control)用于 Linux 内核的流量控制,主要是通过在输出端口处建立一个队列来实现流量控制。
常用命令
延迟 100 ms: tc qdisc add dev eth0 root netem delay 100ms
延迟 100ms ± 10ms (90 ~ 110 ms ): tc qdisc add dev eth0 root netem delay 100ms 10ms
随机丢包 1%: tc qdisc add dev eth0 root netem loss 1%
模拟包重复: tc qdisc add dev eth0 root netem duplicate 1%
模拟数据包损坏: tc qdisc add dev eth0 root netem corrupt 0.2%
模拟数据包乱序: tc qdisc change dev eth0 root netem delay 10ms reorder 25% 50%
查看已经配置的网络条件: tc qdisc show dev eth0
删除网卡上面的相关配置: tc qdisc del dev enp0s3 root
对指定 ip 做限制:
tc qdisc del dev enp0s3 root
tc qdisc add dev enp0s3 root handle 1: prio
tc filter add dev enp0s3 parent 1:0 protocol ip prio 1 u32 match ip dst 172.27.25.3 flowid 2:1
tc qdisc add dev enp0s3 parent 1:1 handle 2: netem delay 1500ms loss 1%
评论