介绍

WonderShaper是一个用于对特定网卡进行带宽限速的脚本,它封装了linux的tc命令,但是使用起来更加简单和方便,如果你对限速要求不多,可以用wondershaper满足你大部分需求。

项目地址: https://github.com/magnific0/wondershaper.git

使用场景

像有些做流量控制的软件都会涉及到此类限速场景,比如测试一些离线上传功能,在网卡带宽较小的情况下,是否能够优雅处理完所有离线数据上报。

弱网测试,比如手机连接linux机器的共享网络,可以通过这种方式限速做弱网测试

安装

Ubuntu:

sudo apt-get update
sudo apt install -y wondersharper

Centos

yum install epel-release -y
sudo yum install -y wondersharper

使用二进制

1)下载wondershaper工程

git clone https://github.com/magnific0/wondershaper.git
cd wondershaper
#直接运行wondershaper
./wondershaper

2)全局安装wondershaper(可选)

cd wondershaper
sudo make install

帮助

输入:./wondershaper -h

USAGE: ./wondershaper [-hcs] [-a <adapter>] [-d <rate>] [-u <rate>]Limit the bandwidth of an adapterOPTIONS:
-h Show this message                                 //显示帮助信息
-a <adapter> Set the adapter                         //指定网卡接口,通过ifconifg或者ip show addr查看:比如eth0
-d <rate> Set maximum download rate (in Kbps) and/or //限制下载的速度
-u <rate> Set maximum upload rate (in Kbps)          //限制上传的速度
-p Use presets in "/etc/systemd/wondershaper.conf"
-c Clear the limits from adapter                     //清除对应网卡接口的规则
-s Show the current status of adapter                //显示当前网卡状态
-v Show the current version                          //显示版本信息Configure HIPRIODST in "/etc/systemd/wondershaper.conf" for hosts
requiring high priority i.e. in case ssh uses dport 443.MODES:
wondershaper -a <adapter> -d <rate> -u <rate>
wondershaper -c -a <adapter>
wondershaper -s -a <adapter>EXAMPLES: //针对以上示例给出的example
wondershaper -a eth0 -d 1024 -u 512    //限制eth0上行速度512kbps,下行速度1024kbps
wondershaper -a eth0 -u 512            //仅限制eth0上行速度512kbps
wondershaper -c -a eth0                //清除为eth0设定的wondershaper的相关规则

例子

1.限制eth0的上行带宽为100Mbps,下行带宽为100Mbps

wondershaper -a eth1 -d 94000 -u 94000

2.限制eth0的上行带宽为100Mbps

wondershaper -a eth1 -u 94000

3.清理eth0上的带宽限制规则

wondershaper -c -a eth0

4.查看eth0当前的状态

wondershaper -s -a eth0

5.使用systemd管理wondershaper

1) 安装到系统目录:sudo make install

如图所示,wondershaper一键被添加到systemd进行管理了。

2)相关操作

#启动限流操作
service wondershaper start
#停止限流操作
service wondershaper stop

3)设置相关规则

sudo vim /etc/systemd/wondershaper.conf,修改如下内容

[wondershaper]# Adapter
IFACE="eth0" //相当于命令中的-a对应值设置# Download rate in Kbps
DSPEED="2048" //相当于命令中的-d对应值设置# Upload rate in Kbps
USPEED="512" //相当于命令中的-u对应值设置

FAQ

执行命令报错:Operation not permitted

命令加上sudo,提升权限

传送门:2021最新测试资料与大厂招聘合集

博主:测试生财(一个不为996而996的测开码农)

座右铭:专注测试开发与自动化运维,努力读书思考写作,为内卷的人生奠定财务自由。

内容范畴:技术提升,职场杂谈,事业发展,阅读写作,投资理财,健康人生。

csdn:https://blog.csdn.net/ccgshigao

博客园:https://www.cnblogs.com/qa-freeroad/

51cto:https://blog.51cto.com/14900374

微信公众号:测试生财(定期分享独家内容和资源)

