tc操作教程,tc编程教程

首页 > 实用技巧 > 作者:YD1662023-06-16 20:47:44

TC命令可以限制端口速度,可以通过以下命令完成:

  1. 安装tc工具(如果未安装):

sudo apt-get install tc

  1. 创建一个名为“tc_rules”的文件夹,用来存储限速规则:

sudo mkdir /etc/tc_rules

  1. 创建一个名为“eth0”(也可以是其他网卡)的限速规则:

sudo tc qdisc add dev eth0 root handle 1: htb default 10

  1. 增加限速规则:

sudo tc class add dev eth0 parent 1: classid 1:1 htb rate 1mbit ceil 1mbit

上面的命令将网卡eth0的速度限制为1 mbps。

  1. 将其他流量分类到默认类别:

bash复制代码sudo tc class add dev eth0 parent 1:1 classid 1:10 htb rate 1mbit ceil 1mbit prio 0

  1. 可以对特定的IP地址或端口实施不同的限速策略。

例如,可以将IP地址为192.168.1.2的设备限制为500 kbps:

sudo tc filter add dev eth0 parent 1:0 protocol ip prio 1 u32 match ip dst 192.168.1.2 flowid 1:10 sudo tc class add dev eth0 parent 1:1 classid 1:2 htb rate 500kbit ceil 500kbit prio 1 sudo tc filter add dev eth0 parent 1:0 protocol ip prio 1 u32 match ip dst 192.168.1.2 flowid 1:2

类似的,可以将端口为80的流量限制为2 Mbps:

sudo tc filter add dev eth0 parent 1:0 protocol ip prio 1 u32 match ip sport 80 0xffff flowid 1:10 sudo tc class add dev eth0 parent 1:1 classid 1:3 htb rate 2mbit ceil 2mbit prio 2 sudo tc filter add dev eth0 parent 1:0 protocol ip prio 1 u32 match ip sport 80 0xffff flowid 1:3

这两个规则可编译成一个实例。其中:

完整的命令如下:

sudo tc qdisc add dev eth0 root handle 1: htb default 10 sudo tc class add dev eth0 parent 1: classid 1:1 htb rate 1mbit ceil 1mbit sudo tc class add dev eth0 parent 1:1 classid 1:10 htb rate 1mbit ceil 1mbit prio 0 sudo tc class add dev eth0 parent 1:1 classid 1:2 htb rate 500kbit ceil 500kbit prio 1 sudo tc class add dev eth0 parent 1:1 classid 1:3 htb rate 2mbit ceil 2mbit prio 2 sudo tc filter add dev eth0 parent 1:0 protocol ip prio 1 u32 match ip dst 192.168.1.2 flowid 1:2 sudo tc filter add dev eth0 parent 1:0 protocol ip prio 1 u32 match ip sport 80 0xffff flowid 1:3

要删除限速规则,使用以下命令之一:

sudo tc qdisc del dev eth0 root sudo tc qdisc del dev eth0 ingress

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.