|
本帖最后由 w_anghe 于 2020-11-20 15:48 编辑
隐藏是为了能让更多的人看到,希望大家理解(快被论坛的格式编辑搞疯了,真希望支持markdown啊)
最近用闲置上传带宽挖矿比较流行,但是目前这些程序会无限制的使用网络上传带宽,这给正常上网的体验造成了困扰,我们的目的是利用闲置带宽,而不是破坏上网体验!
目前限速的方法主要是通过路由器搞定
- 有固定ip的设备可以通过ip限速
- 没有固定ip的还可以通过某个网卡出口限速(程序跑在软路由上的)
- 某些高级路由器有小包优先的自动qos功能
但是路由器有时候不是万能的,主要有以下问题
- 低端的硬路由功能有限,不一定有完善的qos功能
- openwrt软路由的qos功能可能和SFE加速功能冲突,不开SFE加速效率又低(SFE还会造成流量统计不准)
- 高端路由器倒是可以搞定所有问题,就是缺点和优点一样突出,gui。。。
我给大家提供一个利用Linux的 iproute的tc命令限速的方案
当然这个方案的使用也是有一定条件的
- 挖矿程序要跑在一台单独的主机下,不是一定要独立的物理机,虚拟机也可以,这样做的好处是所有的流量都有一个统一的网卡出口,我们只要对一个出口限速就搞定所有问题。
- 我建议使用虚拟机,不仅控制一个虚拟网卡就可以搞定限速,其他资源也可控,磁盘内存都可以固定。
- 如果有主机的root权限,建议在主机上直接操作,有些挖矿的机器可能拿不到root权限(比如网心云),只要在宿主机上控制虚拟机对应的网卡就可以了。
具体方案
tc命令是可以搞定一切,但是使用比较复制,我们今天用一个github上的项目https://github.com/magnific0/wondershaper
这个项目把tc命令进行了封装,只要简单的命令就可以搞定所有事情,以下针对debian/ubuntu系统进行讲解,其他系统思路类似。
1. tc命令在软件包iproute2中,运行以下命令安装 2. 下载wondershaper
- git clone https://github.com/magnific0/wondershaper.git
- cd wondershaper
复制代码 3. 搞清楚自己网卡的名称,运行ip addr
- mine:~# ip addr
- 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
- link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
- inet 127.0.0.1/8 scope host lo
- valid_lft forever preferred_lft forever
- inet6 ::1/128 scope host
- valid_lft forever preferred_lft forever
- 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
- link/ether 56:de:16:4a:d8:d4 brd ff:ff:ff:ff:ff:ff
- inet 192.168.2.27/24 brd 192.168.2.255 scope global eth0
- valid_lft forever preferred_lft forever
- inet6 fe80::54de:16ff:fe4a:d8d4/64 scope link
- valid_lft forever preferred_lft forever
复制代码 这是我的机器的运行效果,eth0就是网卡的名称(根据机器ip就可以判断)
4. 如果是pve,虚拟机还没有root权限(比如网心云),要到宿主机器上操作,查找虚拟机的网卡可以参考下面命令
运行命令 ps ax | grep 虚拟机名称 ,找到返回结果中的ifname后面就是网卡的名字。
5. 限速命令欢迎使用我的甜糖docker镜像 https://www.right.com.cn/forum/thread-4059329-1-1.html
如果觉得还有点用,麻烦用一下我的邀请码631441,有加成卡15张,我也有推广收入
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
评分
-
查看全部评分
|