念云 NianYun - 高速稳定的全球网络体验

Mihomo 连接成功但不能上网怎么办?

更新于 2026-10-30 · nianyun.store

简答:Mihomo 显示“已连接”不等于网页流量已经成功经过代理。先关闭 TUN,仅使用 mixed-port 或 HTTP/SOCKS 端口测试;如果仍打不开,再看日志中有没有新请求、命中的规则和具体错误。没有新请求通常查系统代理或端口,有请求但超时多查节点、DNS 或规则。

定义:“Mihomo 连接成功但不能上网”是指内核或客户端已经启动、节点可能也能完成延迟测试,但浏览器或其他应用的实际请求没有成功访问目标地址。

先做这一步:关闭 TUN,用普通代理端口对照测试

如果你刚开启 TUN 后整机无法联网,先不要继续改 DNS、MTU 或路由表。暂时关闭 TUN,保留 Mihomo 内核运行,再把浏览器或系统代理指向配置中的 mixed-port、HTTP 端口或 SOCKS 端口。Mihomo 官方文档说明,mixed-port 同时支持 HTTP(S) 和 SOCKS5;普通代理测试可以先判断问题是否出在 TUN 接管层。查看 Mihomo 官方代理端口说明。

  1. 确认配置已经加载,且 Mihomo 内核状态为运行中。
  2. 在客户端中查看实际监听的端口,不要直接照搬其他教程中的端口号。
  3. 在系统网络代理中填入本机地址和该端口;如果客户端提供“设置系统代理”,先使用它。
  4. 浏览器访问一个平时可打开的网页,再观察 Mihomo 日志是否出现新的连接记录。

如果普通代理可以上网而 TUN 不行,优先检查 TUN 权限、防火墙、自动路由和 DNS 劫持;如果普通代理也不行,继续检查规则、节点和 DNS。

现象优先检查下一步
日志没有新请求系统代理、浏览器独立代理、端口、其他 VPN重新设置代理并关闭冲突软件
有请求,规则命中 DIRECT规则模式和策略组临时切换到合适的代理策略测试
有请求但 connection refused本地端口或节点入口确认端口监听,重新选择节点
有请求但 timeout节点、路由、DNS 或防火墙更换同一策略组中的其他节点并复测
开启 TUN 后整机断网TUN 权限、自动路由、DNS 劫持关闭 TUN 恢复网络,再逐项启用

按日志判断:请求有没有真正进入 Mihomo

不要只看客户端上的“已连接”或节点延迟。打开日志后,访问一个网页并观察是否出现新请求、目标域名、命中的规则、使用的策略组以及最终错误。节点延迟测试成功,只能说明测试请求完成;它不能证明浏览器代理、DNS 解析和目标网站访问都正常。

  • 没有新连接记录:通常是浏览器没有使用系统代理、浏览器设置了独立代理、系统代理被其他软件覆盖,或应用本身不支持当前代理入口。
  • 出现 DIRECT:请求被规则安排为直连。先确认这是否符合预期,再临时切换到代理策略测试;不要把所有流量永久改成全局模式。
  • 出现 REJECT:请求被规则拒绝。检查域名是否命中了拒绝规则,必要时用一个确定允许访问的测试域名对照。
  • 出现 connection refused:可能是本地端口没有监听、端口被其他程序占用,或远端节点入口拒绝连接。
  • 出现 timeout:可能与节点不可达、DNS 请求超时、路由或防火墙有关,需要结合目标地址和时间点判断。
  • 出现 dns resolve failed:重点检查 DNS 配置、DNS 出口以及节点域名解析,不要先反复切换节点。
  • 出现 network is unreachable:优先检查系统网络、默认路由、TUN 自动路由和多网卡选择。

排查时建议把日志级别临时调高到客户端支持的调试级别,复测后再恢复原设置。提交日志前,应删除订阅地址、UUID、密码、令牌和完整节点配置。

系统代理、端口和浏览器设置怎么核对

