Teddy的这个脚本在网上流传的很广,有很多人都是使用这个一键脚本来更换内核开启TCP BBR的。对于TCP加速,我在之前有过一篇文章是关于各种加速工具的比较(https://www.ljchen.com/archives/1224),虽说BBR和锐速各有千秋,在高丢包的网络情况下,锐速的表现更好,但是我还是更青睐BBR的,因为稳定可靠,你不用担心它什么时候会跟系统内的其它软件相互冲突、产生BUG。比如用搬瓦工的Debian8 x64系统,自行更换到3.16.0.4的内核以后,安装锐速,总会过几天就使得服务器上的SSR连接不上,甚至SSH也连不上,只能到搬瓦工的后台面板去手动重启服务器才能继续坚持几天。解决办法也是有,自行通过Vicer的网络重装脚本安装新的系统。但是你又说不好啥时候会跟其它的软件冲突了,所以我还是尽量不用锐速,虽然有的时候确实锐速的速度要快一点。

本脚本适用环境

系统支持:CentOS 6+,Debian 7+,Ubuntu 12+

虚拟技术:OpenVZ 以外的(KVMXen、VMware等)

内存要求:≥128M

日期  :2017 年 01 月 13 日

关于本脚本

  • 本脚本已在 Vultr 上的 VPS 全部测试通过。
  • 当脚本检测到 VPS 的虚拟方式为 OpenVZ 时,会提示错误,并自动退出安装。
  • 某些服务商(如 LinodeDigitalOcean)可能需要首先将 VPS 配置为可自定义内核,然后 grub2 的配置才会生效。
  • 脚本运行完重启发现开不了机的,打开 VPS 后台控制面板的 VNC, 开机卡在 grub 引导, 手动选择内核即可。
  • 由于是使用最新版系统内核,最好请勿在生产环境安装,以免产生不可预测之后果。

使用方法

使用root用户登录,运行以下命令:

wget -N --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && bash bbr.sh

安装完成后,脚本会提示需要重启 VPS,输入 y 并回车后重启。

重启完成后,进入 VPS,验证一下是否成功安装最新内核并开启 TCP BBR,输入以下命令:

uname -r
# 查看内核版本,含有 4.9.0 就表示 OK 了
# ————————————
sysctl net.ipv4.<a href="https://www.ljchen.com/archives/tag/tcp" title="View all posts in tcp" target="_blank">tcp</a>_available_congestion_control
# 返回值一般为:
# net.ipv4.tcp_available_congestion_control = bbr cubic reno
# ————————————
sysctl net.ipv4.tcp_congestion_control
# 返回值一般为:
# net.ipv4.tcp_congestion_control = bbr
# ————————————
sysctl net.core.default_qdisc
# 返回值一般为:
# net.core.default_qdisc = fq
# ————————————
lsmod | grep bbr
# 返回值有 tcp_bbr 模块即说明bbr已启动。

参考链接

https://github.com/google/bbr/blob/master/Documentation/bbr-quick-start.md

http://elrepo.org/tiki/tiki-index.php

http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/

原文:https://doub.io/wlzy-22/