开启 BBR

BBR 是 Linux 内核自带的 TCP 拥塞控制算法。在我们提供的系统上,两行设置就能开启,不用换内核,也不用第三方脚本。

1. 查看当前状态

用 root 登录服务器(见《用 SSH 登录 VPS》),运行:

sysctl net.ipv4.tcp_congestion_control
sysctl net.ipv4.tcp_available_congestion_control

如果第一行已经是 bbr,说明 BBR 已经开着,不用再做什么。

2. 开启 BBR

cat > /etc/sysctl.d/99-bbr.conf <<'EOF'
net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr
EOF
sysctl --system

我们提供的所有系统(Ubuntu 26.04、Ubuntu 24.04、Ubuntu 22.04、Debian 13、Debian 12、AlmaLinux 9、Rocky Linux 9)内核都自带 BBR,上面的命令都适用。不需要重启,重启后设置仍然有效。

3. 确认已生效

sysctl net.ipv4.tcp_congestion_control
sysctl net.core.default_qdisc

显示 bbr 和 fq 就是开好了。之后新建的连接都会用 BBR;长期运行的程序(比如代理服务)重启一下,它的连接才会用上。

4. BBR 影响什么

  • BBR 控制服务器发送 TCP 数据的方式,影响的是从服务器下载的速度。UDP 流量不受影响。
  • 套餐的端口速率是整台服务器的上限,上下行相同。单个 TCP 连接常常跑不到上限,多个连接一起会更接近。测速时可以换几个测速点,并用多线程下载工具,例如 aria2c -x 8 -s 8 URL。

不要用会替换内核或系统镜像的“一键脚本”。在客户区更换 IP 时,新地址是通过 cloud-init 写进系统的;换了内核或镜像的系统,新地址可能写不进去。

5. 关闭 BBR

rm /etc/sysctl.d/99-bbr.conf
reboot

重启后恢复系统默认设置。重装系统后也是默认设置,需要的话重装后再执行一次第 2 步。