← 返回 xn--mes358abvns79a.shop 本地视觉备份 首页

Mihomo怎么用?从配置导入到连接验证

更新于 2026-10-26 · xn--mes358abvns79a.shop

简答:Mihomo不是单独的图形客户端,而是负责读取配置、连接节点和执行规则的代理内核。新手建议先选兼容客户端或命令行运行,导入自己的配置后用 mixed-port 验证,确认日志和请求正常再考虑 TUN;排查后能明确问题在配置、本地端口还是节点。

定义:Mihomo 是兼容 Clash 配置结构的代理内核,负责读取配置、连接代理节点、执行规则,并提供 HTTP、SOCKS、mixed-port 或 TUN 等流量入口。

先走这条路线:客户端、配置和验证顺序

搜索“mihomo怎么用”的读者,最容易卡在三个概念混淆:Mihomo内核、图形客户端和订阅配置并不是同一个东西。本文是第三方使用指南,不是 Mihomo 项目官方页面;下载文件、客户端来源和订阅链接都应以可核验的项目页面或配置提供方信息为准。

推荐路线:只想图形化操作,就选能调用 Mihomo 内核的兼容客户端;需要脚本、后台服务或服务器运行,就使用命令行内核;不确定是否生效时,先使用 mixed-port,不要一开始就开启 TUN。

你现在的目标先做什么完成标准
只想快速使用安装兼容客户端并导入自己的配置或订阅配置激活,日志能看到请求
需要命令行运行下载匹配系统架构的 Mihomo 文件,准备 config.yaml执行配置测试并显示成功
想让更多应用接管流量先验证 mixed-port,再配置 TUN关闭 TUN 时本地代理正常,开启后日志仍有请求
已经连不上按配置、端口、请求、规则、DNS或 TUN 的顺序检查能定位到具体一层,而不是反复切换节点

可以把完整链路理解为:配置或订阅提供节点与规则,Mihomo读取这些内容并启动代理入口,图形客户端负责导入、切换、查看日志和控制系统代理。Mihomo发布页会按操作系统、CPU架构和编译方式区分文件;当前发布页列出的版本和校验值会变化,下载时应以Mihomo 官方发布页显示的信息为准。github.com

Windows、macOS、Linux:安装并准备配置

命令行路线。先打开Mihomo 官方启动文档,根据系统和 CPU 架构选择预编译文件。Windows、macOS 和 Linux 的文件名不同,macOS 还要区分 Intel 与 Apple 芯片;不要只按文件名中的系统名称选择,架构不匹配时程序可能无法启动。官方 FAQ 还说明了发布文件名中的系统、架构和兼容编译标记含义,下载前应对照Mihomo 官方 FAQ核对。

  1. 创建工作目录。Windows 可创建 C:\mihomo;macOS 或 Linux 可创建 ~/mihomo。将可执行文件和配置文件放在同一目录,便于备份配置和查看日志。
  2. 放入配置。把自己的 Clash 或 Mihomo 格式配置保存为 config.yaml。如果使用订阅链接,不要把真实链接、账号、密码、Cookie 或 token 发到公开位置。
  3. 先测试配置。在 Windows PowerShell 中进入目录,执行 .\mihomo.exe -t -d .;macOS 或 Linux 终端执行 ./mihomo -t -d .。-t表示测试配置并退出,-d指定配置目录;官方源码中的命令行参数也将这两个选项分别定义为测试配置和配置目录。Mihomo 命令行参数源码。
  4. 启动内核。Windows PowerShell 执行 .\mihomo.exe -d .;macOS 或 Linux 执行 ./mihomo -d .。如果配置文件不在当前目录,可将 -d 改成实际目录,或使用 -f 指定配置文件。

如果测试提示 YAML 解析失败、字段不存在、代理组名称不匹配或文件不存在,先修复这些问题,再启动内核。启动后应在终端看到监听端口、配置载入或错误信息;命令行窗口不要立即关闭,否则进程也会结束。

图形客户端路线的通用流程是:打开 Profiles、配置或订阅管理页面,添加订阅链接,执行更新,选中新配置并启用,然后在代理或系统代理页面打开本地代理。不同客户端的菜单名称和版本可能不同,不能把某个客户端的界面路径当成 Mihomo 的固定菜单。无论采用哪种客户端,完成后都要检查配置是否真的激活,以及日志页面是否出现请求。

