sing-box 升级后“客户端显示连接了,但网页没有流量”,并不能直接证明节点失效。先分清程序能否启动、配置是否被接受、基础代理是否可用,再检查 TUN、DNS 和路由。 本文把站内相关内容合并为一份有边界的排查顺序,不作全平台统一故障诊断。
这是官方资料与公开问题记录整理,本站没有复现下述问题,也没有对各版本完成回归测试。解释图不是软件截图,不应作为亲测证据。
一个公开反馈,适用范围不能扩大
上游问题 #4490记录了用户在 macOS Sequoia、Apple 芯片环境,将 SFM 从 1.13.9 升到 1.14.0 后,原有 VLESS + Reality + gRPC 配置不再通过流量的情况。
这是报告者的特定配置与环境反馈,不是维护者确认“所有 1.14.0 均有 DNS 缺陷”,也不能推断 Windows、Android 同样失败。对照旧版可用能提示版本组合值得检查,但仍不足以证明根因。
截至本次资料复核,官方变更记录已有 1.14.1、1.14.2 条目;条目写修复改进,也不等于已经明确修好上述反馈。不要把站内旧文固定的“回退到某个 1.13.x”当作长期通用答案。
第一步:保留可解释的记录
在改设置前,保存自己的配置备份,记下操作系统、客户端版本、实际核心版本、升级前后差异与首条错误。不要把订阅令牌、服务器密码或个人路径直接发到公开问题区。
前端的“已连接”可能只代表相关服务已开启,不一定说明目标站点的连接成功。比较时尽量保留同一设备、同一目标页面和同一节点;一次只改一个变量,否则恢复联网也不知道是哪一步生效。
第二步:先区分配置报错与连通失败
如果启动日志已经报告字段不兼容或配置被拒绝,先按当前核心版本的迁移说明检查对应字段,不要立即通过更换节点掩盖问题。使用 CLI 的读者可按配置文档提供的 sing-box check 做配置检查;图形客户端则使用其自己的日志和检查入口。
1.14 的官方资料涉及 DNS 响应匹配、查询规则与 TUN DNS 模式变化,但这不等于所有旧字段都要删除。应对照具体版本与具体错误,不能照搬一份来源不明的“万能 DNS 修复 JSON”。不要在没有理解规则作用的情况下把复杂配置整体替换。
若程序正常启动、没有配置错误,但目标页面超时,再进入连通层面的对照。DNS 可以返回结果,不意味着 TCP、TLS 和应用请求也都成功;单看一条解析结果不能宣布网络已恢复。
第三步:把基础代理与 TUN 分开比较
仅在客户端支持独立基础代理模式时,暂时关闭 TUN,保留其他条件测试同一个目标。如果基础代理可用而 TUN 不可用,接下来重点核对虚拟接口、路由接管、DNS 处理及权限条件;这是缩小检查范围,不是确认 DNS 为唯一原因。
如果两种路径都失败,则先看节点、订阅、证书、目标服务及核心日志。不要同时开多个代理客户端制造额外端口或路由冲突,也不要为了排查关闭防火墙、安装陌生根证书。
部分平台不能提供相同的模式开关,尤其系统 VPN 接管与桌面系统代理并不完全一致;没有独立模式就按官方客户端日志排查,不虚构一个通用按钮。
第四步:升级或回退都要有条件
优先确认客户端是否已支持目标核心与配置格式,再从官方渠道选择版本。既有兼容问题不意味着“旧版永远更安全”,长期停留旧版还需考虑后续修复和维护状态。
只有保留了此前可用的配置与官方安装包、且能核对该版本的适用条件时,才适合做短时版本对照。不要将新格式配置直接塞给旧核心;发现不兼容则停止,不继续猜字段。恢复工作路径后仍应跟进上游,而不是永久关闭更新不再检查。
最后怎样描述排查结果?
可以记录“同一设备、同一配置,基础代理成功而 TUN 超时”,也可以记录“换回此前组合后恢复,根因未确定”。不要把它改写成“新版一定坏”“某机场跑路”或“改 DNS 已彻底治好”。
公开反馈与实测记录都应附条件和日期。能定位到具体错误,就带脱敏日志和最小复现提交给对应项目;仍无法定位,则保留未验证的边界。这比扩散没有条件的回退建议更能帮助后来遇到同类问题的读者。