速飞云 — 香港高速节点 · 稳定不限速

Mihomo 代理连接不上怎么办?按症状逐项排查

更新于 2026-11-03 · sufeiyun.shop

简答:Mihomo 代理连接不上,先做三步:确认内核已经启动并成功加载配置;临时关闭 TUN,仅通过 Mixed、HTTP 或 SOCKS 端口测试;在代理组中手动选择一个节点并查看日志。若端口测试能连接而 TUN 不能用,重点查权限、虚拟网卡、DNS 劫持和路由;若所有节点都超时,则优先检查订阅、网络和节点状态。

定义:Mihomo 代理连接失败,是指配置虽已导入,但内核、代理端口、节点出站、DNS解析、规则匹配或TUN流量接管中的某一层没有正常完成连接。

先做三步速查:不要一开始就改 DNS

本文是第三方使用指南,不代表 Mihomo 官方。为了避免把多个问题混在一起,建议按照“内核启动→普通代理端口→节点与规则→DNS→TUN”的顺序检查。

三步速查与结果判断
检查顺序怎么做看到什么算正常下一步
1. 内核与配置打开当前客户端的日志或内核状态页,确认配置加载完成、内核没有立即退出。能看到运行状态,日志没有配置解析错误或端口绑定失败。若内核没启动,先修配置或端口冲突。
2. 普通代理端口暂时关闭 TUN,在系统代理或浏览器代理设置中使用客户端显示的 Mixed、HTTP 或 SOCKS 端口。浏览器或测试应用能产生请求记录。端口有请求但访问失败,转查节点、规则和 DNS。
3. 节点与代理组不要依赖自动选择,手动选一个节点,再观察连接日志和请求记录。请求进入代理组,节点出现连接或握手记录。单节点失败查节点参数;全部失败查订阅、网络或解析。

Mihomo 的 mixed-port 同时支持 HTTP(S) 与 SOCKS5,端口号必须以当前配置和客户端界面显示为准,不能因为其他教程使用某个端口就直接照抄。wiki.metacubex.one

按日志关键词分流:先定位故障层级

Mihomo 常见连接失败现象对照
日志或现象更可能的原因建议动作
connection refused、端口无法连接内核未启动、端口被其他程序占用、客户端使用了错误端口。回到内核状态页,重新确认当前配置中的 port、socks-port 或 mixed-port,必要时更换端口并重载配置。
timeout、节点长时间无响应节点不可达、网络路径丢包、节点参数不匹配,或代理组仍选中了失效节点。手动切换一个节点;如果只有一个节点失败,先不要改 DNS;如果全部节点失败,再查订阅和本地网络。
dns resolve failed、无法解析节点域名节点域名本身无法解析,或 DNS 配置没有为节点域名提供可用解析路径。检查 default-nameserver、nameserver 和 proxy-server-nameserver 是否存在且格式正确。
network is unreachable路由、网卡、TUN 接管或 IPv6 路径不通。先关闭 TUN 复测;仍失败时检查出口网卡、系统网络和 IPv6 设置。
有请求但目标应用仍直连应用没有使用系统代理,或规则把请求匹配到了 DIRECT。先用浏览器验证系统代理,再切换到全局模式做一次对照测试,之后恢复原来的规则模式。

Mihomo 的日志级别可以从 error、warning、info 调整到 debug;排查时可临时提高日志级别,复现一次后再恢复,避免长期产生过多日志。wiki.metacubex.one

节点、订阅和代理组:先排除“选错出口”

  1. 确认订阅更新结果。如果更新后节点数量变成空、节点名称全部消失,先保留原配置,不要直接覆盖;检查订阅地址、返回内容和客户端提示。
  2. 手动选择节点。自动选择或 URL-Test 可能暂时保留一个不可用节点。手动选择后观察是否出现新的连接记录。
  3. 区分单节点与全节点失败。单节点失败通常先看协议参数、域名解析和节点本身;全部节点失败则优先看订阅、网络出口、DNS或内核状态。
  4. 检查运行模式。Mihomo 支持 rule、global 和 direct 模式。规则模式下,请求可能因规则命中而直连;全局模式需要在全局策略组中选定可用代理。只用于短时间对照测试,确认后恢复原模式。wiki.metacubex.one

如果切换节点后日志仍完全没有请求记录,问题通常还没有到节点层,而是应用没有走代理端口、系统代理未生效或 TUN 没有接管流量。

DNS 失败怎么查:区分“解析节点”和“解析目标网站”

Mihomo 的 DNS 配置不只负责目标网站域名,还可能负责解析代理节点域名。官方配置中,proxy-server-nameserver 专门用于解析代理节点域名;如果它为空,Mihomo 会根据其他 DNS 配置继续处理。wiki.metacubex.one

  • 节点域名解析失败:重点查看 default-nameserver 与 proxy-server-nameserver,确认地址格式、网络可达性和配置缩进。
  • 节点能连但网站打不开:查看 nameserver、nameserver-policy、规则模式和请求日志,不要只替换一个 DNS 地址。
  • 开启 Fake-IP 后个别应用异常:临时切换到 redir-host 做对照。如果问题消失,再检查 fake-ip-filter,不要直接删除所有 DNS 配置。
  • DNS 改动后的回滚:保留原配置副本,只恢复最近修改的 DNS 段,重载配置后再次测试同一个域名。

