KVM VPS上配置V2Ray(Shadowsocks mode) + 加速:普通BBR/魔改BBR(测试于Ubuntu 16.04)


首先, 你需要在KVM架构的VPS上部署服务,因为BBR不支持OpenVZ. 出于价格的原因,推荐Bandwagonhost和Vultr. 以下是链接:
Bandwagonhost
Vultr
(或者点击此处获取重大优惠, 限时有效)

我建议选择Ubuntu16.04或者之后版本作为OS。在一切就绪并且从本地可以ping通服务器后,SSH连接VPS。

步骤1: V2RAY
V2RAY是新一代的数据代理软件,几乎支持所有协议. 此处选择我们熟悉的Shadowsocks作为协议。

在SSH终端中输入以下命令:
bash <(curl -L -s https://install.direct/go.sh)
然后使用你熟悉的文本编辑器编辑 '/etc/v2ray/config.json'. 此处,我使用vim作为我的编辑器. 请注意,安装之后, 将会产生一个默认的'config.json'. 你可以将其备份并在原位置使用一样的文件名新建一个'config.json'.
vim /etc/v2ray/config.json

在你新建的'config.json'文件中,添加如下内容.
{
  "inbounds": [
    {
      "port": 1024, // 监听端口
      "protocol": "shadowsocks",
      "settings": {
        "method": "aes-128-gcm",
        "ota": false, // 是否开启 OTA
        "password": "sspasswd"
      }
    }
  ],
  "outbounds": [
    {
      "protocol": "freedom",  
      "settings": {}
    }
  ]
}
你可修改此处的port, method, ota (Once-Token-Auth, 强烈建议不要打开,因为有被GFW探测到的风险.)以及password来适应你的要求.

然后使用'reboot'或者'service v2ray restart'命令重启服务.

步骤2: 开启BBR
这非常有用,因为BBR(拥塞控制算法)能够加速你的网络。没有BBR的话,通过代理的下载速度可能低几倍。目前软件对网络带宽的需求越来越高,VPS的网络速度和效率变得至关重要。我认为,BBR不仅仅是推荐选项,更是必须要开启的。

为了使用BBR, 内核版本需要高于4.9.3. 所以我们先升级内核.
sudo apt update
sudo apt install --install-recommends linux-generic-hwe-16.04

为验证是否成功, 请使用如下命令查看内核版本.
uname -r

后面要说的魔改BBR不支持4.12之后的版本,所以如果要用魔改BBR,那么就需要只升级到4.12,而不能使用上面的命令,请使用如下方法:

For 64-bit OS:
cd /tmp/

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.12/linux-headers-4.12.0-041200_4.12.0-041200.201707022031_all.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.12/linux-headers-4.12.0-041200-generic_4.12.0-041200.201707022031_amd64.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.12/linux-image-4.12.0-041200-generic_4.12.0-041200.201707022031_amd64.deb

sudo dpkg -i *.deb
for 32-bit OS:
cd /tmp/

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.12/linux-headers-4.12.0-041200_4.12.0-041200.201707022031_all.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.12/linux-headers-4.12.0-041200-generic_4.12.0-041200.201707022031_i386.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.12/linux-image-4.12.0-041200-generic_4.12.0-041200.201707022031_i386.deb

sudo dpkg -i *.deb
然后重启,使用'uname -r'验证。

BBR在新内核中原生支持。修改几条配置便可开启BBR。使用你熟悉的文本编辑器打开'/etc/sysctl.conf'文件,然后找到net.core.default_qdisc(如果有的话,否则在'sysctl.conf'文件末尾添加),并将其配置为'fq'。找到net.ipv4.tcp_congestion_control(如果有的话,否则在'sysctl.conf'文件末尾添加),并将其配置为'bbr'。如果VPS上,你之前从未配置过BBR,那么使用如下命令就可以了。
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf 
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
然后使修改生效:
sysctl -p

验证BBR是否生效,可使用如下命令:
sysctl net.ipv4.tcp_available_congestion_control
以及
lsmod | grep bbr

应当返回类似如下信息:
tcp_bbr 20480 14

步骤3: 开启魔改BBR
标准的BBR可以将你的网络一定成都上加速。但是并不足够,尤其是如果你喜欢看油管1080p视频的话。感谢南琴浪,称谓魔改BBR的特殊版本BBR可以将你的网速加速到更高级别。

首先, 你需要安装一些软件包来克隆和编译魔改BBR:
apt install -y gcc git make

然后,下载魔改BBR:
git clone https://github.com/nanqinlang/tcp_nanqinlang-test.git

进入新下载的源文件文件夹,并用你熟悉的文本编辑器修改Makefile:
cd tcp_nanqinlang* 
vim Makefile

修改'modules CC=/usr/bin/gcc-6'中的'gcc-6'为'gcc'或者你VPS上其他有效的版本。你可以通过命令'find /usr/bin/gcc*'查看版本。

然后,编译安装:
make 
make install

使用如下命令查看魔改BBR是否成功安装:
sysctl net.ipv4.tcp_available_congestion_control

你应当可以在返回值中看到'nanqinlang'。

最后一步, 在'/etc/sysctl.conf'中配置'nanqinlang'作为net.ipv4.tcp_congestion_control的值并使用'sysctl -p'命令使修改生效。

评论

此博客中的热门博文

Openwrt路由器上配置shadowsocks透明代理+gfwlist(PAC)

Configure shadowsocks transparent proxy + gfwlist(PAC) on OpenWRT Router

Using Haproxy + shadowsocks (ha + ss) to setup multi ss backend and load balance