如何快速安装Debian/Ubuntu?

在Linux系统中限制带宽是网络管理的重要任务,适用于服务器流量控制、多用户公平共享或测试网络场景,以下是四种主流方法,操作前请确认具备root权限,并备份关键数据。


TC(Traffic Control)命令

Linux内核自带的流量控制工具,通过令牌桶算法实现精确限速。
操作步骤:

  1. 清除现有规则(避免冲突)

    tc qdisc del dev eth0 root  # 删除eth0网卡的原有规则
  2. 创建根队列

    tc qdisc add dev eth0 root handle 1: htb default 10
    • handle 1::规则编号
    • htb:分层令牌桶算法
    • default 10:未分类流量走ID 10的子类
  3. 创建父类(总带宽限制)

    tc class add dev eth0 parent 1: classid 1:1 htb rate 1gbit ceil 1gbit  # 总带宽1Gbps
  4. 创建子类(限制特定IP)

    tc class add dev eth0 parent 1:1 classid 1:10 htb rate 10mbit ceil 15mbit burst 20k  # 限制为10~15Mbps
    tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip dst 192.168.1.100 flowid 1:10  # 目标IP限速
    • burst:突发流量容忍值
    • u32 match:匹配目标IP的流量

验证规则:

tc -s qdisc show dev eth0  # 查看统计信息

Wondershaper(自动化工具)

简化tc命令的封装工具,适合快速配置。
安装与使用:

# 限制eth0下载100Mbps,上传50Mbps
wondershaper eth0 100000 50000  # 单位Kbps
# 清除限制
wondershaper clear eth0

Trickle(应用级限速)

在用户空间限制单个程序的带宽,无需内核权限。
操作流程:

  1. 安装工具

    sudo apt install trickle  # Debian/Ubuntu
  2. 限制wget下载速度

    trickle -d 500 -u 300 wget http://example.com/file.iso  # 下载500KB/s,上传300KB/s

IPTables(辅助限速)

结合connlimithashlimit模块实现基础控制。
示例:限制单IP并发连接数

iptables -A INPUT -p tcp --dport 80 -m connlimit --connlimit-above 20 -j DROP  # 限制80端口单IP超过20连接则丢弃

选择建议

方法 适用场景 精度
TC 系统级精准控制
Wondershaper 快速配置整机带宽
Trickle 限制特定程序
IPTables 辅助连接数控制

注意事项

  1. 网卡名称确认:使用ip link查看实际网卡名(如ens18可能替代eth0)。
  2. 数值单位tc默认单位为bitwondershaperKbit,注意换算(1Byte=8bit)。
  3. 临时性规则:重启后TC规则失效,需将命令写入/etc/rc.local实现持久化。
  4. 测试验证:用iperf3speedtest-cli测试限速效果。

引用说明参考Linux内核文档(kernel.org)、Ubuntu Manpage及网络管理实践指南,技术细节遵循RFC 3290(流量控制标准),工具版本要求:iproute2-5.0+wondershaper-1.1+

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6603.html

(0)
酷番叔酷番叔
上一篇 2025年7月8日 01:02
下一篇 2025年7月8日 01:20

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信