
TokenPLS:隧道 DNS 设置时序 bug 已修,将随下个 macOS 版发布
TokenPLS 复现并修复:隧道扩展有时先提交 DNS 对象、后补「接管全部域名」匹配项,系统只保存提交瞬间副本,导致匹配未生效;影响首次启动、On Demand 拉起与网络切换等路径。将随下一 macOS 版本发布。
作者原文@TokenPLS已复现并修复,谢谢这份日志——那三行字典键(ServerAddresses / InterfaceName / ConfirmedServiceID)正是关键。
真因不在 On Demand 本身:隧道扩展给系统下发 DNS 设置时,有一条路径先把 DNS 对象交给了设置、之后才补上「接管全部域名」的匹配项,而系统保存的是交出去那一刻的副本,补上的匹配项从未生效。凡是没走「上次成功设置的快速缓存」的启动都会踩到:配置第一次启动、扩展异常退出后被 On Demand 拉起、切换到一个新配置。手动停止再启动走的是缓存路径,所以立刻恢复。现在两条路径共用一份已经配齐的 DNS 设置。
修复会随下一个 macOS 版本发布;发布后如果同样的恢复场景仍出现
SupplementalMatchDomains缺失,请再贴一次utun的 DNS 字典行。