白嫖机场-白嫖机场加速器官网

Mihomo 代理模式怎么切换?规则、全局和直连区别

更新于 2026-11-13 · xn--mesv7f5toqlp.shop

简答:先看使用场景:日常使用通常选 Rule,临时让所有流量经过同一代理组可选 Global,排查本地网络或暂停代理可选 Direct。切换模式后还要检查代理组当前选中的节点;模式本身不等于节点选择,也不等于系统代理或 TUN。

定义:Mihomo 代理模式是内核处理流量时采用的顶层路由策略,官方文档确认的模式包括 rule、global 和 direct。

先试这一步:按场景选择模式

如果你只是想恢复日常使用,先在 Mihomo 客户端或控制面板中把运行模式切到 Rule,再打开代理组页面,确认负责外部流量的策略组已经选中可用节点。官方配置文档将 rule 定义为按规则匹配,global 定义为全局代理,且需要在 GLOBAL 代理组中选择代理或策略;direct 则是全局直连。可查看 Mihomo 官方 General configuration 文档核对字段含义。

三种模式的快速选择
你的目的建议模式还要检查什么
日常按域名或规则分流Rule规则顺序、策略组、最终的 MATCH 目标
临时让流量统一交给一个代理组GlobalGLOBAL 组当前是否选中节点,而不是 DIRECT
暂停代理或排查本地网络Direct系统代理、TUN 是否仍开启,以及测试后是否恢复原模式
只有部分应用不受模式影响先确认接管方式应用是否遵循系统代理;不遵循时再检查 TUN

关键结论:切换到 Global 不会自动替你选择一个合适节点;如果 GLOBAL 组当前指向 DIRECT,看起来像“全局模式不生效”其实可能是策略组选择造成的。

Mihomo 代理模式怎么切换

  1. 确认当前配置正在运行。打开 Mihomo 客户端的配置、概览或控制面板页面,确认已经加载目标配置并且内核处于运行状态。不同客户端可能把入口写成“运行模式”“代理模式”或直接显示 Rule / Global / Direct,菜单名称以当前版本界面为准。
  2. 打开运行模式选择器。在主界面、概览页或托盘菜单中找到模式切换区域,选择 Rule、Global 或 Direct。MetaCubeX 的控制面板代码将三项标准化为 rule → global → direct,可参考 MetaCubeX 控制面板的模式排序实现。
  3. Global 模式下选择代理组成员。切到 Global 后进入“代理”或“Proxies”页面,找到名为 GLOBAL 的策略组,选择一个节点或另一个策略组。若当前成员是 DIRECT,全局模式仍可能表现为直连。
  4. Rule 模式下检查规则目标。进入“规则”或“Rules”页面,查看访问目标命中了哪条规则以及对应的策略组。Rule 不是“所有境外网站都自动代理”,具体结果取决于配置中的规则内容和策略组选择。
  5. Direct 模式只用于直连测试或暂时停用分流。Direct 会让顶层路由采用全局直连,但它不一定等同于关闭客户端、关闭系统代理或关闭 TUN。测试结束后,如果仍需使用分流,应切回 Rule,并恢复原来的系统接管设置。

如果客户端支持编辑 YAML,也可以在配置中检查顶层字段:mode: rule、mode: global 或 mode: direct。不要把这三个值写到代理组名称、规则目标或 DNS 字段中;它们属于不同层级。

Rule、Global、Direct 到底有什么区别

Rule:按照规则逐条匹配

Rule 模式会按照配置里的 rules 顺序处理请求。官方规则文档说明,规则从上到下匹配,排在前面的规则优先级更高;MATCH 用于匹配没有被前面条件命中的请求。可参考 Mihomo 官方 Route Rules 文档。

例如,下面的示例表示目标域名命中后直连,其他请求交给名为 PROXY 的策略组:

rules:
- DOMAIN-SUFFIX,example.com,DIRECT
- MATCH,PROXY

实际配置中的策略组名称可能不同。若规则已经命中 DIRECT,你在代理组中切换节点不会改变这条请求的处理结果;应先看连接日志和命中规则。

Global:统一交给 GLOBAL 策略组

Global 模式的重点不是“自动选择最快节点”,而是将流量交给 GLOBAL 代理组。该组可能包含具体节点、自动选择组、其他策略组,甚至包含 DIRECT。因此排查 Global 时要分两层看:第一层是顶层模式是否为 global,第二层是 GLOBAL 组的当前成员是什么。

Direct:顶层全局直连

Direct 模式适合做本地网络对照测试,例如判断网页打不开是节点链路问题,还是本地 DNS、路由或浏览器问题。测试时建议只访问你有权访问的普通网站或内部业务地址,并记录切换前后的现象。Direct 仍不代表所有应用都绕过了客户端的其他接管设置,因此还应单独确认系统代理和 TUN。

