在Linux系统中,可以使用tc
(Traffic Control)工具来限制带宽。以下是一个简单的示例,展示如何使用tc
限制网络接口的带宽。
iproute2
软件包,它包含了tc
工具。在Debian和Ubuntu上,可以使用以下命令安装:sudo apt-get update
sudo apt-get install iproute2
在CentOS和RHEL上,可以使用以下命令安装:
sudo yum install iproute
1:
的qdisc(排队规则):sudo tc qdisc add dev eth0 root handle 1: htb default 30
这里,eth0
是要限制带宽的网络接口。请根据实际情况替换为你的网络接口名称。
30:
的类,并设置带宽限制:sudo tc class add dev eth0 parent 1: classid 1:30 htb rate 1mbit ceil 1mbit
这里,我们将带宽限制为1Mbps。你可以根据需要修改rate
和ceil
的值。
1:10:
的过滤器,并将其与相应的类关联:sudo tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip src 192.168.1.10 flowid 1:30
这里,我们限制了IP地址为192.168.1.10的设备带宽。你可以根据需要修改IP地址和子网。
sudo tc -s qdisc ls dev eth0
sudo tc -s class ls dev eth0
sudo tc -s filter ls dev eth0
sudo tc qdisc del dev eth0 root
请注意,这些更改在系统重启后将丢失。要使更改永久生效,可以将这些命令添加到系统启动脚本中,例如/etc/rc.local
(在Debian和Ubuntu上)或/etc/rc.d/rc.local
(在CentOS和RHEL上)。