最近遇到一个比较奇怪的现象。
想从 Google 中国站(google.cn)下载 Chrome 浏览器时,发现电脑端始终无法打开页面。奇怪的是,此前一直都能正常访问,而且出口防火墙策略也没有做过任何调整。
更离谱的是,同一时间手机切换到运营商流量后,却可以正常打开网站。
notion image

原因其实很简单

根据现象分析,大概率是 DNS 解析出了问题。
简单来说,就是我使用的 DNS 服务器在解析 Google 域名时“指错了路”,返回了一个无法正常访问的 IP 地址,最终导致网站打不开。

一招解决

我将原先使用的阿里云 DNS(223.5.5.5)切换为腾讯云 DNS(119.29.29.29)进行测试,结果立刻恢复正常访问。

进一步验证

为了确认问题来源,我又切换回阿里云 DNS,并使用 nslookup 对 www.google.cn 进行解析。
结果发现,阿里云 DNS 返回的是一个位于境外的 Google Cloud 主机 IP。
而使用腾讯云 DNS 解析时,返回的则是一个国内 IP 地址。
这里还有个小插曲:通过微步在线查询时,这个国内 IP 被标记为“恶意地址”,不过实际访问测试一切正常,并未发现异常。
此外,即使不修改 DNS,只要在本地 Hosts 文件中手动绑定正确的 IP,同样可以正常访问 Google.cn。

总结

这次问题最终并不是防火墙策略导致的,而是 DNS 解析结果发生了变化。
当遇到某些网站突然无法访问,而网络环境和安全策略都没有变化时,不妨优先检查一下 DNS 解析结果,或尝试更换不同的公共 DNS 服务进行验证,往往能够快速定位问题。
手把手搭建|用 M2 MacBook Air 跑本地 AI 助手,和 HanaAgent 聊聊人生3.1万Star!彻底告别传统VPN,这款神器让你一秒组网
Loading...