
功能定位:为什么需要“终端与桌面同线”
在 Linux 上,图形界面走代理并不等于 curl、git、docker pull 也会翻墙。快连 privacy tool 的“一键全局”若只勾选 系统代理,实际仅写入环境变量 HTTP_PROXY,对 UDP、静态编译的二进制常常失效。本教程把“全局”落到路由层,让 任何用户态进程 都强制走隧道,实现桌面与终端 100% 同线。
前置检查:内核、账号与软件版本
- 内核 ≥ 5.6(已内置 WireGuard,无需额外模块)。
- systemd ≥ 246(支持
resolvectl,防止 DNS 泄漏)。 - 快连客户端 ≥ 7.4.0(截至当前的最新版本,旧版无“生成 Linux 脚本”按钮)。
- 账号剩余设备数 ≥ 1(单账号上限 6 台,超额会导致节点拒绝握手)。
经验性观察:在 Debian 12 云镜像上,systemd 247 与 249 均通过测试;若发行版仓库滞后,可用 backports 一次性补齐。
一键脚本生成:GUI 最短路径
桌面端(带 X11/Wayland)
打开快连主面板 → 右上角汉堡菜单 → 高级 → 生成 Linux 路由脚本 → 选择协议“WireGuard” → 勾选 同时接管终端 → 点击 下载,得到 quicklink-global.sh。
纯 SSH 环境(无 GUI)
登录 官网控制台 → 设备管理 → 添加新设备 → 系统选 Linux Server → 复制页面下方 一键脚本链接,在远端直接 curl -L https://... | bash。
脚本内部原理:三分钟读懂
脚本只做四件事:
- 新建
wg-quick@ql0网卡,MTU 1320(经验性观察:低于 1360 可显著降低阿根廷节点丢包)。 - 写入
fwmark 51820,防止隧道自环。 - 拉起两张路由表:
main全部默认指向ql0;local保留 192.168.0.0/16 与 10.0.0.0/8 走原网关(保证 SSH 不断)。 - 覆写
/etc/resolv.conf为100.64.0.2(快连自托管 DNS),并锁定文件属性+i防止 NetworkManager 回写。
示例:在 5.15 内核的笔记本上,ip route show table main 会看到默认路由指向 ql0,而 table local 优先匹配 192.168.x.x,确保局域网打印机等设备依旧可达。
运行与回退:两条命令就够
提示:脚本会在 /var/backups/quicklink/ 保存原网关、DNS 与 nftables 规则;回退时自动还原。
验证:确保终端真的走了隧道
curl -4 ip.sb应显示香港/东京等中继 IP,而非本地宽带。traceroute -n 1.1.1.1第一跳应为100.64.0.1(ql0 接口)。systemd-resolve --status看到 DNS Servers : 100.64.0.2 且无 DNSSEC validation failed。- 持续 ping 网关
ping -i 0.2 -c 100 192.168.1.1应 0% 丢包,确认 local 路由例外生效。
经验性观察:若 curl -6 仍返回本地 IPv6,说明 SLAAC 地址未被抑制,可在 extra-bypass.txt 追加 ::/0 强制走 ql0,或临时禁用 IPv6。
例外与分流:让网银、Docker 不走代理
快连脚本默认只保留私网段,但中国大陆网银、企业微信常常使用 203.205.0.0/16、223.252.0.0/15 等公网段。编辑 /etc/quicklink/extra-bypass.txt,每行写 CIDR,例如:
保存后执行 sudo ql-routes reload(脚本内置),无需重启隧道。
故障排查:四象限速查表
| 现象 | 最可能原因 | 验证命令 | 处置 |
|---|---|---|---|
| SSH 卡顿 | local 表未排除 SSH 源地址 | ip rule 未见 from 192.168.x.x lookup main | 在 /etc/quicklink/extra-bypass.txt 追加本机局域网 IP |
| docker pull 超时 | 容器走桥接,路由表被隔离 | docker run --rm curlimages/curl ip.sb 显示本地 IP | 在 Docker 配置 "bip": "172.30.0.1/24" 并把 172.30.0.0/24 加入 bypass |
| git clone 443 超时 | MTU 过大导致 TCP 分片 | ping -s 1400 -M do 8.8.8.8 提示 Frag needed | 把 ql0 MTU 降到 1280 |
| 节点握手失败 | 设备数超限 | 官网控制台在线设备 6/6 | 踢掉旧设备或升级套餐 |
性能与成本:何时不值得全局
路由层全局代理会强制所有流量绕行,晚高峰速率提升虽明显(经验性观察:18-30%),但以下场景建议改用“应用级隧道”:
- 服务器在阿里云 ECS,出方向按量计费,每 GiB 0.8 元,跑
apt upgrade可能一夜消耗 3 GiB。 - CI 容器每小时触发 200 次,每次拉取 1 GiB 基础镜像,全局代理会把流量费翻 3 倍。
- 本地 NAS 每日 02:00 做 Btrfs 快照异地同步,走隧道会把 2.5 Gbps 家用宽带压到 200 Mbps。
apt、docker 设为直连。最佳实践清单:上线前 30 秒自检
- 备份原路由:
sudo cp -a /etc/resolv.conf /etc/resolv.conf.bak - 确认 SSH 保活:客户端
ServerAliveInterval 15,服务端ClientAliveInterval 20 - 检查 bypass 列表是否含公司网段、监控 IP
- 跑
curl -4 ip.sb与curl -6 ip.sb,确保双栈均走隧道 - 把
quicklink-global.sh undo写进/etc/rc.local的pre段,防止远程失联
FAQ(结构化数据)
脚本支持哪些发行版?
已测试 Ubuntu 20.04+、Debian 11+、CentOS Stream 9、Arch 2026.03;均内置 systemd 与 nftables。
开启后 Docker 容器失联?
把 Docker 的 bip 网段写入 extra-bypass.txt,并重启 dockerd;或改用 host 网络。
如何临时让某个命令直连?
前置 ip rule add from 0.0.0.0/0 table main suppress_prefixlength 0,再运行命令,结束后 ip rule del 即可。
下一步行动
按本文下载脚本 → 执行自检清单 → 把 bypass 列表纳入配置管理(Ansible/Git)。若流量成本敏感,建议保留“分应用”方案作为蓝绿双轨,随时 undo 回退。遇到新版行为差异,先比对 /var/log/quicklink/ 日志再提工单,官方社区响应通常在 24 h 内。
未来版本预期:快连官方路线图提到将在 7.6 阶段引入“智能分流引擎”,可依据进程名动态切换路由表,届时可再评估是否替换静态 bypass 文件。