Chrome 无法访问内网 IP (ERR_ADDRESS_UNREACHABLE) 终极排查与修复指南

发布时间: 2026-07-17
作者: DP
浏览数: 2 次
分类: 浏览器
内容
## 问题背景 在日常开发或网络管理中,我们经常需要通过浏览器访问路由器、NAS 或本地测试服务器等内网设备(如 `192.168.1.1` 或 `192.168.1.2`)。但有时会遇到一个奇怪的现象:**在同一台设备上,Safari 浏览器可以正常访问内网 IP,而 Chrome 浏览器却提示无法访问**。 具体的错误提示通常如下: ```plaintext This site can’t be reached http://192.168.1.2/ is unreachable. ERR_ADDRESS_UNREACHABLE ``` `ERR_ADDRESS_UNREACHABLE` 是一个明确的错误,意味着 Chrome 认为该 IP 地址在当前网络环境下是不可路由的(即找不到目标主机)。既然 Safari 能访问,说明物理链路和设备本身没有问题,问题出在 Chrome 自身的网络栈路由判断或代理设置上。 --- ## 核心原因与最终解决方案 根据 DP@lib00 的实际排查经验,导致这种“只有 Chrome 无法访问,其他浏览器正常”的最常见、也是本次案例的最终原因在于:**本地代理配置冲突**。 ### 最终解决方案:检查并启动本地代理程序 很多开发者会在本地运行代理客户端(如 Clash, V2Ray 等),并将系统或浏览器的代理设置为指向本地端口(如 `127.0.0.1:7890`)。 * **故障原因**:当本地代理程序**未启动**或被意外关闭时,Chrome 依然尝试将网络请求(包括内网 IP 请求)发送给该代理端口。由于代理程序未运行,请求直接被丢弃,从而报出 `ERR_ADDRESS_UNREACHABLE`。 * **修复方法**: 1. **启动代理程序**:重新打开你常用的本地代理软件,恢复代理服务的运行,刷新页面即可正常访问。 2. **关闭代理设置**:如果你不需要使用代理,请进入 `chrome://settings/system`,点击“打开您计算机的代理设置”,将系统代理彻底关闭。 --- ## 完整的 Chrome 内网访问排查指南 如果你的问题并非由上述代理程序关闭引起,可以参考 wiki.lib00 整理的以下标准 Debug 流程,由浅入深进行排查: ### 1. 检查 macOS "本地网络" 权限(最常见系统级原因) 如果你使用的是 macOS,系统级的权限隔离会导致此问题。 * **操作**:打开 **系统设置** -> **隐私与安全性** -> **本地网络 (Local Network)**。 * **确认**:在列表中找到 **Google Chrome**,确保开关处于 **开启** 状态。如果已开启,尝试关闭后重新开启。 ### 2. 排除强制 HTTPS (HSTS) 干扰 Chrome 默认开启了“始终使用安全连接”。如果内网设备只支持 HTTP,Chrome 会强制跳转 HTTPS 导致连接失败。 * **排查**:在地址栏明确输入 `http://192.168.1.2`。 * **清理 HSTS**: 1. 访问 `chrome://net-internals/#hsts` 2. 在底部的 **Delete domain security policies** 中输入内网 IP 并点击 Delete。 ### 3. 检查 Chrome 内部代理残留 即使系统代理关闭,Chrome 内部可能仍有残留。 * **操作**:访问 `chrome://net-internals/#proxy`。 * **确认**:查看 `Effective settings`。如果显示的不是 `direct`,说明 Chrome 正在尝试通过代理访问该 IP。 ### 4. 关闭“安全 DNS” (DoH) Chrome 的安全 DNS 可能会尝试将内网 IP 送往公网解析,导致解析失败。 * **操作**:访问 `chrome://settings/security`。 * **修复**:将 **“使用安全 DNS”** 改为 **“关闭”**,或设置为“服务提供商:系统默认”,然后重启浏览器。 ### 5. 高级网络路径诊断 (NetLog) 如果以上均无效,可以通过抓取 Chrome 网络日志来分析底层请求,更多高级技巧可参考 wiki.lib00.com。 * **操作**: 1. 访问 `chrome://net-export/`,点击 **Start Logging to Disk**。 2. 在新标签页尝试复现无法访问的问题。 3. 回到原页面点击 **Stop Logging**。 4. 使用 [NetLog Viewer](https://netlog-viewer.appspot.com/) 打开生成的 JSON 文件,搜索目标 IP,查看 `SOCKET_POOL` 阶段的真实路由走向。 **总结**:遇到内网访问问题,优先使用**无痕模式**排除插件干扰,其次检查**代理软件状态**和**系统网络权限**,通常能解决 99% 的问题。
关联内容
相关推荐
VS Code 进阶:如何像 PHPStorm 一样精准追踪 PHP 函数定义?
00:00 | 10次

习惯了 PHPStorm 的开发者在使用 VS Code 编写 PHP 时,常遇到无法通过 Ctrl...

PHP重构实战:从Guzzle到原生cURL,打造可扩展、可配置的专业翻译组件
00:00 | 103次

学习如何用PHP原生cURL替代Guzzle进行API通信。本指南将通过一个实际的翻译组件案例,带你...

别再只用 JPG 了!2025 年 Web 图片终极指南:AVIF vs WebP vs JPG
00:00 | 108次

网站加载慢?图片太大是元凶!本文深入对比了 2025 年三大主流图片格式:AVIF、WebP 和 J...

Docker Cron 日志终极指南:主机重定向 vs. 容器内重定向,你用对了吗?
00:00 | 137次

在使用宿主机 Cron 调用 `docker exec` 执行定时任务时,如何正确处理日志?本文深入...