快捷搜索:   服务器  PHP  安全  IIS  linux 安全

Openvz架构VPS下开启BBR加速网络的三种方法UML/LKL(91yun)/LKL(Rinetd)

正常情况下BBR是只支持母机系统或者KVM虚拟方式的VPS系统开启(详见:https://www.bnxb.com/linuxserver/27224.html),因为涉及到内核更换,而OPENVZ是使用不了的,但是现在有了各种魔改版本,可以让OPENVZ也用上谷歌的BBR拥堵算法,加速网络效果非常棒。如果你不知道你VPS是KVM还是OPENVZ的,建议先按https://www.bnxb.com/linuxserver/27224.html的方法安装看看,最后如果开启BBR失败再来看本篇文章。


首先是UML方式

在openvz里面安装BBR的思路是把BBR装在vps生的小鸡里,也就是小鸡生小鸡,弊端就是性能会有点损失,会多占CPU和内存,但是相对于网络加速来说是很值得的。

在OpenVZ(须TUN/TAP支持)环境中通过UML(User Mode Linux)开启BBR。

1、一键运行脚本:

Alpine linux 小内存版: UML 的系统是 Alpine linux ,需要 64M 内存占用启动,主机最低 128M 内存可用


请选择安装 64bit 的操作系统,目前还没做 32bit 的包

VPS 必须支持并开启 TUN/TAP


一键运行脚本


wget -N --no-check-certificate https://raw.githubusercontent.com/91yun/uml/master/bbr/uml.sh && bash uml.sh

 

Centos 版: UML 的系统是 CentOS ,需要 256M 内存启动,主机建议最低 512M 内存


wget -N --no-check-certificate https://raw.githubusercontent.com/91yun/uml/master/bbr/uml-centos.sh && bash uml-centos.sh

装完 ssr 和 bbr 就已经运行了,如果你不想改密码和端口的话就可以直接用。。默认配置在下面。。


UML 相关说明

如何进入 uml


screen -x 或者在目录下运行 bash run.sh status

用户名: root , 密码: root


如何退出 uml


在 uml 模式里,通过按快捷键 ctrl+a+d 来退出 screen


删除 uml 进程


bash run.sh stop

 

启动 uml


bash  run.sh start

 

如何把文件传入 UML


我已经在 root 目录下新建了个 umlshare 目录( /root/umlshare ) , 在 uml 里也做了挂载,位置同样是 /root/umlshare, 只要把文件放进去就可以了


SSR 相关说明

默认配置


端口:9191

密码:www.91yun.org

加密:RC4-MD5

协议:auth_sha1_v4

混淆:tls1.2_ticket_auth

 

如何修改 SSR 配置


第一步


根据上面的教程进入 uml


第二步


修改 mudb.json 文件


vi /root/shadowsocksr/mudb.json

 

把相关的配置改成你自己需要的就可以了。需要说明的是,因为没有编译相关的依赖库,不支持 chacha20 的加密方法


第三步


重启 SSR 程序


bash /root/shadowsocksr/run.sh

 

最后一步


ctrl+a+d 退出 UML ,在母机的安装目录下(如果没做修改默认是 /root/uml-ssr-64/ )打开 run.sh 找到下面的代码,把 9191 改成你自己刚才修改的端口


iptables -t nat -A PREROUTING -i venet0 -p tcp --dport 9191 -j DNAT --to-destination 10.0.0.2

iptables -t nat -A PREROUTING -i venet0 -p udp --dport 9191 -j DNAT --to-destination 10.0.0.2

 

然后重启即可


SSR 添加多用户


python mujson_mgr.py -a -p 端口 -k 密码 -m 加密方式 -O 协议 -o 混淆

 

加完记得在母机增加 iptables 端口转发相关的代码



第二种:LKL(91yun)

简单的说 LKL 相比 uml 好处还是不少的,只需要转发端口,无论是 ssr 都是装在母鸡上,和你平时使用无差,而 UML 需要在 UML 系统里安装。 LKL 的占用资源也更少。不过据说 LKL 的加速效果没有 UML 好,我没有测试验证,大家可以自行折腾。。

LKL 使用前置需求

LKL 要求 ldd 的版本至少在 2.14 ,目前我测试下来,如果不想折腾建议VPS系统直接选择安装 CentOS7 , Debian8 和 Ubuntu16,要求都是64位系统。

安装包只使用 64bit 的系统。

默认的端口转发只转发了 9000-9999 的端口,如果你不想费心修改,请把 ssr 等应用的端口设在这个范围

只适用 openvz 

安装 LKL 一键包命令


wget --no-check-certificate https://github.com/91yun/uml/raw/master/lkl/install.sh && bash install.sh


 

如何判断是否安装成功


ping 10.0.0.2


 

如果 10.0.0.2 能 ping 通说明成功, ping 不通说明失败


如何修改转发端口

修改 /root/lkl/run.sh ,查找 9000-9999 ,改成你想要的端口段

修改 /root/lkl/haproxy.cfg 查找 9000-9999 ,改成你想要的端口段

重启 vps



第三种:Rinetd

1、下载rintd二进制文件(原版bbr和修改版bbr二选一即可):



wget --no-check-certificate https://raw.githubusercontent.com/mixool/rinetd/master/rinetd


wget --no-check-certificate https://raw.githubusercontent.com/mixool/rinetd/master/rinetd_bbr_powered -O /root/rinetd


2、修改权限:


chmod +x rinetd


3、修改rinetd的配置文件rinetd.conf,添加监听地址:


vi rinetd.conf
# bindadress bindport connectaddress connectport
0.0.0.0 443 0.0.0.0 443
0.0.0.0 80 0.0.0.0 80


4、设置开机启动


vi /etc/systemd/system/rinetd.service
[Unit]
Description=rinetd
 
[Service]
ExecStart=/root/rinetd -f -c /root/rinetd.conf raw venet0:0
Restart=always
  
[Install]
WantedBy=multi-user.target


5、最后执行:


systemctl enable rinetd.service && systemctl start rinetd.service



顶(0)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论