前言

其实这个在好久好久之前就已经用过了…但是最近又重新开始购买 VPS 才发现网上那些教程都老学校了
于是…

ROOT (必要)
  • sudo su
创建配置

经由 liolok 指正 fq 已经是旧时代的选择了, 所以这里用最新 cake (这个应该不是谎言)

  • echo "net.core.default_qdisc=cake" >> /etc/sysctl.d/bbr.conf
  • echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.d/bbr.conf
加载模块
  • modprobe tcp_bbr
加载配置
  • sysctl -p /etc/sysctl.d/bbr.conf
检查配置
  • sysctl net.ipv4.tcp_available_congestion_control
  • sysctl net.ipv4.tcp_congestion_control
最后重启一下
  • reboot

然后我们就得到一个脚本用来自动做这些

#!/bin/bash

# 检查是否是 ROOT 运行
if [[ $(id -u) -ne 0 ]]; then
    echo "Please run as root"
    exit 1
fi

# 写入配置文件
echo "net.core.default_qdisc=cake" > /etc/sysctl.d/90-bbr.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.d/90-bbr.conf

# 加载 BBR 模块
modprobe tcp_bbr

# 加载 BBR 配置
sysctl -p /etc/sysctl.d/90-bbr.conf

# 检查配置
if [[ $(sysctl -n net.ipv4.tcp_available_congestion_control) != *"bbr"* ]]; then
    echo "BBR is not available"
    exit 1
fi

if [[ $(sysctl -n net.ipv4.tcp_congestion_control) != "bbr" ]]; then
    echo "Failed to enable BBR"
    exit 1
fi
学分(参考文献)

Enabling BBR On Arch Linux 6.5.5+ (估计是 Copilot 的学习资料)
Sysctl Enable_BBR