首页 > 服务器 > Linux相关 > OpenVZ 平台 Google BBR 一键安装脚本
2017
07-31

OpenVZ 平台 Google BBR 一键安装脚本

更新了 liblkl-hijack.so 并打上了最近网上很火的“魔改版” BBR 补丁,同时更新了 haproxy。老版本的朋友可以重新下载安装脚本再安装一遍,需要先停止当前的服务。

使用方法

已测试通过的系统: Ubuntu 14.04 x64、Ubuntu 16.04 x64、CentOS 6 x64、CentOS 7 x64 只支持 64 位系统,要求 glibc 版本 2.14 以上。

需要配置的有如下几个选项:

1.需要加速的端口,即的 SS 端口。加速开启之后,流量会先经过 BBR 处理,之后再发送给后端的 SS。

2.可能需要配置 “公网接口名称”,即你服务器上具有公网 IP 的接口名称。搬瓦工 OpenVZ 上默认都是 venet0,但是有朋友可能需要安装在其他服务器上,所以我加入了此选项。

需要注意的是,在有 firewalld 的服务器上安装的时候,firewalld 会干扰 iptables 的规则,造成网络不通(现在具体原因未知,谁有解决方案可以提示一下)。所以在装有 firewalld 的服务器上需要先退出 firewalld:

如需卸载,请使用:

错误说明

有些机器一切正常,但是加速失败。从网友的反馈来看,可能需要将 SS 的监听地址从 vps IP 改到 127.0.0.1 或者 0.0.0.0,具体未测试,加速失败的朋友可以试一试

多端口加速

安装的时候只配置了一个加速端口,但是你可以配置多端口加速,配置方法非常简单。 修改文件

在文件里添加需要加速的端口,每行一条,可以配置单个端口或者端口范围,以 # 开头的行将被忽略。 例如:8800 或者 8800-8810 配置完成之后,只需要重启 haproxy-lkl 即可。

注: 最初版本的实现是需要再开一个新端口,后来经人提醒,我又看了一下 HAproxy 的配置说明,可以直接代理后端端口,不必再开新端口。请注意,使用该方法后,如果 HAproxy 进程异常退出,会造成无法连接原有端口。所以,请确保在退出 HAproxy 时是通过命令正常退出的,在退出时会自动清理原有的防火墙规则。

使用 systemctl 或者 service 命令来启动、停止和重启 HAporxy-lkl:

/usr/local/haproxy-lkl/etc/haproxy.cfg 这个文件是通过 port-rules 自动生成的,每次启动都会重新生成,所以直接修改它的配置没用。 如果想要自定义配置,请修改启动文件:

更新 glibc

CentOS 6 更新 glibc,首先下载如下几个文件:

然后安装:

如果以上步骤无法更新,可以手动编译更新(来自网友的方法)

检查一下:

已经升级到 glibc 2.15 了。

判断 BBR 已正常工作

判断 bbr 是否正常启动可以尝试 ping 10.0.0.2,如果能通,说明 bbr 已经启动。

然后检查 iptables 规则

里边会看到多了一张链表 LKL_IN,里边有相应的端口规则。

来自 V2EX,你们可以看看原帖: OpenVZ 开启 BBR 之最简方法 – Linux Kernel Library

最后编辑:
作者:
百度ID:“度娘程序员”,博主。
捐 赠如果您觉得这篇文章有用处,请支持作者!鼓励作者写出更好更多的文章!

