
先说背景:这篇讲什么
sing-box 是目前最流行的代理内核之一,VPS 上自建节点、手机 / 路由器客户端背后基本都是它。2026 年 10 月 9 日,官方发布了 v1.14.3,但官方 发布页 的更新说明只有一句 "Fixes and improvements"——没有列出具体改了什么。
"看不到改动清单"对生产环境节点来说很难受:盲升怕翻车,不升又怕错过关键修复。这篇我就把 v1.14.2 → v1.14.3 之间的 30 个提交逐一过了一遍,整理出实际修复内容,再给出一套安全的升级流程。你不需要懂代码,看结论就行。
需要的前置知识:知道 sing-box 是个代理内核、配置文件是 JSON;看不懂 GitHub 页面也没关系,结论都在下面。
1.14.3 到底修了什么(核实过的清单)
从 v1.14.2 到 v1.14.3 一共 30 个提交,除了文档清理和版本号抬升,实质修复集中在网络栈和 DNS 上。我把影响普通用户的列出来:
| 修复项 | 通俗解释 | 受影响的场景 |
|---|---|---|
| TUN 读取循环在写错误后停止 | TUN 出错一次后整个虚拟网卡"卡死" | 客户端 TUN 模式(手机 / 软路由) |
| 本地 DNS 忽略 systemd-resolved 的全局 DNS | 抓不到系统 DNS 配置,解析异常 | Linux 服务端(Ubuntu / Debian) |
| TUN GSO 检测修复 | 大包分段卸载判断错误,可能丢包 | TUN 模式高带宽场景 |
| UDP 分片修复 | UDP 大包被截断 | 游戏、语音、QUIC 相关流量 |
| UDP 零校验和修复 | 部分系统发出的 UDP 包校验和异常 | 特定内核 / 网卡组合 |
| 缓存文件在加载时被覆盖 | 重启后流量统计缓存丢失 | 面板用户、用量统计 |
| 中断组关闭时持有锁 | 极端情况下服务停不掉 / 僵死 | 高并发节点 |
结论:这是一个纯修复版,没有新功能,也没有配置格式变更。 从 1.14.0 → 1.14.2 升上来的用户,配置文件不用做任何改动(1.14 的 DNS 新格式迁移是另一回事,见昨天那篇升级 1.13/1.14 后 DNS 起不来)。
该不该升:三分钟决策树
直接升(配置文件不动,风险低):
- 你现在用的是 1.14.0 / 1.14.1 / 1.14.2,运行正常 → 升,修的都是真实存在的 bug。
- 你用 TUN 模式,且偶发"断流必须重启客户端" → 升,第一个修复项很可能就是你的问题。
- 你是 Linux 服务端,且 DNS 行为偶尔奇怪 → 升,systemd-resolved 修复针对的就是你。
可以缓一缓:
- 你还在 1.13.x 且运行稳定 → 1.14.3 解决不了你的问题。想升 1.14 大版本先读迁移指南(链接见上),补丁版不用单独追。
- 你是面板(如 S-UI)内置的 sing-box → 等面板官方推送,不要手动替换二进制,各面板版本是和面板配套打包的。
不建议碰:1.15.0 的 alpha 测试版。那是下一个大版本的新功能测试线,配置格式可能还有变动,不适合生产环境。
安全升级四步(实际验证过的流程)
补丁版升级本身风险很低,但"备份 + 校验 + 可回滚"的流程应该每次都走一遍,这是真实翻车换来的经验。
第 1 步:备份当前配置
cp /etc/sing-box/config.json /etc/sing-box/config.json.bak.$(date +%F)
第 2 步:升级后先校验配置,不直接重启
# 替换二进制或 apt/yum 升级后
sing-box check -c /etc/sing-box/config.json
check 通过但服务起不来的情况极少,但如果有,你至少能确定问题不在配置文件里。
第 3 步:重启服务并确认版本
systemctl restart sing-box
systemctl status sing-box --no-pager
sing-box version
version 输出应为 sing-box version 1.14.3。
第 4 步:验证业务是否正常
# 本地端口是否在监听
ss -tlnp | grep sing-box
# 出口 IP 是否走节点
curl --proxy socks5h://127.0.0.1:1080 https://api.ipify.org
第二条命令把代理地址换成你自己的入站配置。如果第二步失败,先看日志(journalctl -u sing-box -n 50),别急着回滚——大概率是端口被占用或配置路径写错了。
回滚:如果确认是新版的问题,把备份的配置文件还原、二进制换回旧版本(提前从 GitHub Releases 下载旧版留底是个好习惯),重启即可。
一个小建议:以后看不懂发布页怎么办
sing-box 官方的发布说明经常只有一句 "Fixes and improvements",想看清细节可以自己动手:
- 打开对应版本的发布页,找到 "Full Changelog" 里
v1.14.2...v1.14.3的对比链接; - 逐个看提交标题(commit message),"Fix" 开头的就是修复项;
- 对你场景无关的修复可以直接忽略,只关注和你的部署方式(服务端 / TUN 客户端 / 面板)相关的。
30 个提交听起来多,但真正影响普通用户的往往就三四个。养成升级前花五分钟看提交列表的习惯,比任何"该不该升"的帖子都可靠——包括这篇。
本文提到的版本号、发布时间(2026-10-09)与修复清单均核实自官方仓库;个人使用感受基于 Linux 服务端部署经验,不同场景结论可能不同。