小白网卡带宽限速神器:wondershaper相关推荐

  1. linux网卡流量限速wondershaper

    直接限制网卡流量 命令:wondershaper wondershaper eth0 1 10 //限制eth0 1- 10kb wondershaper clear eth0 //清理规则 wget ...

  2. linux 查看网卡是否万兆_linux 如何查看网卡带宽

    1.先查看网卡 # ifconfig docker0: flags=4163 mtu 1500 inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17 ...

  3. Linux查看网卡带宽

    当我们做一些性能测试或者性能分析时,想看看我们当网络带宽是否成为瓶颈,那么这个时候我们就有必要查看网卡带宽了. ifconfig 查看网卡信息,获取网卡名称 执行命令:ethtool 网卡名称,例:e ...

  4. 解除带宽限速,提升电脑网速

    如何解除带宽限速? 明明是百兆带宽,网速就是很慢,下载文件或软件都要等很久.使用其他电子设备连接宽带 网速都很快,怎么回事呢?这可能是和 windows系统保留宽带有关系,今天我就教大家解除 宽带限制 ...

  5. iperf3 测试100G网卡带宽性能

    iperf3 iperf3 作为iperf 系列网络测试工具新一代工具,开发团队重写代码使之有全新的实现方式,更少的代码量,更加小巧,但这也导致了其与iperf工具前后不兼容,一些命令执行具有差异化, ...

  6. Linux主备网卡检测脚本,检测linux eth0网卡带宽的脚本

    摘要 腾兴网为您分享:检测linux eth0网卡带宽的脚本,掌上看家,有图相册,银行帮,央视影音等软件知识,以及点卷刷取器,电池损耗检测,高手电竞,五杀,求索画室,potplayer剪辑视频,玉米豆 ...

  7. 2018最新云下载不限速神器【电脑版+安卓版】

    今天给大家分享一款百度云不限速神器,之前的论坛那款失效了 电脑版+安卓版 需要的朋友速度了 以下是测试成功的图片截图 安卓: 下载地址:百度网盘

  8. 基于C++的网卡带宽千兆百兆判断测试程序

    VC++ 测试网卡带宽是否为千兆,判断当前网络连接时10M,100M,还是1G,虽然是测试网卡带宽的,但本程序其实涉及了很多方面的编程知识,比如CLanRateTestDlg 对话框的使用.曲线图控件 ...

  9. Linux系统查看网卡带宽及网络使用情况

    文章目录 前言   linux查看服务器带宽具体方法   一.使用speedtest-cli命令查看下载和上传最大流量值   二.查看网卡.网络的详情    1.查看服务器网络端口    2.etht ...

  10. 技能大赛训练:交换机端口带宽限速配置

    交换机端口带宽限速配置 核心交换机 SW-1 和核心交换机 SW-2 针对营销业务网 段的每个物理接口限制收.发数据占用的带宽分别为 100Mbps. 90Mbps:针对产品业务网段的每个物理接口限制 ...

最新文章

  1. AndroidUI 视图动画-旋转动画效果 (RotateAnimation)
  2. 开启本地MySql数据库远程连接
  3. 打印modal框中在线生成的二维码
  4. 上传问题分析2--文件重名
  5. 云场景实践研究第52期:畅游
  6. Linux修改后保存与不保存,强制退出vi与vi下查找命令关键步骤!
  7. linux 卡在grub_浅析 GRUB 如何加载 Linux kernel
  8. 物联网技术在工业领域的主要应用
  9. 如何将驱动程序静态编译进内核
  10. 推荐一个卡巴斯基绿色版本
  11. just help me
  12. 兰光bl2000_蓝光BL2000情况处理.pdf
  13. 各版本opencv官网下载路径
  14. KNN算法和kd树详解(例子+图示)
  15. linux运维工程师问题,2、Linux运维工程师之解决问题思路
  16. 2018计算机专硕学硕,2018考生快上车!专硕VS学硕,究竟怎么选?
  17. $作为分隔符的字符串如何进行切割
  18. WinCE快捷方式浅析
  19. Kubernetes1.4新特性前瞻:设置JOB执行计划
  20. 微前端在Vue项目的实践

热门文章

  1. 股票、债券、基金、期权、期货等的异同
  2. PLC1200 模拟量采集
  3. 项目Beta冲刺(3/7)(追光的人)(2019.5.25)
  4. 工具-4:图片识别和音乐在线识别
  5. linux怎么生成arm文件,AMR 文件扩展名: 它是什么以及如何打开它?
  6. 计算机原始时代到现在著名的黑客
  7. 碎片时间”绑架了多少焦虑的现代人?
  8. python合并word表格_python docx处理word文档中表格合并问题
  9. Nginx 上传图片500错误
  10. Delphi中VCL库的原架构师Chuck Jazdzewski回忆Delphi 1的开发原则