普通代理模式下,Mihomo 只会接收已经被应用指向本地代理端口的流量。若系统代理显示开启,但日志没有请求,按下面顺序恢复:

  1. 关闭其他 VPN、代理客户端和浏览器代理扩展,避免它们覆盖系统代理或占用同一端口。
  2. 在 Mihomo 客户端中重新执行一次“设置系统代理”,再关闭后重新打开浏览器。
  3. 检查浏览器的独立代理设置是否与系统代理不同;部分浏览器扩展会单独接管代理。
  4. 核对代理地址是否为本机地址,端口是否与 Mihomo 当前配置一致。
  5. 如果系统代理无法使用,先用客户端提供的连接测试或另一个支持 HTTP/SOCKS 的应用做对照。

如果你使用的是局域网共享代理,还要确认是否开启了允许局域网连接,并核对监听地址、防火墙和局域网设备访问权限。不要为了排查而长期暴露控制端口或代理端口。

规则和策略组:连接成功但请求被直连或拒绝

在规则模式下,节点可用不代表所有域名都会走代理。先查看请求命中的规则和最终策略组,再进行最小改动:

  • 如果命中 DIRECT,确认该域名是否本来就应直连;若不确定,只对当前测试域名临时选择代理策略。
  • 如果命中 REJECT,检查规则集是否加载失败、规则顺序是否异常,或域名是否被误分类。
  • 如果策略组为空、节点不可选或自动选择没有结果,先手动选择一个可见节点测试,再考虑自动测速或 URL-test。
  • 如果只有一个网站打不开,用另一个网站和同一策略组对照;不要把单站点问题直接判断为整个 Mihomo 失效。

测试完成后恢复原来的规则模式和策略组,避免把临时的全局或手动选择当成长期配置。

DNS 排查:能连节点,但域名解析失败

DNS 是“节点连接成功但网页打不开”中常见的分界点。Mihomo 的 DNS 配置包含是否启用 DNS、监听地址、解析模式、nameserver 以及与代理服务器域名解析有关的配置;官方配置示例也区分了普通域名解析和用于解析 DNS 服务域名的 default-nameserver。查看 Mihomo 官方 DNS 配置示例。

  1. 先确认配置中的 dns.enable 是否开启,以及客户端当前是否实际加载了这份配置。
  2. 查看日志是否出现 dns resolve failed、couldn't find ip 或 DNS 请求超时。
  3. 如果只开启 TUN 后出现问题,暂时关闭 TUN 做普通代理对照;若普通代理正常,重点检查 dns-hijack、自动路由和 TUN 网卡。
  4. 不要一次同时更换 nameserver、enhanced-mode、fake-IP 和 TUN 参数。每次只改一个项目,并记录原值。
  5. 若使用 fake-IP,检查局域网域名、内网地址和需要排除的域名是否符合当前配置;修改后清理客户端 DNS 缓存或重启内核再复测。

DNS 查询成功也不等于网页一定能打开。还要确认最终连接是否命中正确规则、节点是否能访问目标地址。

TUN 模式导致断网:权限、路由和防火墙分开查

TUN 会在网络层接管流量,覆盖范围比只指向代理端口的普通代理更大,因此配置错误可能表现为整机断网。官方文档列出了 auto-route、auto-detect-interface、dns-hijack、strict-route 等选项;不同客户端对这些选项的菜单名称可能不同,应以当前客户端界面和内核版本为准。查看 Mihomo 官方 TUN 配置说明。

  1. 先关闭 TUN,确认普通代理可以工作,并记下原来的 TUN 配置。
  2. 重新开启 TUN 时确认客户端获得系统管理员权限,并确认内核、防火墙和 TUN 网卡没有被系统阻止。
  3. 优先保留自动识别出口网卡的设置;如果设备有网线、Wi-Fi、虚拟网卡或移动热点,重点检查出口网卡是否选错。
  4. 暂时不要同时修改 MTU、协议栈、自动路由和严格路由。先只恢复一个最小配置进行测试。
  5. 若开启 TUN 后无法恢复,使用客户端提供的“恢复网络”功能;没有该功能时正常退出并重新启动客户端,避免强制结束进程后遗留路由。

