首页 帮助中心 CentOS系统服务器带宽限制配置实战指南
CentOS系统服务器带宽限制配置实战指南
时间 : 2025-04-17 14:19:58 编辑 : 华纳云 阅读量 : 82

服务器明明配置不低,但某些业务占用过多带宽,导致整台机器都“窒息”,此时“带宽限制”就成了你的流量平衡利器。深入了解CentOS系统环境,学会使用主流方法配置网络带宽限制,用得好,不但防爆,还能稳住性能。

在CentOS系统中,常见的带宽控制工具主要有:

tc:内核级工具,精细控制出/入站流量,专业级方案

trickle:用户空间工具,限制某个程序的上下行速率

iptables+tc:联合方案,按IP/端口限速,支持防火墙配合策略

wondershaper:简化工具,一键设置整机限速,适合快速调试

主力选手:tc 命令详解

tc是Linux内核自带的带宽控制组件,属于iproute2工具包。它能从核心层精细地配置流量队列、限速规则、包过滤等。

1. 安装 iproute 工具(CentOS 通常已内置)

sudo yum install iproute -y

2. 查询当前网卡名

ip a

输出中你会看到例如:

2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> ...

假设我们用的是 ens33 网卡。

3. 设置出口限速规则(以限制上传速度为例)

限制 ens33 网卡上传速度为 1Mbps:

tc qdisc add dev ens33 root handle 1: htb default 12
tc class add dev ens33 parent 1: classid 1:1 htb rate 1mbit
tc class add dev ens33 parent 1:1 classid 1:12 htb rate 1mbit

含义解析:

qdisc:设置根队列;

htb:层次令牌桶

rate:限制速率。

4. 可选:按IP/端口设置限制(结合 filter)

例如只限制源IP为 192.168.0.100 的上传速率:

tc filter add dev ens33 protocol ip parent 1:0 prio 1 u32 match ip src 192.168.0.100 flowid 1:12

5. 查看当前限速设置

tc -s qdisc show dev ens33

6. 删除限速规则(恢复默认)

tc qdisc del dev ens33 root

简单直接的工具:wondershaper

如果你只想快速限制某网卡上传和下载速率,推荐使用 wondershaper:

1. 安装(CentOS 7/8 通用)

sudo yum install epel-release -y
sudo yum install wondershaper -y

2. 设置限速(单位:kbps)

sudo wondershaper ens33 1024 2048

上面命令表示:

下载限制为 1024kbps(1Mbps)

上传限制为 2048kbps(2Mbps)

3. 清除限制:

sudo wondershaper clear ens33

优点:无需掌握复杂规则,适合中小型限制任务或测试场景。

程序级限速神器:trickle

trickle 是一款用户态带宽限制器,能针对某个程序进行限速。

安装:

sudo yum install trickle -y

使用方式:

比如限制 wget 下载速率为 200KB/s:

trickle -d 200 wget http://example.com/largefile.zip

参数说明:

-d:下载限速(KB/s)

-u:上传限速

也可限制 scp、rsync 等工具,非常适合测试或控制开发人员上传速度。

带宽限制不是“堵”,而是“引流”,CentOS系统服务器提供了强大但稍显复杂的带宽管理工具,wondershaper快速、简洁,易用,适合快速限速测试、整体限制等场景使用。tc精细控制、灵活组合,适合高级定制、生产环境等场景。trickle单程序速率限制、非侵入式,适合临时调试、开发测试等场景使用。
从简到难,你可以按需选择。

华纳云 推荐文章
如何使用Docker来搭建CentOS镜像服务器 美国高防云服务器配置FTP步骤(以centos系统为例) centos云服务器怎么简单部署一个网站? 在CentOS系统中dmesg日志异常怎么办 CentOS怎么查看已设置的crontab列表? CentOS系统 Node.js日志丢失怎么办? centos7中设置tomcat权限的具体步骤 在CentOS服务器上管理硬盘使用的方法和技巧 centos服务器安装nexus端口冲突怎么解决? CentOS Stream和CentOS Linux两者差异有哪些
活动
客服咨询
7*24小时技术支持
技术支持
渠道支持