一个只用于理解结构的示例可以写成:

mixed-port: 7890
allow-lan: false
bind-address: 127.0.0.1
mode: rule
log-level: info
external-controller: 127.0.0.1:9090
secret: ''
proxies: []
proxy-groups: []
rules:
- MATCH,DIRECT

这个示例不会自动生成可用节点。实际使用时,proxies、proxy-groups和rules必须替换为自己的有效内容;配置字段可以对照Mihomo 全局配置文档。首次测试建议保持 allow-lan: false,并把控制接口绑定到 127.0.0.1,避免无意中暴露给局域网。github.com

导入订阅后怎么选节点、开代理并验证

导入订阅后,先确认配置中有节点和代理组,再选择一个实际存在的节点或策略组。策略组名称必须与规则中引用的名称完全一致;如果最后的 MATCH 指向不存在的组,配置可能无法通过测试。Mihomo规则通常按顺序匹配,靠前规则优先,规则说明可查看Mihomo 路由规则文档。github.com

先验证 mixed-port。当配置中有 mixed-port: 7890 时,可在系统代理或支持代理的应用中填写地址 127.0.0.1 和端口号。Windows可从“设置→网络和 Internet→代理”进入;Windows 7 可从“控制面板→Internet 选项→连接→局域网设置”进入。macOS 可从“系统设置→网络→当前网络→详细信息→代理”进入。系统代理只影响遵循系统设置的应用,个别应用可能需要单独填写代理。

检查端口是否监听时,Windows PowerShell 可执行 Get-NetTCPConnection -LocalPort 7890;macOS 或 Linux 可执行 lsof -nP -iTCP:7890 -sTCP:LISTEN。如果没有输出,说明内核没有监听这个端口,先回到启动窗口或客户端日志查看配置解析、端口冲突和进程退出原因。

验证请求时,PowerShell 中使用下面的 GET 请求,并带上 User-Agent:

Invoke-WebRequest -Method Get -Headers @{"User-Agent"="Mozilla/5.0"} -Proxy "http://127.0.0.1:7890" -Uri "https://example.com"

macOS 或 Linux 终端可执行:

curl -L -A "Mozilla/5.0" -x "http://127.0.0.1:7890" "https://example.com"

这只能证明本地代理入口能够发起请求,不代表所有目标都可访问。客户端请求订阅时,也建议使用 GET 并带上与客户端接近的 User-Agent,例如 PowerShell 中执行 Invoke-WebRequest -Method Get -Headers @{"User-Agent"="clash.meta"} -Uri "订阅链接" -OutFile "subscription.yaml";macOS 或 Linux 可执行 curl -L -A "clash.meta" -H "Accept: */*" "订阅链接" -o subscription.yaml。不要在输出、截图或日志中打印完整订阅链接和 token。

如果下载结果是 HTML 登录页、JSON 错误或空文件,而不是配置内容,先检查链接权限、过期情况、重定向和返回格式。若命令行能下载但客户端更新失败,应查看客户端的订阅更新日志,并确认客户端是否使用了不同的网络路径或 User-Agent。

再考虑 TUN。TUN适合需要接管更多系统流量、但应用不支持手动代理的场景。它会增加路由、DNS、虚拟网卡、防火墙和权限等变量,建议在 mixed-port 已经正常后再开启。官方 TUN 文档涉及自动路由、自动检测出口接口等配置,具体字段应对照Mihomo TUN 配置文档。github.com

连接失败时,按这五层定位问题

  1. 配置层:重新执行 mihomo -t -d 配置目录。如果失败,先处理 YAML 缩进、字段拼写、代理组名称和文件路径,不要先排查 TUN。
  2. 进程与端口层:检查进程是否运行、mixed-port 是否监听。若提示端口已占用,可关闭占用程序,或将 mixed-port改成未被使用的端口号,再重新测试配置。
  3. 代理应用层:确认浏览器或应用填写的是本机地址和端口号,系统代理没有被其他软件覆盖。若日志没有任何请求,通常优先查应用是否使用代理,而不是先更换节点。
  4. 规则与策略组层:查看日志或 Connections 页面,确认请求命中了哪个规则和策略组。节点存在不等于策略组已经选中节点,最后的兜底规则也必须指向存在的组或 DIRECT。
  5. DNS、TUN与上游层:只有在请求已经进入日志、但连接超时或网页打不开时,再检查 DNS、虚拟网卡、自动路由、防火墙、MTU、延迟和丢包。