模式切换后如何确认真的生效

  1. 先看运行模式。回到概览页确认显示的是目标模式,而不是只改了配置文件但没有热加载。若客户端提供“重新加载配置”,按界面提示执行后再看状态。
  2. 再看代理组当前成员。在代理页面确认 GLOBAL 或规则所指向的策略组的 now 成员。Mihomo API 文档说明,代理组信息会返回当前选择项等字段,可参考 Mihomo 官方 API 文档。
  3. 打开连接日志。访问一个测试地址后,查看连接的目标、命中规则和最终出站。若显示 DIRECT,说明该请求可能被规则或策略组导向直连;若没有连接记录,优先检查系统代理或 TUN 是否接管了该应用。
  4. 用浏览器和命令行分别测试。系统代理模式下,可用浏览器访问测试地址;也可以根据客户端显示的本地端口执行 curl -x http://127.0.0.1:7890 https://example.com -I。端口不是固定值,必须替换为设置页显示的 HTTP、SOCKS 或 mixed 端口。此命令只验证 TCP/HTTP(S) 代理路径,不适用于 UDP 或 QUIC。
  5. 最后再判断 TUN 范围。TUN 是系统级流量接管方式,和系统代理指向本地 mixed 端口不是同一层。MetaCubeX 控制面板文档明确区分了 System Proxy、Mixed Proxy Port 与 TUN;可参考 MetaCubeX 控制面板术语说明。

如果只在浏览器中生效,其他应用不生效,先检查应用是否遵循系统代理;如果应用不遵循,再检查 TUN 是否已启用、权限是否正常,以及该应用流量是否出现在连接记录中。

切换不生效、网页打不开或国内网站变慢怎么办

  1. 网页完全打不开:先切到 Direct 测试普通网页。如果 Direct 也打不开,优先检查本地网络、DNS 和浏览器代理缓存;如果 Direct 正常而 Rule 或 Global 不正常,再检查节点、策略组和连接日志。
  2. Global 看起来仍然直连:打开 GLOBAL 组,确认当前成员不是 DIRECT,也不是一个内部最终指向 DIRECT 的策略组。
  3. Rule 下某个网站走错线路:查看连接日志中的命中规则。规则从上到下匹配,过早出现的域名、IP 或规则集可能先结束匹配;需要调整配置时,先备份原文件,再修改对应规则。
  4. 国内网站变慢:不要直接把所有问题归因于节点。先确认是否误切到 Global,再切回 Rule;随后查看该域名是否命中代理规则,最后检查 DNS 和浏览器缓存。
  5. 只有部分应用不生效:确认系统代理是否已开启;若应用不读取系统代理,再检查 TUN、系统权限和连接日志。不要仅凭客户端主界面的“已运行”判断所有应用都已被接管。
  6. 改了 YAML 但界面没变化:确认编辑的是当前启用配置,而不是订阅源、备份文件或未启用的配置。重新加载后再检查运行模式;无法确认时,以客户端当前运行状态和日志为准。

订阅链接提醒:如果配置来自订阅,处理截图、日志或复制配置前请遮挡订阅 URL、Token、用户名和密码,避免把可访问凭据公开。

一张自查清单

  • 模式:当前是 Rule、Global 还是 Direct?
  • 配置:当前运行的是否是你刚修改的配置?
  • 节点:代理组是否选中了实际节点,而不是 Direct?
  • 规则:请求命中了哪一条规则,最终目标是哪个策略组?
  • 接管:应用使用系统代理,还是通过 TUN 接管?
  • 验证:连接日志、浏览器测试和命令行测试是否指向同一结果?
  • 凭据:日志和截图中是否已遮挡订阅链接与认证信息?

排查时建议一次只改一个变量:先固定节点,再切换模式;先用 Rule 与 Direct 做对照,再测试 Global。这样更容易判断问题来自规则、策略组、节点,还是本地网络接管。

常见问题

Mihomo 日常使用应该选 Rule 还是 Global?

通常先选 Rule,因为它会按配置规则分流。只有在需要短时间让流量统一交给 GLOBAL 策略组,或为了做对照测试时,再使用 Global;同时确认 GLOBAL 当前选中的成员。

切到 Global 后还要选节点吗?

要。Global 只决定顶层路由交给 GLOBAL 策略组,不代表已经选择了具体节点。进入代理组页面检查当前成员,避免 GLOBAL 实际指向 DIRECT 或未选择可用节点。

Direct 模式是不是等于关闭 Mihomo?

不是。Direct 是 Mihomo 的全局直连模式,客户端内核、系统代理或 TUN 仍可能处于运行状态。要判断是否完全停止接管,需要分别检查客户端运行状态、系统代理和 TUN。

Rule 模式下为什么某个网站没有走代理?

先查看连接日志确认命中的规则和最终目标。规则按从上到下的顺序匹配,前面的规则可能已经把请求导向 DIRECT;还要检查最终策略组当前选择的节点。

模式切换后只有浏览器生效,其他应用不生效怎么办?

先确认其他应用是否遵循系统代理。若不遵循,检查 TUN 是否启用、权限是否正常,以及该应用连接是否出现在 Mihomo 连接日志中。

相关阅读

参考资料

  1. Mihomo 官方 General configuration 文档
  2. Mihomo 官方 Route Rules 文档
  3. Mihomo 官方 API 文档
  4. MetaCubeX 控制面板模式排序实现
  5. MetaCubeX 控制面板术语说明