
Open-Box v0.1.230:多 DNS 上游并发竞速取最快结果
liandu2024 说明单上游经节点卡住只能等到超时;v0.1.230 起直连/代理侧各最多四个上游,用 sing-box 1.14 evaluate+race 并发并取最先返回。也可用备用上游或 TCP 缓解 UDP 丢包。
作者原文@liandu2024你这组对照已经说明问题了:同样是 TCP/53,换成 8.8.8.8 之后 180 多次查询 0 超时 —— 不是内核的 DNS 模块有毛病,是代理 DNS 上游只有一个,它经节点卡住时只能干等到客户端超时。
v0.1.230 起改掉了这个限制:DNS 上游可以配多个,并发查询,谁先返回结果就用谁的。
- 位置:设置 → DNS 设置 →「DNS 上游」,右上角加号添加,选这条用在兜底直连还是代理;
- 同一侧的第一条是主上游,后面的是备用,一起并发查 —— 一个上游卡住,另一个正常就照常出结果;
- 每侧最多 4 个;没加备用上游时生成的配置和以前一字不差。
用的是 sing-box 1.14 自带的并发机制(evaluate + race),不是我们在外面轮询。
你第 3 点里那次 apple.com 超时走的是直连上游 223.5.5.5 的 UDP,和代理 DNS 不是一条路;你自己直查 223.5.5.5 也复现了 1/20,那是上游 UDP 偶发丢包 —— 现在直连侧同样可以加备用上游,或者把直连 DNS 的协议改成 TCP。
升上去配两个上游再用几天,没再复现的话我就关掉这条。

