Mihomo 代理组进阶教程:filter 筛选与智能分流配置

学会了 Mihomo 基础配置 后,下一步就是玩转代理组(proxy-groups)。代理组决定了”哪些节点用来干什么”,配好了能实现自动选最快节点、按地区分组、故障转移,本文讲几个最实用的进阶写法。

代理组的基本结构

每个代理组至少要写 name(名字)和 type(类型)。最常用的三种类型:

  • select:手动选择,面板里点哪个用哪个;
  • url-test:自动测速,选延迟最低的节点;
  • fallback:按顺序用第一个可用的,坏了自动换下一个。

代理组配置示例

进阶一:用 filter 按地区自动分组

如果你的订阅有几十个节点,一个个手动挑很麻烦。filter 可以用正则表达式自动筛选节点。下面这个例子建了三个地区组:

proxy-groups:
  - name: "香港节点"
    type: url-test
    use: [my-sub]
    filter: "(?i)港|hk|hongkong"
    url: "http://www.gstatic.com/generate_204"
    interval: 300
  - name: "美国节点"
    type: url-test
    use: [my-sub]
    filter: "(?i)美|us|united states"
    url: "http://www.gstatic.com/generate_204"
    interval: 300
  - name: "日本节点"
    type: url-test
    use: [my-sub]
    filter: "(?i)日|jp|japan"
    url: "http://www.gstatic.com/generate_204"
    interval: 300

(?i) 表示不区分大小写。多个关键词用 | 分隔。想排除某些节点就用 exclude-filter,写法一样。

进阶二:排除特定协议类型

exclude-type 可以按协议类型排除节点(不支持正则,用 | 分隔):

    exclude-type: "Shadowsocks|Http"

比如你只想让某个组走 VLESS/Trojan,就可以把 Shadowsocks 排除掉。注意它只对直接引入的节点生效。

filter 筛选节点

进阶三:一个”自动选择”组的完整模板

把上面学到的组合起来,这是一个开箱即用的自动选择组:

  - name: "自动选择"
    type: url-test
    use: [my-sub]
    url: "http://www.gstatic.com/generate_204"
    interval: 300
    timeout: 5000
    max-failed-times: 5
    lazy: true

interval: 300 是每 5 分钟测一次速;lazy: true 表示没选中这个组时不测速,省资源;max-failed-times: 5 是连续失败 5 次后强制重测。

实战:三层分流架构

推荐新手用的经典结构:

proxy-groups:
  - name: "PROXY"
    type: select
    proxies: [自动选择, 香港节点, 美国节点, DIRECT]
  - name: "自动选择"
    type: url-test
    use: [my-sub]
    ...
rules:
  - DOMAIN-SUFFIX,google.com,PROXY
  - DOMAIN-SUFFIX,youtube.com,PROXY
  - MATCH,DIRECT

顶层 PROXY 组手动切换,下面挂自动和地区组;规则里把需要代理的域名指给 PROXY,其他直连。这套结构应付 99% 的日常场景足够了。

官方完整文档在 Mihomo 官方 Wiki,遇到冷门字段去那里查最准。

梯子吧推荐

工欲善其事,必先利其器。选一个稳定高速的机场,配合上面教程里的工具,体验会好很多。点击查看梯子吧整理的机场推荐 >>