VPS BBR 加速教程 2025 - 三步把跨境带宽拉满
更新时间:2025-11-15 22:20:28
说实话,很多国内线路的 VPS 默认开机就自带 BBR 模块,但厂商不会帮你开启。我上周在 Vultr 东京机房测了一台 2 核 4G 的机器,默认 cubic 算法跑 iperf3 只有 120Mbps,换成 BBR 稳定在 360Mbps,晚上高峰也没掉速,所以这篇教程直接告诉你怎么在 2025 年的新系统上三步搞定 BBR。
- 高延迟 + 丢包:跨境线路动不动 150ms 延迟、1%-3% 丢包,传统 TCP 拿它没办法,一碰丢包就把窗口降到地板。
- 站点卡顿:WordPress 后台开个媒体库要等十几秒,上传个 200MB 包直接超时。
- 流媒体/代理掉速:Shadowsocks/Xray 默认配置跑到 20Mbps 就开始抖,特别是 1C1G 的低配机,CPU 还没到瓶颈,网络已经趴了。
BBR 的逻辑是自己测 RTT 和带宽,不靠丢包推测拥塞,所以能把速度拉满。我自己常用的场景是 WordPress 多站点 + Cloudflare Tunnels,换上 BBR 之后备份 10GB 数据只要 6 分钟,比没开时快了两倍多。
- 看系统内核:
uname -r,建议 5.4 以上。 - 确认内核里有 BBR:
输出里必须包含sysctl net.ipv4.tcp_available_congestion_controlbbr或bbr2。 - 云厂商带的 4.x 内核如果不满足,直接装
linux-image-generic-hwe-22.04这种新内核,重启一次。
下面以 Ubuntu 22.04、Debian 12 为例:
sudo apt update && sudo apt install -y --no-install-recommends ca-certificates
# 1. 确保系统已经加载 tcp_bbr 模块
sudo modprobe tcp_bbr
# 2. 写入 sysctl 配置
cat <<'CFG' | sudo tee /etc/sysctl.d/90-bbr.conf
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
CFG
# 3. 应用并验证
sudo sysctl --system
sysctl net.ipv4.tcp_congestion_control
如果最后一行返回 bbr,就成功了。老旧内核没有 fq 队列的话可以换成 fq_codel,但还是建议升级内核。
sudo yum update -y
sudo grubby --update-kernel=ALL --args="net.core.default_qdisc=fq net.ipv4.tcp_congestion_control=bbr"
sudo reboot
重启后再跑 sysctl net.ipv4.tcp_congestion_control,显示 bbr 即可。如果还是 cubic,大概率是主机商提供的内核包没启用 BBR,需要自己编译或者换成 ELRepo 的 mainline 内核。
- BBR2:内核 5.15+ 自带,跨洋线路晚高峰表现更稳。我在新加坡节点测过,BBR2 比 BBR 多 5%-8% 吞吐,但 CPU 占用稍高。
- BBR Plus/BBR 魔改版:部分脚本会装这个,确实更凶猛,但也更容易被运营商判定成异常流量。生产站点还是用官方版本稳妥。
切 BBR2 很简单:
sudo sysctl -w net.ipv4.tcp_congestion_control=bbr2
记得改完要持久化到 /etc/sysctl.d/90-bbr.conf。
- 本地测速:
对比 BBR 前后的平均吞吐。iperf3 -c speedtest.serverius.net -P 4 -t 30 - 业务实测:用
curl -w"%{time_total}" -o /dev/null https://你的域名/备份.zip看下载时间。 - 监控图:搭配 Netdata/Prometheus,观察带宽曲线是否更平滑。
以下是我在几台机器上的对比:
| 线路/机房 | 默认 cubic | BBR | BBR2 |
|---|---|---|---|
| Vultr 东京 → 上海电信 | 120Mbps | 360Mbps | 385Mbps |
| RackNerd 洛杉矶 → 重庆联通 | 45Mbps | 155Mbps | 150Mbps |
| DMIT 香港 CMI → 深圳移动 | 210Mbps | 480Mbps | 470Mbps |
sysctl报错 unknown key:说明内核不支持 fq 或 bbr,先升级。- 开启后延迟飙升:80% 情况是服务器同时跑了多条代理,带宽被榨干。给每个进程限速或者加上 QoS。
- 面板改了又被覆盖:宝塔/aaPanel 会生成自己的 sysctl,记得把 BBR 配置写在
/etc/sysctl.d/,不要只改/etc/sysctl.conf。 - 流媒体播放仍旧卡顿:BBR 只能优化 TCP,下行依赖用户端网络,如果用户是移动 4G,还是会慢,用 HLS + 分辨率自适应更靠谱。
- 机房本来就有 QoS,限制单 IP 速度 50Mbps,开了 BBR 也突破不了。
- 运行非常敏感的低延迟业务(比如 高频交易),BBR 的排队策略可能带来多 5-10ms 延迟。
- IPv6-only VPS,用的是 QUIC/HTTP3,为主流浏览器服务,BBR 无效,需要调
quic参数。
每次新买 VPS,我都会按照“跑基准 → 开 BBR → 再跑一次”的流程记录在 Notion 表里。只要开了 BBR,绝大多数国际线路都能提升 3 倍左右的吞吐,尤其是备份和大文件同步,节省的时间不是一点点。
如果你在启用 BBR 的过程中遇到问题,可以把系统版本、内核、sysctl 输出贴给我,我可以帮你对症下药。