运维 · 2023年6月29日

centos Wondershaper

要在 CentOS 7.6 上安装和使用 Wondershaper,可以按照以下步骤进行操作:

  1. 安装依赖:首先,确保你的系统已安装以下依赖项:
    sudo yum install -y wget tc

    这将安装 wget(用于下载文件)和 tc(Traffic Control 工具)。

  2. 下载 Wondershaper 脚本:使用 wget 命令下载 Wondershaper 脚本文件。
    bash
    curl -o wondershaper https://raw.githubusercontent.com/magnific0/wondershaper/master/wondershaper
    或者
    wget https://github.com/magnific0/wondershaper/raw/master/wondershaperu
  3. 授予执行权限:对下载的脚本文件授予执行权限。
    bash
    chmod +x wondershaper
  4. 移动脚本文件:将脚本文件移动到 /usr/sbin 目录或任何你喜欢的其他可执行文件路径。
    bash
    sudo mv wondershaper /usr/sbin/
  5. 使用 Wondershaper 进行带宽控制:现在,你可以使用 Wondershaper 来控制网络接口的带宽。
    php
    sudo wondershaper <interface_name> <download_speed> <upload_speed>

    <interface_name> 替换为你想要控制带宽的网络接口名称(如 eth0、enp0s3 等);将 <download_speed> 替换为期望的下载速度(以 Kbps 为单位);将 <upload_speed> 替换为期望的上传速度(以 Kbps 为单位)。

    例如,要将 eth0 网络接口的下载速度限制为 1024 Kbps,上传速度限制为 512 Kbps,可以执行以下命令:

    yaml

    sudo wondershaper eth0 1024 512 或者

    sudo wondershaper -a eth0 -d 100 -u 100
    
    用wondershaper -s -a eth0查看是否设置成功
    
    网卡名称用 ifconfig 命令查看

  6. 停止带宽控制:如果要停止带宽控制并恢复原始网络带宽限制,可以运行以下命令:
    arduino
    sudo wondershaper clear <interface_name>或者wondershaper -c -a eth0

    <interface_name> 替换为之前使用的网络接口名称。

请注意,带宽控制仅在设置的网络接口上生效,并且仅在当前会话期间有效。如果你希望在系统重启后仍然生效,可以考虑将设置添加到启动脚本中。

这些步骤将帮助你在 CentOS 7.6 上安装和使用 Wondershaper 进行带宽控制。请确保以 root 或 sudo 用户身份执行命令,并根据你的需求进行相应的配置。

 

这表示 eth0 网络接口的总带宽被限制为 4 Mbps。同时,你也可以看到以下三个子类别,它们分别被限制为 800 Kbps、1600 Kbps 和 800 Kbps:

angelscript

class htb 1:10 parent 1:1 leaf 10: prio 1 rate 800Kbit ceil 3800Kbit burst 1600b cburst 1599b 
class htb 1:20 parent 1:1 leaf 20: prio 2 rate 1600Kbit ceil 3800Kbit burst 1600b cburst 1599b 
class htb 1:30 parent 1:1 leaf 30: prio 3 rate 800Kbit ceil 3600Kbit burst 1600b cburst 1599b

这三个子类别分别对应三种不同的流量类型,它们的优先级依次递减。例如,子类别 10 的优先级最高,它的上传和下载速度都被限制为 800 Kbps。子类别 20 的优先级次之,上传和下载速度被限制为 1600 Kbps。子类别 30 的优先级最低,上传和下载速度被限制为 800 Kbps。