DNS 配置中的 enhanced-mode 可使用 fake-ip 或 redir-host,两者行为不同;当前客户端是否暴露这些选项,以及菜单名称如何显示,应以该客户端界面和对应版本文档为准。wiki.metacubex.one

TUN 模式无法上网:先关闭验证,再检查权限和路由

  1. 先关闭 TUN。保留 Mixed 或其他普通代理端口,确认节点在非 TUN 模式下能否建立连接。若普通代理正常,故障范围就缩小到 TUN、DNS 劫持、路由或防火墙。
  2. 检查权限和虚拟网卡。Windows、macOS 和 Linux 的 TUN 权限、网卡名称和防火墙行为不同,不能直接套用其他系统的设置。
  3. 查看关键字段。重点核对 auto-route、auto-detect-interface、strict-route、dns-hijack 与 mtu。一次只改一个字段,修改前保存配置。
  4. 检查 DNS 劫持边界。官方文档说明,不同系统对 DNS 劫持的支持条件不同;例如 Windows 的某些严格路由场景,以及 Android 开启 Private DNS 时,可能影响自动劫持。wiki.metacubex.one
  5. 排除冲突软件。暂时退出其他 VPN、代理、网络过滤器和安全软件,再重新启用 TUN。测试完成后恢复原有安全设置。

TUN 属于网络层接管,普通 Mixed 端口则只接收被应用或系统明确指向代理端口的流量,因此“普通代理能用、TUN 不能用”并不矛盾。github.com

Windows、macOS、Linux 的恢复顺序

分平台最短恢复流程
平台建议先做仍失败时回滚方式
Windows关闭 TUN,确认系统代理开关和客户端显示的代理端口。检查防火墙是否拦截内核或 TUN 网卡,确认没有其他软件占用端口。关闭 TUN,恢复原系统代理设置,再重启客户端。
macOS关闭 TUN,确认系统网络代理和当前活动网卡。检查应用权限、防火墙和虚拟网卡状态。停用 TUN,关闭系统代理,重新加载原配置。
Linux先用普通代理端口测试,再检查路由表、网卡和防火墙。查看 TUN 出站规则、DNS监听和权限。停用 TUN,恢复原路由和 DNS 配置。

不要把某一前端的端口、控制器地址或菜单路径当作 Mihomo 的固定值。客户端可能动态选择控制端口,具体数值应以当前界面和日志为准;官方 API 可用于读取当前运行配置、日志和版本信息,但是否开放该入口取决于客户端配置。wiki.metacubex.one

复测清单:确认修好后再恢复高级设置

  • 先用同一个节点、同一个目标地址复测,避免同时更换多个变量。
  • 确认客户端请求记录出现,且代理组没有自动跳回不可用节点。
  • 普通代理端口正常后,再单独启用 TUN。
  • TUN 正常后,再恢复 Fake-IP、规则自动选择或其他高级选项。
  • 把临时的 debug 日志级别改回原值。
  • 如果仍无法连接,导出脱敏日志时删除订阅地址、密钥、用户名、密码和节点服务器信息。

最稳妥的回滚顺序是:关闭 TUN→恢复系统代理→恢复最近一次可用配置→重新启动内核→只启用普通代理端口测试。这样可以判断问题来自配置改动,还是来自节点、订阅或本地网络。

常见问题

Mihomo 代理连接不上,应该先换节点吗?

不建议第一步就换节点。先确认内核已启动、配置已加载,并关闭 TUN 通过 Mixed、HTTP 或 SOCKS 端口测试。只有在请求已经进入代理组、但某个节点持续超时时,才适合比较其他节点。

Mihomo 有请求记录但浏览器打不开怎么办?

先检查代理组是否选中了可用节点,再短暂切换全局模式做对照。如果全局模式能用,重点检查规则是否把目标请求匹配成 DIRECT;如果全局模式也不能用,再看节点和 DNS 日志。

Mihomo 显示 dns resolve failed 是什么问题?

它表示某个域名解析没有成功,但要先分清是代理节点域名还是目标网站域名。节点域名优先检查 default-nameserver 与 proxy-server-nameserver;目标网站则检查 nameserver、规则和 Fake-IP。

为什么关闭 TUN 后能用,打开 TUN 就断网?

这通常说明节点本身未必有问题,故障更可能在 TUN 权限、虚拟网卡、auto-route、strict-route、DNS 劫持、防火墙或出口网卡选择。先保持 TUN 关闭完成普通代理验证,再逐项恢复。

Mihomo 的端口是不是固定为 7890?

不是。端口由当前配置或客户端动态分配,常见字段包括 port、socks-port 和 mixed-port。请以当前客户端显示值和运行配置为准,不要直接照搬其他教程中的端口。

相关阅读

参考资料

  1. mihomo 官方文档:全局配置、运行模式与日志级别
  2. mihomo 官方文档:HTTP、SOCKS 与 Mixed 代理端口
  3. mihomo 官方文档:DNS、Fake-IP 与代理节点解析
  4. mihomo 官方文档:路由规则与匹配顺序
  5. mihomo 官方文档:TUN、DNS 劫持与严格路由
  6. mihomo 官方文档:运行配置、日志与版本 API
  7. MetaCubeX 官方项目:TUN 与 Mixed 代理流量边界说明
  8. wiki.metacubex.one