OpenVZ 平台 Google BBR 一键安装脚本》有 132 条评论

  1. Pingback 引用通告: 搬瓦工一站式shadowsocks解决方案及魔改版BBR优化,YouTube油管1080P – 高墙上的瞭望塔

  2. Mozilla CompatibleMozilla CompatibleApple iPhoneApple iPhone

    无法创建nat网络是什么意思啊,大神,无法开启bbr

  3. Google Chrome 60.0.3112.90Google Chrome 60.0.3112.90Windows 10 x64Windows 10 x64

    问下haproxy的线程数哪里修改?

    • Google Chrome 60.0.3112.90Google Chrome 60.0.3112.90Mac OS X 10.12.6Mac OS X 10.12.6

      改 /usr/local/haproxy-lkl/sbin/haproxy-lkl 里边有一部分是输出配置文件的。

  4. Baidu Browser 8.7Baidu Browser 8.7Windows 10 x64Windows 10 x64

    博主能出个手动安装的教程吗?想学学

  5. Safari 10.0.3Safari 10.0.3Mac OS X 10.12.3Mac OS X 10.12.3

    移动光纤用这个BBR还,但电信光纤就差很多,KCPTUN混着一起用吧,确保能飞~~

  6. Google Chrome 59.0.3071.115Google Chrome 59.0.3071.115Windows 10 x64Windows 10 x64

    站长,发现个严重问题。新版本的魔改BBR,搬瓦工VPS会被占满资源。
    VPS是搬瓦工的:SSD: 10 GB RAID-10
    RAM: 512 MB
    CPU: 1x Intel Xeon
    Transfer: 1000 GB/mo
    Link speed: 1 Gigabit

    启用了SSR,KCPTUN,V2RAY。
    加速了三组端口,50000-60000,20000-30000,8000-9000.

    运行几小时后,haproxy会占满CPU和SWAP,VPS会被强制限制。

  7. Google Chrome 59.0.3071.115Google Chrome 59.0.3071.115Windows 10 x64Windows 10 x64

    还有奇怪的问题……话说我最终放弃了用CentOS 6 升级glibc 改为重装系统 用CentOS 7 直接搭建ss 一切顺利 开启BBR也很成功 完全如您博文所示。然而!却连接不上了!卸载BBR模块后可以正常连接。我想我一定是见鬼了……

    • Google Chrome 59.0.3071.115Google Chrome 59.0.3071.115Windows 10 x64Windows 10 x64

      同,我也是这样,然后改用KCP了,CentOS7 X86

    • Google Chrome 60.0.3112.78Google Chrome 60.0.3112.78Windows 10 x64Windows 10 x64

      我的经验是 yum update

    • Google Chrome 60.0.3112.78Google Chrome 60.0.3112.78Windows 7 x64Windows 7 x64

      同样的问题,加速端口后ss就登不上了,何解?centos7.3,是没iptables的原因?

    • Google Chrome 59.0.3071.115Google Chrome 59.0.3071.115Mac OS X 10.12.5Mac OS X 10.12.5

      同问题。connection refused

      • Google Chrome 60.0.3112.90Google Chrome 60.0.3112.90Windows 7 x64Windows 7 x64

        一些 SS、SSR一键安装脚本(如 逗比的) 设置的 iptables规则 会与 这里设置的iptables规则冲突

  8. Google Chrome 59.0.3071.115Google Chrome 59.0.3071.115Windows 10 x64Windows 10 x64

    博主您好!我遇到了一些问题,想请您帮忙看一下,谢谢!
    Bandwagon, CentOS 6 x86_64, 完整安装,无法通过wget+rpm的方式自动更新glibc,手动更新,执行

    后开始报错

    也会报错,大概的错误提示是

    Google了一下,在这个网址找到了答案:https://forums.opensuse.org/showthread.php/513354-Help-please-to-install-sylpheed-3-5-0。简明来讲就是

    So you don’t have gcc etc installed….

    随后我

    再次执行上面那个超长的指令后倒是不会报错了,但执行make all install后,出现两条报错

    然后再次ldd –version后,版本还是2.12。

    请问博主,这是什么情况 :cry:
    我是一名航空从业者,首先感谢当妈妈循循善诱的通过科学上网 配置Shadowsocks 等等方式 让我学会了不到十句Linux指令,但难掩我是个技术小白的事实!所以烦请您不吝赐教,十分感激!

  9. Google Chrome 59.0.3071.115Google Chrome 59.0.3071.115Windows 10 x64Windows 10 x64

    站长,我是从之前的老版本(需要开新端口),更新到最新的魔改BBR。查iptables -t nat -nL时发现Chain PREROUTING (policy ACCEPT)这一行,原先的几个BBR端口还在。需要处理吗?需要的话怎么处理?
    先谢谢。

    • Google Chrome 61.0.3141.7Google Chrome 61.0.3141.7Windows 10 x64Windows 10 x64

      一般只需要重启服务器就会自动清除
      也可以用
      /usr/local/haproxy-lkl/sbin/haproxy-lkl -c

      • Google Chrome 59.0.3071.115Google Chrome 59.0.3071.115Windows 10 x64Windows 10 x64

        感谢回复,清理掉看着好多了

发表回复

你的邮箱地址不会被公开,垃圾评论将被删除。

有人回复时邮件通知我