BBR是Google所研发的一款TCP防杜塞协议(Bottleneck Bandwidth and RTT),其设计目的为不考虑丢包率,尽可能跑满带宽,并且减少排队。对于大多数的VPS,BBR都能显著优化带宽拥堵情况提升传输速率。目前对于Linux Kernel 4.9以上的版本都自带了BBR,如果内核不支持开启,可以更换内核之后开启BBR。

前面提到的直接开启BBR的正常方式仅限于KVM虚拟化的主机,而使用OpenVZ虚拟化的主机需要使用特殊的BBR-LKL模式对指定端口进行优化。除了Google TCP BBR以外,市面上还存在魔改版BBR以及BBR PLUS,后者数据极端调整设置,而原本BBR则适应性更强。本文更建议大家使用原版BBR来进行网速提升,当然其他版本的安装方式也会一并介绍。

一、对于内核版本大于等于4.9的主机直接开启BBR:

命令如下:

modprobe tcp_bbr
echo "tcp_bbr" | sudo tee --append /etc/modules-load.d/modules.conf
echo "net.core.default_qdisc=fq" | sudo tee --append /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" | sudo tee --append /etc/sysctl.conf
sysctl -p

 

二、对于内核低于4.9的主机更换内核并开启Google TCP BBR

系统要求:CentOS6+、Debian7+、Ubuntu12+。

原本BBR暂不支持OpenVZ,原因应该是大多数OpenVZ主机内核版本过低。

此处介绍的为Teddysun的一键安装包:

wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh
  • 如果提示找不到wget,请先使用以下命令安装wget:
  • CentOS:
yum -y install wget
  • Debian/Ubuntu:
apt-get -y install wget

接下来BBR会自动开始安装,安装完成后会英文提示是否重启,输入y回车重启。

等待大概一分钟,系统重启成功后,重新用Putty连接VPS服务器,输入以下命令验证BBR是否安装成功:

sysctl net.ipv4.tcp_congestion_control

如果显示以下提示即代表BBR安装成功:

net.ipv4.tcp_congestion_control = bbr

 

三、对OpenVZ主机使用BBR开启加速

首先OpenVZ主机需要在控制面板开启Tun/Tap支持,在后台即可开启。个人较为推崇南琴浪暴力魔改BBR OpenVZ版。

下面为开启BBR的四种方式:

  • Alpine linux 小内存版: UML 的系统是 Alpine linux ,需要 64M 内存启动,主机最低 128M 内存
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

进入 uml

screen -x 或者在目录下运行
bash run.sh status用户名: root , 密码: root

UML原文地址

 

安装 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

 

架构:OpenVZ

系统:Debian 64位 / Ubuntu 64位 /CentOS 7 64位

内存:64M以上

Debian/Ubuntu 64bit 单IP(单网卡):

wget --no-check-certificate https://github.com/tcp-nanqinlang/lkl-rinetd/releases/download/1.1.0/tcp_nanqinlang-rinetd-debianorubuntu.sh bash tcp_nanqinlang-rinetd-debianorubuntu.sh

Debian/Ubuntu 64bit 多IP(多网卡):

wget --no-check-certificate https://github.com/tcp-nanqinlang/lkl-rinetd/releases/download/1.1.0/tcp_nanqinlang-rinetd-debianorubuntu-multiNIC.sh bash tcp_nanqinlang-rinetd-debianorubuntu-multiNIC.sh

CenOS 7 单IP(单网卡):

wget --no-check-certificate https://github.com/tcp-nanqinlang/lkl-rinetd/releases/download/1.1.0/tcp_nanqinlang-rinetd-centos.sh bash tcp_nanqinlang-rinetd-centos.sh

CentOS 7 多IP(多网卡):

wget --no-check-certificate https://github.com/tcp-nanqinlang/lkl-rinetd/releases/download/1.1.0/tcp_nanqinlang-rinetd-centos-multiNIC.sh bash tcp_nanqinlang-rinetd-centos-multiNIC.sh

输入数字1后回车,开始rinetd BBR的安装过程

接下来会提示输入要加速的端口号,可以输入单个端口号。或者也可以根据需求输入多个端口,中间空格隔开

出现第一行提示时,代表rinetd BBR安装成功。重新运行脚本后,选择2进行的状态验证,出现同样的结果代表确实安装成功。

 

系统需求
架构:OpenVZ

系统:Debian 8+ 64位 / CentOS 7

Debian 8+ 64bit:

wget --no-check-certificate https://github.com/tcp-nanqinlang/lkl-haproxy/releases/download/1.1.1/tcp_nanqinlang-haproxy-debian.sh bash tcp_nanqinlang-haproxy-debian.sh

