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

发布时间: 2026-07-17
作者: DP
浏览数: 73 次
分类: 浏览器
内容
## 问题背景 在日常开发或网络管理中,我们经常需要通过浏览器访问路由器、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% 的问题。
关联内容
相关推荐
从数据库设计到容错脚本:构建企业级PHP网站统计系统的完整实践
00:00 | 178次

本文详细探讨了构建一个精确且强大的网站统计系统的全过程。从解决常见的全站UV重复计算问题入手,我们设...

别再踩坑!PHP time() 函数与时区的终极指南
00:00 | 42次

深入探讨PHP中一个常见却关键的问题:`time()`函数返回的究竟是UTC时间戳还是受服务器时区影...

MySQL INSERT SELECT 常见错误解析:语法陷阱与数据截断(错误 1265)
00:00 | 149次

在使用 MySQL 的 `INSERT INTO ... SELECT` 语句从一个表复制数据到另一...

告别传统可用率:深入解析一种更懂用户体验的加权采样算法
00:00 | 53次

传统可用率计算(成功数/总数)常常无法真实反映用户体验,尤其是在服务性能下降或偶发故障时。本文将深入...