#!/bin/bash
# XanMod BBR3 离线安装脚本（无网络）
DIR=/data/BBR3
# 导入本地密钥
cp ${DIR}/key/xanmod-archive-keyring.gpg /etc/apt/keyrings/
echo "deb [signed-by=/etc/apt/keyrings/xanmod-archive-keyring.gpg] https://mirrors.bfsu.edu.cn/xanmod releases main" > /etc/apt/sources.list.d/xanmod-offline.list
# 本地安装所有内核包
cd ${DIR}/debs
dpkg -i *.deb
# 修复依赖
apt -f install -y
# 写入BBR3标准sysctl配置
cat > /etc/sysctl.conf << EOF_SYSCTL
# XanMod原生BBR3配套参数
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr3
net.ipv4.tcp_fastopen=3
# 跨境TCP缓冲优化
net.core.rmem_max=67108864
net.core.wmem_max=67108864
net.core.rmem_default=131072
net.core.wmem_default=131072
net.ipv4.tcp_mem="262144 524288 1048576"
net.ipv4.tcp_rmem="4096 87380 67108864"
net.ipv4.tcp_wmem="4096 65536 67108864"
net.ipv4.tcp_retries2=5
fs.file-max=1048576
EOF_SYSCTL
sysctl -p
echo "=== 校验BBR3是否生效 ==="
sysctl net.ipv4.tcp_available_congestion_control
echo "安装完成，请执行 reboot 重启内核生效"