CentOS 7:

wget --no-check-certificate https://github.com/tcp-nanqinlang/lkl-haproxy/releases/download/1.1.1/tcp_nanqinlang-haproxy-centos.sh bash tcp_nanqinlang-haproxy-centos.sh

输入数字1开始安装

注意如果红框中已有File descriptor in bad state,输入数字1回车,否则输入数字2回车

接下来需要选择要加速的端口,一般我们选择1,输入所有的端口即可。如果你需要加速多个端口,则选择2后按提示输入端口范围

当出现第一行=bbr提示时,代表BBR已安装成功。为新运行脚本后验证是否安装成功,返回结果证明确实安装成功

 

四、南琴浪版暴力魔改BBR一键安装脚本(搬运自链接地址)

魔改版BBR,则是在原版BBR基础上的修改版本,通过参数的修改,使加速算法更为激进,比原版BBR有更为明显的加速效果。

适用平台:KVM虚拟的VPS服务器。

适用系统:Debian 7+ 32位/64位(Debian7、Debian8、Debian9)、CentOS 6+ 64位(CentOS6、CentOS7)

Debian版:

wget --no-check-certificate https://github.com/tcp-nanqinlang/general/releases/download/3.4.2.1/tcp_nanqinlang-fool-1.3.0.sh bash tcp_nanqinlang-fool-1.3.0.sh

CentOS版:

wget --no-check-certificate https://raw.githubusercontent.com/tcp-nanqinlang/general/master/General/CentOS/bash/tcp_nanqinlang-1.3.2.sh bash tcp_nanqinlang-1.3.2.sh

出现提示后,输入数字1选择安装内核,然后回车:

接下来的安装过程中,部分系统可能会有如下提示,提示删除旧的内核,是否取消。

这时按方向右键,选择No后回车,确认删除。

出现提示后,输入reboot回车重启系统:

系统重启完成后,重新Putty连接,输入以下命令重新运行脚本:

Debian:

bash tcp_nanqinlang-fool-1.3.0.sh

CentOS:

bash tcp_nanqinlang-1.3.2.sh

出现提示后,输入2选择安装并开启算法:

稍等片刻,出现安装成功后的提示

 

五、BBR Plus一键安装脚本 BBR/BBR Plus/魔改BBR/锐速(LotServer)四合一 (搬运自链接地址)

BBR Plus版本是网友在原版BBR的基础上,对一些参数进行改良后的修正版本,比原版BBR有着更为显著的加速效果。

BBR Plus版本的优点:

修正了原版BBR的以下两项缺点,加速效果更好:

在高丢包率环境下容易失速
收敛慢

BBR Plus版本的不足:

脚本仍在完善阶段,在少部分系统中可能会安装失败。
由于涉及到内核的修改,部分系统环境下,可能会导致重启无法进入系统。

虽然加速效果更好,但是考虑到系统数据安全的话,还是建议大家以试用为主,不要在生产环境下尝试安装BBR Plus。

本文介绍的BBR Plus一键安装脚本,来自网友cx9208。除了BBR Plus外,还另外集成有原版BBR一键安装、魔改BBR一键安装、锐速(lotServer)一键安装,为四合一版本,四个版本可以切换使用。

适用架构:KVM / Xen,不支持OpenVZ(OVZ)。

适用系统:CentOS 7、Debian 8、Debian 9、Ubuntu 16.04、Ubuntu 18.04。

  • BBR Plus一键安装脚本使用

1.运行一键脚本:

wget --no-check-certificate -O tcp.sh https://github.com/cx9208/Linux-NetSpeed/raw/master/tcp.sh && chmod +x tcp.sh && ./tcp.sh

2.接下来会出现菜单选择界面,如下图所示,我们需要先安装对应的内核,之后再开启加速。

3.以BBR Plus版本为例,输入对应的数字2回车,开始安装内核。

4.原有内核卸载完毕,新内核安装成功后,会出现下图提示重启,输入Y回车。

5.重启后再次用Putty连接VPS服务器,运行如下命令重新打开脚本:

./tcp.sh

6.在脚本菜单选项中,输入数字7回车,开启BBR Plus加速。

7.出现下图提示,则表示BBR Plus加速成功开启:

 

对于KCPTUN的使用,本站并不推荐,KCP仅适用于极少数性能极差的主机进行暴力发包,KCPTUN可以有效解决丢包问题,明显提升传输速度,但是与此同时带来了更高的延迟,并消耗更多的流量和带宽。同一服务器下的其他租客的使用体验也会受到很大的影响。因此本文只给出安装链接攻略地址,具体是否使用请自行斟酌。

超级加速工具KCPTUN一键安装脚本 附100倍加速效果图