Mihomo 使用指南:订阅配置与代理模式设置
简答:如果你刚开始使用 Mihomo,最短路径是:准备正确的订阅链接,导入并更新配置,确认节点和策略组已经出现,再选择节点、开启系统代理或 TUN,最后用浏览器或 curl 验证。规则、全局、直连只是流量匹配方式,不等于系统代理已经开启;页面能打开也不等于所有应用都已接入。本文按这条链路说明 Mihomo 的基础配置与排查方法。
定义:Mihomo 是负责解析配置、建立代理连接并按规则转发流量的网络代理内核,图形客户端只是为它提供配置管理、开关和状态展示的操作界面。
先按这 5 步完成 Mihomo 基础设置
不同图形客户端的菜单名称可能不同,以下步骤适用于使用 Mihomo 内核的常见客户端。操作前先备份已有配置;如果客户端已有多个配置文件,先确认当前正在编辑或启用的是哪一个。
- 准备订阅链接:从服务提供方复制完整订阅地址,不要把链接发到群聊、工单截图或公开仓库。订阅链接通常包含访问凭据,泄露后可能导致他人使用或刷新你的配置。
- 导入并更新:在客户端的“配置、Profiles 或订阅”区域添加远程 URL,保存后执行更新。若客户端支持自定义请求头,可优先使用其默认的 Mihomo 或 Clash 兼容方式;不要随意修改 User-Agent,除非服务提供方明确要求。
- 确认解析结果:配置列表中应出现可选配置,打开详情检查是否有代理节点、策略组以及监听端口。只有看到这些内容,才说明配置至少完成了解析;这不代表节点一定可用。
- 启用配置和节点:将目标配置设为当前配置,在代理页面选择具体节点或策略组中的节点。自动选择组可能会自行切换,手动选择组则需要你明确点选一个节点。
- 接入并验证:先开启系统代理;只有在需要接管不遵循系统代理的应用,或客户端明确要求时,再考虑 TUN。打开浏览器访问普通网页,再用一个出口 IP 查询页面或 curl 做复核。
停止条件:如果第 3 步没有节点或策略组,不要继续反复切换模式,应先处理订阅返回内容、配置解析或权限问题。
先分清 6 个概念:内核、客户端、订阅和节点不是一回事
| 概念 | 作用 | 你需要检查什么 |
|---|---|---|
| Mihomo 内核 | 解析配置、连接节点并转发流量的程序。 | 内核是否启动,日志是否有配置或连接错误。 |
| 图形客户端 | 提供导入配置、切换节点、启停代理等界面。 | 当前客户端实际使用的是否是 Mihomo 内核。 |
| 订阅链接 | 远程获取配置或节点信息的地址。 | 是否完整、是否过期、是否需要登录权限。 |
| 配置文件 | 由 YAML 等结构化内容组成,包含端口、模式、节点和规则。 | 是否能被 Mihomo 成功解析。 |
| 节点 | 一个具体的代理出站连接,通常包含服务器、端口和协议参数。 | 是否能建立连接,以及 UDP 等能力是否由配置支持。 |
| 策略组 | 把多个节点或策略放在一起,供规则或手动选择。 | 组内是否有节点,当前是否已选中有效成员。 |
官方文档将代理节点写在 proxies 配置中,并要求节点具有名称、类型、服务器和端口等字段。实际订阅可能还包含策略组、规则集和 DNS 配置,因此不要只看到“配置文件已下载”就判断全部设置完成。
订阅导入后,怎样判断配置真的生效
建议按“文件—内核—端口—系统流量—网页结果”的顺序检查,避免把一个环节的正常误认为全链路正常。
- 看文件:配置页面能显示节点和策略组,而不是空白、登录页或普通 HTML。
- 看内核:客户端状态显示内核正在运行,日志没有 YAML 语法错误、字段不支持或启动后立即退出。
- 看端口:检查配置中的
mixed-port、port或socks-port。官方文档说明,mixed-port同时支持 HTTP(S) 和 SOCKS5;不要把某个客户端的常见端口当成 Mihomo 的固定默认值。可用的端口应以当前配置为准。 - 看接入:系统代理开关打开后,系统或浏览器才会把遵循系统代理的流量交给 Mihomo。系统代理关闭时,单纯切换规则模式通常不会改变浏览器流量。
- 看结果:浏览器能打开页面只说明这一次请求成功,不能证明所有应用、UDP 或 TUN 都正常。需要时分别检查目标应用、DNS 和日志。
如果你能在本机读取订阅返回内容,可以用浏览器开发者工具或命令行查看响应状态和正文。例如:curl -L -A "clash.meta" -o subscription.txt "你的订阅地址"。不要把真实订阅地址写入公开脚本或截图。命令只能帮助识别“服务器返回了什么”,不能替代客户端对配置的解析和节点连通性验证。
规则、全局、直连模式怎么选
| 模式 | 含义 | 适合场景 | 出现问题时先查什么 |
|---|---|---|---|
| 规则 Rule | 根据规则把流量分配给代理、直连或拒绝等策略。 | 日常使用,希望不同域名按规则处理。 | 检查目标域名命中的规则、策略组当前节点和 DNS 结果。 |
| 全局 Global | 多数流量统一交给 GLOBAL 策略组处理。 | 用于判断问题是否来自规则匹配。 | 确认 GLOBAL 组已经选择节点,而不是停留在空组或直连项。 |
| 直连 Direct | 流量不经过代理节点,直接连接。 | 测试本地网络、对比代理前后的结果。 | 确认系统代理和 TUN 是否仍在接管流量,避免把直连结果当成节点结果。 |
官方 Mihomo 配置文档将运行模式定义为 rule、global 和 direct,默认模式为规则模式。模式只决定流量如何匹配出口;它和“系统代理是否打开”“TUN 是否启用”是两个维度。
实用排查顺序是:先在规则模式下选择一个明确节点;如果目标网页打不开,再临时切换全局模式做对照;若全局也失败,优先检查节点、DNS、内核日志和本地网络;若全局成功而规则失败,再回头检查规则命中结果。
系统代理和 TUN 的区别:不要一上来就开 TUN
系统代理是操作系统提供的 HTTP 或 SOCKS 代理入口,遵循系统代理设置的应用会使用 Mihomo;不遵循系统代理的应用可能不会经过它。
TUN通过虚拟网卡和路由接管更多系统流量,适合需要覆盖不读取系统代理的程序,但会涉及权限、路由、DNS、系统防火墙和应用兼容性。官方文档建议普通用户优先使用顶层 TUN 配置,并说明 TUN 的 auto-route 用于自动设置全局路由,dns-mode 可选择不修改系统 DNS、设置 TUN 地址为 DNS,或进一步处理 DNS 劫持。
- 只是浏览器或办公软件需要代理:先使用系统代理,结构更简单。
- 某个应用不认系统代理:先确认应用自身代理设置,再考虑 TUN。
- 开启 TUN 后无法联网:先关闭 TUN 回滚到系统代理,随后检查权限、路由、DNS 和防火墙。
- Windows 或 Android 出现 DNS 异常:不要仅凭“已连接”判断成功,检查 TUN 日志和 DNS 配置。
官方文档还提示,TUN 的不同协议栈、防火墙和系统平台会影响使用方式;因此这里不建议直接复制一份跨平台配置。先使用客户端生成或提供的最小配置,再逐项开启功能。
常见故障:按现象定位,不要反复重装
订阅更新后显示 401 或 403
这通常表示服务端拒绝了当前请求,可能与订阅权限、过期、请求头或访问限制有关。先在浏览器中重新登录服务提供方账号,重新复制完整链接;再用客户端的默认方式更新。若仍失败,保留状态码和时间,向服务提供方核对订阅权限。不要把包含凭据的完整链接发给他人。
配置下载成功但没有节点
先打开下载内容或客户端详情,确认返回的不是登录页、错误页或空内容;然后检查当前配置是否被设为启用。若服务提供方要求特定格式,需确认客户端和订阅格式匹配。不要手动把一段未知文本直接改成 YAML,因为格式转换错误可能导致更多问题。
配置报 YAML 错误或内核无法启动
先恢复到上一份可用配置,再查看日志中指出的行号和字段。常见排查方向包括缩进、冒号、引号、重复字段和客户端版本不支持的键。能启动内核后,再一次只改一个字段并重新验证。
已连接但网页打不开
按顺序检查:当前节点是否已选中、系统代理是否打开、网页是否命中直连规则、DNS 是否能解析、日志是否出现超时或 TLS 错误。浏览器能访问一个页面,不代表所有域名和应用都正常;应使用同一节点对比规则模式与全局模式,并记录现象后再调整。
TUN 无法启动
先关闭 TUN 并确认系统代理可以工作,再检查客户端权限、虚拟网卡、系统防火墙和 DNS 设置。官方文档指出,TUN 的自动路由、严格路由和 DNS 劫持具有不同作用,开启过多选项可能增加排查难度。回滚到最小配置后逐项恢复。
Mihomo 使用前的安全与回滚清单
- 备份:更新订阅或改配置前,保存一份当前可用配置。
- 保护订阅:订阅 URL 按凭据处理,不公开粘贴,不提交到代码仓库。
- 限制局域网访问:不需要让其他设备使用时,不要随意开启
allow-lan。官方文档说明,允许局域网访问会扩大代理端口的可访问范围。 - 检查监听地址:不要把没有认证和加密的 HTTP、SOCKS 或 Mixed 入口直接暴露到互联网。官方文档明确提示,监听所有网卡时要特别注意暴露风险。
- 记录变化:每次只改一个设置,并记录模式、节点、DNS、TUN 和客户端版本。
- 可回滚:出现全局断网时,先关闭 TUN、恢复系统网络设置、切回备份配置,再逐项定位。
本文是第三方使用指南,不代表任何客户端或订阅服务的官方页面;具体菜单名称、可用字段和版本行为应以你正在使用的客户端与 Mihomo 官方文档为准。
常见问题
Mihomo 和图形客户端有什么区别?
Mihomo 是负责解析配置和转发流量的内核,图形客户端负责提供订阅管理、节点选择、模式切换和状态展示。安装了客户端不等于内核已经启动,也不等于系统流量已经接入。
Mihomo 导入订阅后为什么没有节点?
先确认返回内容不是登录页或错误页,再检查订阅是否过期、权限是否正常、客户端是否支持该格式,以及当前配置是否已启用。若配置页面仍为空,应保留状态码和日志向订阅提供方核对。
规则模式、全局模式和直连模式哪个最好?
没有统一答案。规则模式适合日常使用,全局模式适合排查规则是否造成问题,直连模式适合测试不经过节点的网络。选择模式后,还要单独确认系统代理或 TUN 是否开启。
系统代理已经打开,为什么某个应用仍然不走 Mihomo?
该应用可能不读取系统代理,或使用了自己的代理、DNS、网络栈。先检查应用内代理设置和 Mihomo 日志;若确实需要接管该应用,再评估 TUN,并先保留可回滚的系统代理配置。
Mihomo 的端口应该填多少?
不要照搬其他客户端的端口。以当前配置中的 <code>mixed-port</code>、<code>port</code> 或 <code>socks-port</code> 为准;官方文档说明 mixed port 可同时处理 HTTP(S) 和 SOCKS5。端口监听成功也不代表节点或网页访问一定成功。