端口被占用

Windows PowerShell执行 Get-NetTCPConnection -LocalPort 7890;macOS 或 Linux执行 lsof -nP -iTCP:7890 -sTCP:LISTEN。如果确认端口被其他程序使用,修改配置中的端口号并重新运行配置测试。客户端日志、命令行窗口或内核日志通常能看到 bind、listen 或 address already in use 等提示。

节点超时或全部不可用

先确认配置中确实有节点,策略组没有指向已删除的名称。然后在相同设备、相同网络和相近时间下对比不同节点,并分别观察请求是否成功、延迟和丢包情况。Windows 可用 ping 目标域名 查看基础连通性;macOS 或 Linux 可用 ping -c 4 目标域名。Ping正常不等于代理协议一定正常,仍要以 Mihomo 请求日志和实际 GET 请求为准。

能连接但打不开网页

先看日志是否有请求,再确认规则命中结果。随后检查 DNS 设置、浏览器独立代理、系统代理覆盖和防火墙。使用 TUN 时,先关闭 TUN 并回到 mixed-port 做最小测试;如果 mixed-port 能工作,再逐项恢复 TUN、自动路由和 DNS 相关设置。

速度慢或频繁断线

不要只根据一次延迟选择节点。先在相同条件下比较请求成功率、延迟、丢包和日志中的握手或超时信息,再检查 Wi-Fi 信号、本地后台上传、DNS响应和 MTU。若只有一个应用断线,检查该应用是否绕过系统代理;若所有应用同时断线,优先查看内核日志中的 DNS 失败、连接重置、握手超时和端口异常。

使用前安全清单

使用命令行后台运行时,可以进一步参考Mihomo 服务运行文档;如果只是个人电脑临时使用,先保持前台运行并观察日志,通常比直接注册系统服务更容易定位问题。github.com

参考资料

本文涉及的下载、命令行参数、配置字段、规则、TUN与服务运行信息,优先依据 Mihomo 项目及其文档仓库的公开资料整理。版本、文件名和字段说明可能变化,执行前应重新打开对应页面核对。

常见问题

Mihomo是客户端还是内核?

Mihomo主要是代理内核,负责读取配置、连接节点、执行规则和提供代理入口。图形客户端可以调用它,但图形客户端不等于Mihomo本身。

没有订阅链接可以使用Mihomo吗?

可以,但需要自己准备有效配置,其中应包含节点、代理组和规则。只有mixed-port而没有节点时,内核可以启动,但不会自动产生可用的远程连接。

Mihomo导入订阅后为什么不能上网?

先确认订阅更新成功,再执行配置测试,检查代理组是否选中了实际存在的节点,然后确认应用使用了本机地址和端口号。日志没有请求时,优先检查系统代理、应用代理或TUN是否生效。

应该先开系统代理还是TUN?

建议先启用mixed-port并设置系统代理,确认端口、请求和日志都正常后再尝试TUN。TUN涉及路由、DNS、虚拟网卡、防火墙和管理员权限,排查变量更多。

Mihomo配置文件放在哪里?

命令行运行时,配置目录由启动参数指定,常见方式是使用<code>-d</code>指定目录,或使用<code>-f</code>指定配置文件。图形客户端通常将配置保存到自己的数据目录,具体位置应查看客户端设置和日志。

如何判断是节点问题还是本地配置问题?

先用配置测试确认内核能读取配置,再检查本机端口和代理请求。如果没有监听或没有请求记录,优先查本地配置和代理设置;如果请求已经进入日志但只有某个节点超时,再单独检查该节点和网络条件。

相关阅读

参考资料

  1. Mihomo 官方发布页
  2. Mihomo 官方启动文档
  3. Mihomo 官方 FAQ:下载文件选择
  4. Mihomo 命令行参数源码
  5. Mihomo 全局配置文档
  6. Mihomo 路由规则文档
  7. Mihomo TUN 配置文档
  8. Mihomo 服务运行文档
  9. github.com