Digital Ocean 上 CentOS 更换内核并开启 BBR 魔改版加速小记

依稀记得全年在 github 上完成了学生认证,获得了学生福利,然而里面的东西却一点都没用上。包括各种各样的开发者工具,像 atom 的授权啊(其实不知道开源的东西为什么还包含在学生福利包中),网页开发工具啊,域名啊之类的。对于我来说这些都没太大用处,除了 DO 的50刀额度以外。

然而,以前也折腾过学生包,不过不知为何工单不通过,并没有获得50刀的额度。(或许是我当初英语太差的缘故,表达不清晰导致)

前几天在物色 VPS 的时候又想到了这茬事情,于是就开始折腾了起来。


使用 BBR 前提与 net-speeder 相同,不能为 OpenVZ 架构的 VPS。
若是使用 CentOS 的话推荐使用6,当然7也行,但是加速效果不如6好。

激活 Digitl Ocean 的 github 学生包

进入 DO 的 Billing 页面,寻找 promo code 的选项,然而并没有找到,看来是 DO 的网站改版了。以前教程上的做法都不适用了,于是开启工单大法。

页面滑到最下面,点击 Support 进入支持页面。在上面的一堆选项中的各种问题查找是无法解决 github 学生包激活的问题的,要选择下方的 get more help 中的Contect Support 提交工单进行人工服务。

提交工单申请学生额度

创建一个 Billing 分类的工单,问题选择 promo code and credit
Subject 一栏中填写工单的主题,比如我填写的是 Student promo code from my github pack
而在问题一栏中则不填写
问题描述中要语言清晰,语气正式并且有礼貌,说明问题的来龙去脉以及自己的要求。例如我写的是

Hello staff,
I’m a student from China, and I’ve got my student pack on github. But there is a puzzling question that no input box on my billing tag.
And my code is: #FCK#jd******-1aa9f47a (此处做打码处理)
Could you help me activate the code to my account? I’ll appreciate it if you made this for me!
thanks!

一般效果如下:
工单格式

工单发过去之后,大概十分钟就收到回复了,并且账户额度增加了50刀,白嫖 DO 一年是预订了 hhh

启用 BBR 内核加速 SS/SSR

BBR

摘自网络

在使用Google BBR之前,我们首先要了解它是什么。
了解计算机网络的人都知道,在TCP连接中,由于需要维持连接的可靠性,引入了拥塞控制和流量管理的方法。Google BBR就是谷歌公司提出的一个开源TCP拥塞控制的算法。在最新的linux 4.9及以上的内核版本中已被采用。对于该算法的分析,这里有一篇文章值得一读。在本人的网络环境(武汉电信20MB)测试下,ss不经过其它的任何的优化就能轻松的跑满带宽。(speedtest测试或fast测试)。由于Google BBR非常新,任何低于4.9的linux内核版本都需要升级到4.9及以上才能使用,故若VPS本身内核版本较低的话,只有KVM架构的VPS才能使用本教程升级内核并使用,openvz的VPS用户若内核版本较低则无法使用!
最近,Google 开源了其 TCP BBR 拥塞控制算法,并提交到了 Linux 内核,从 4.9 开始,Linux 内核已经用上了该算法。根据以往的传统,Google 总是先在自家的生产环境上线运用后,才会将代码开源,此次也不例外。
根据实地测试,在部署了最新版内核并开启了 TCP BBR 的机器上,网速甚至可以提升好几个数量级。

更换 Droplet 内核

可以事先在可用内核中查找,若是自己的内核在这里面,则无需进行更换了。

由于 BBR 中包含了各种各样的加速工具,其支持的内核有限,所以我们要更换我们 VPS 的内核以适配所有工具来达到最佳效果。

在更换内核之前要先检测内核,如果是 OpenVZ 的话则不要继续后面的了。

检测 VPS 架构

Ubuntu / Debian

1
sudo apt-get install virt-what

CentOS / RedHat

1
yum install -y virt-what

运行

1
sudo virt-what

运行之后的效果如下

检测VPS架构

更换 CentOS 6 内核

1
2
3
4
5
6
uname -r                #查看当前内核版本
rpm -ivh http://xz.wn789.com/CentOSkernel/kernel-firmware-2.6.32-504.3.3.el6.noarch.rpm
rpm -ivh http://xz.wn789.com/CentOSkernel/kernel-2.6.32-504.3.3.el6.x86_64.rpm --force
rpm -qa | grep kernel #查看是否安装成功
reboot #重启VPS
uname -r #当前使用内核版本

更换 CentOS 7 内核

1
2
3
4
5
uname -r                #查看当前内核版本
rpm -ivh http://xz.wn789.com/CentOSkernel/kernel-3.10.0-229.1.2.el7.x86_64.rpm --force
rpm -qa | grep kernel #查看内核是否安装成功
reboot #重启VPS
uname -r #当前使用内核版本

安装 BBR 内核加速

一键安装脚本

这个脚本由千影制作(在这里感谢一下),github 上仓库已经404了。

首次下载使用

1
wget -N --no-check-certificate "https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh" && chmod +x tcp.sh && ./tcp.sh

后面想要再次使用这个脚本可以直接

1
./tcp.sh

脚本内容可以大概看一下:

BBR 一键脚本

依次执行1安装 BBR 内核,后使8进行系统优化或直接用4启用加速服务。切记,每一步完成后都要重启。


这是我在 DO 的 kvm 上的对比图

before

after

Author: SmallXeon
Link: https://hexo.chensmallx.top/2018/06/19/digitalocean-centos6-enable-bbr-to-upspeed/
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
一些推广链接
几个便宜量大的小✈场: FASTLINK, YToo, 论坛邀请注册: ,
便宜量大但是稳定性不足的VPS: Virmach, 价格略贵但好用的VPN: , ,