背景:
windows 设备,不喜欢 TUN 模式,所以一直在用 netch 按进程+子进程代理,并且勾选了 DNS 劫持。 之前一直正常,6 月 24 日更新版本后无法使用了。作为对比,同一套配置,antigravity 目前依然正常。
问题排查:
网络代理软件报错日志可以看到,大量 twitter/facebook/dropbox 等乱七八糟的常见 dns 污染 ip 连接失败的报错,怀疑新版 codex 对网络做了改动,导致 dns 劫持失败
让 AI 分析了 6 月 24 日 codex 更新的内容,说是引入了 DoH:
引入内置 DoH (DNS over HTTPS) / 独立解析回退机制 新版 Codex 的 Rust 底层网络客户端(基于 reqwest / hyper 栈)为了应对 API 劫持和连通性问题,强化了自定义的 DNS 解析逻辑。如果系统默认解析超时或被阻断,它会绕过操作系统,直接向海外权威 DNS 发起 DoH 请求。 为什么 Netch 失效:Netch 的进程模式主要通过 Hook 系统的 getaddrinfo 等标准 API 来截获域名。当 Codex 在应用层自己构造 HTTPS 报文去查 DNS 时,Netch 会将其当作普通的加密数据直接放行。结果导致 Codex 拿到 OpenAI 的真实海外 IP 后尝试直连,随即被防火墙精准拦截并发送 TCP RST 复位包,客户端就会抛出经典的 远程主机强迫关闭了一个现有的连接。 (os error 10054)。
想问一下,有其他非 TUN 方案能解决吗?