NOTEDevOps

用精确单域名代理规则修复错误直连

本文结论

一次本机访问故障排查:先证明远端服务健康,再用精确的单域名代理规则绕过错误解析与直连路径。

同一个网站在外部网络可以正常打开,在一台 Windows 工作站上却持续超时。浏览器、命令行和应用接口都受影响,但其他需要代理的网站仍然可用。

这种现象很容易被误判为网站宕机、证书异常或代理客户端整体失效。真正有效的排查顺序,是先把远端服务、本机解析和流量分流拆开验证。

现象与证据

外部探测确认首页和接口都能返回成功响应,证书链也有效。这说明服务端、域名证书和公开路由并没有整体故障。

本机的直接访问却连接到与外部解析不一致的地址并最终超时。与此同时,通过现有本地代理发送同样的请求可以成功。这组对照把问题范围缩小到了本机的解析与分流链路,而不是网站应用本身。

进一步检查代理客户端的活动规则后发现,该域名没有进入代理列表。流量因此落到了最后的直连规则,错误解析得到的地址也就被直接使用。

根因

故障来自两个条件叠加:

  • 本机获得了不可用的解析结果;
  • 分流规则没有覆盖该域名,最终选择了直连。

只修复其中一层并不可靠。即使代理服务本身工作正常,只要规则仍然允许直连,浏览器就会继续使用错误路径。

最小处理

处理只针对受影响域名:把精确域名条件加入活动配置中最前面的自定义代理规则,并确保它位于最终直连规则之前。保存配置后,通过客户端的正常控制入口重新加载代理核心。

这次没有切换全局代理,也没有修改 hosts、系统 DNS、系统级代理地址或其他国内外网站的现有分流。精确规则把影响面限制在一个已确认异常的域名,回滚时也只需删除这一条条件并重新加载。

验证

修复后的验证覆盖了四层:

  • 首页请求返回成功状态,TLS 校验通过;
  • JSON 接口返回正确内容类型;
  • 浏览器能够渲染搜索、分页和资源控件;
  • 原有代理访问仍保持预期行为。

验证同时保留了直连规则和系统配置不变这一事实,证明恢复不是由无关的全局修改造成的。

经验与限制

单域名代理规则适合“远端健康、代理路径成功、直连路径错误”这一类问题。它不是所有连接失败的通用答案:如果外部探测也失败,应继续检查服务端、证书、DNS 权威记录或网络入口。

分流问题最重要的经验是建立可证伪的对照。分别测试外部访问、本机直连和本机代理,比反复刷新浏览器或一次性改动全局 DNS 更容易定位真实故障层。

分类DevOps
遇到类似系统问题?

先说明系统,再说明症状

如果需要生产排障、DevOps 交付或物流系统集成协作,请提供当前表现、预期结果、受影响环境、可用日志或数据样例,以及发布限制。我会从现有证据开始判断。

通过邮件开始