官方 Mihomo Dashboard 文档也提醒,TUN 需要相应权限和系统网络设置;如果恢复网络后仍异常,应记录操作系统、客户端版本、Mihomo 内核版本和错误信息,再针对版本核验。查看官方 Dashboard 的 TUN 与网络恢复说明。

按故障范围快速分流

故障范围优先判断建议操作
所有网站都打不开系统代理、端口、节点或 DNS关闭 TUN,用 mixed-port 做对照,观察日志是否有请求
只有部分网站打不开规则、策略组、DNS 或目标站点比较命中规则和最终策略,使用另一域名交叉测试
只有一个应用打不开应用是否遵循系统代理检查应用独立代理设置,或使用 TUN 做对照
开启 TUN 后整机断网权限、路由、DNS 劫持、防火墙关闭 TUN 恢复网络,再逐项启用参数
节点延迟正常但网页失败延迟测试与实际访问不是同一件事看真实请求日志、规则命中和 DNS 错误

恢复前的最小改动清单

如果你不确定改动是否有效,可以按以下顺序回滚:

  1. 恢复原来的规则模式和策略组。
  2. 关闭 TUN,恢复普通代理测试。
  3. 恢复原来的 DNS 模式、nameserver 和 fake-IP 设置。
  4. 撤销手动设置的系统代理,重新由客户端设置一次。
  5. 关闭其他 VPN、代理扩展和可能占用端口的程序。
  6. 重启 Mihomo 内核,再用同一个网页和同一个节点复测。

如果仍无法访问,记录四项信息:操作系统、客户端版本、Mihomo 内核版本、日志中的完整错误关键词。不要公开订阅 URL、节点密码、UUID 或完整配置。Mihomo 的版本会持续变化,遇到配置解析错误或字段行为变化时,应优先对照当前官方文档和发布说明,而不是直接套用旧教程。

本文是第三方使用指南,仅用于通用客户端和网络排查;涉及具体订阅、节点状态或服务入口时,应以对应服务的官方信息为准,本文不对其价格、状态、速度或可用性作判断。

推荐:如果你需要进一步排查跨境办公中的线路、DNS、MTU 或连接问题,可查看边界云加速官网提供的网络诊断服务。

常见问题

Mihomo 显示节点已连接,为什么网页还是打不开?

节点延迟或连接成功只代表某个测试请求完成,不代表浏览器流量已经进入 Mihomo,也不代表 DNS、规则和目标网站访问都正常。先关闭 TUN,用 mixed-port 或 HTTP/SOCKS 端口做普通代理测试,再观察日志是否出现网页请求。

Mihomo 没有任何连接日志,应该先检查什么?

优先检查系统代理是否真正指向 Mihomo 当前端口、浏览器是否使用独立代理、端口是否被其他程序占用,以及是否同时运行了其他 VPN 或代理软件。没有新日志通常说明请求尚未进入 Mihomo。

关闭 TUN 后可以上网,开启 TUN 就断网怎么办?

说明普通代理链路可能正常,问题集中在 TUN 权限、自动路由、出口网卡、DNS 劫持或防火墙。先关闭 TUN 恢复网络,再一次只启用一个参数;如果客户端有“恢复网络”功能,优先使用它。

Mihomo 出现 dns resolve failed 怎么处理?

先确认 DNS 配置已经加载,再检查 nameserver、default-nameserver、DNS 监听和 TUN 的 dns-hijack。不要同时修改多个 DNS 参数;每次改动后重启内核并用同一域名复测。

只有一个应用无法联网,其他应用正常,是什么原因?

该应用可能不遵循系统代理,或应用内部设置覆盖了系统代理。先检查应用自身的代理设置,再关闭浏览器扩展或其他代理工具;如果应用不支持普通代理,可用 TUN 做对照测试。

相关阅读

参考资料

  1. Mihomo 官方文档:代理端口与 mixed-port
  2. Mihomo 官方 Wiki:配置示例与 DNS 配置
  3. MetaCubeX 官方文档:Mihomo TUN 配置
  4. MetaCubeX 官方 Dashboard:TUN 权限与网络恢复说明