使用tc命令结合htb可限制Linux网卡出站带宽,如将eth0上传限速至1Mbps;通过ifb设备间接限制入站流量,实现下载限速;也可用wondershaper简化操作。

在Linux系统中限制网卡的速率和带宽,通常使用(Traffic Control)命令结合(Hierarchical Token Bucket)队列规则来实现。这种方法可以精细控制网络接口的上传和下载速度,适用于测试环境、带宽管理或防止某个服务占用过多网络资源。
限制从本机发出的数据速率(即上传速度),可以通过在指定网卡上设置规则来完成。
例如:将网卡的出站带宽限制为1Mbps。
说明:
- 添加一个队列规则,表示作用于网卡根队列。
- 是该队列的标识符。
- 是常用的可控制带宽的队列类型。
- 定义一个类,限制速率为1mbit(即1Mbps)。
如果规则已存在,需要先清除:

不能直接限制入站流量(inbound),因为数据在进入网卡后才被系统控制。但可以通过(Intermediate Functional Block)设备来间接实现。
步骤如下:
- 加载模块并创建虚拟设备:
- 将入口流量重定向到:
- 在上设置限速规则(如限制为512kbps):

查看当前网卡的队列规则:
删除所有规则(恢复原始状态):

也可以使用更简单的工具如,适合快速上手。
安装(以Ubuntu为例):
限制上传1000kbps,下载500kbps:
清除限制:
基本上就这些。使用能更灵活地控制网络流量,而适合快速部署简单限速策略。
以上就是Linux如何限制网卡的速率和带宽的详细内容,更多请关注php中文网其它相关文章!