yyhhyy's blog

yyhhyy

Mihomo自用配置

2773
2024-09-03

1. 缘由

开始之前,还是觉得有必要说说为什么要展开这篇文章吧。clash系列算是自己接触梯子最早的一个产品了,虽然期间也有接触过v2ray,不过有很长一段时间我都是以clash为主用,当然还有surge,因为其在ios上确实有非常好的体验~后面有一段时间又折腾了sing-box了,最近闲下来,觉得还是有必要写一个关于mihomo的配置以及想法。

2. DNS

在开始之前,特别感谢 狐狐🦊 与他一番探讨使我豁然开朗很多~

2.1 DNS 泄露?

说到这里,肯定就得说到 DNS泄露 了。

其实我自己也有一段时间陷入过 DNS泄露 这个名词的恐怖折腾中,现在想想其实真的有点笨。为什么呢?

首先先简单解释下什么是 DNS泄露 简单理解,当你在访问一个需要代理才能访问的域名 比如 谷歌;我们在获取其ip的过程中,不是使用的代理的服务器的dns去解析 谷歌 这个域名 ,而是使用你当前所用的网络环境的 DNS服务器 对 谷歌 这个域名进行解析。那么这个过程 就是所谓的 DNS泄露

他有什么危害呢,其实看了这么多文章,都在说 可能会 "导致用户的真实IP地址和网络活动可能被泄露给第三方"。 但是试问 现在的网民全世界有大,有必要说盯着 您 的网络活动吗? 应该不至于吧哈哈 。

再者 还有一部分人会说, 会用 DNS解析 来让网站来描绘用户的画像?这点更是天方夜谈了,除了 google 的DNS节点 基本遍布全世界,其他家的DNS节点 不是这个国家缺 就是那个国家缺的,如果你是网站的运营者,那么你会用这个来描绘用户的画像吗? 比如你在一个很偏僻的国家 A 这个国家 google 没有DNS节点 , 那你如果用google的DNS来进行DNS解析,一般会给你找邻国附近 B 国的DNS节点,那么网站的运营者就会以此来判断 你是 B 国的人吗? 肯定不会嘛~

再来个简单的例子,你会说闽南语,但是我可以直接判断你是会讲闽南语地区的人吗? 也肯定不会咯,因为有可能她是后天学习的。因此,这是同理的。

因此呢 DNS泄露 其实是有一定危言耸听的成分在里面的, 正确的叫法 应该是 DNS 出口查询 。

本质上来说,你DNS的 出口的IP 和你网络的 出口IP 的 地理位置 是否一致,可以很大程度的决定,你的CDN解析是不是最优解。 就是说你与你访问的哪个网站,能否有更好的网络通信效果。

综上DNS泄露 这个名词相信已经有了更好的认识,看到这里,你还会觉得它的问题特别大吗?

当然,这是我自己所认可的观点,如果你有自己所认可的观点,那按照你所认可的观点来理解就好啦,我只是把我自己所认可的观点与大伙说一说。

2.2 DNS选择

能看到这里,说明已经对 DNS泄露 已经没那么排斥啦。接下来,有这么多的 DNS 服务厂商要怎么选择呢? 相信大家头也大,为什么选择阿里 为什么选择 腾讯 为什么 选择 cloudflare 等等。 接下来简单阐述下。

在开始前,希望你能明白一件事,运营商的DNS服务,很好,非常好,延迟一定是所有厂商里,排名top的!(有点绝对哈,但是绝大多数都是排top是肯定的)。但是,有前提,分流必须写好,国内走运营商DNS一点问题都没,但是国外的就有问题啦。

这里要提一嘴运营商的DNS在一定情形下,蛮不讨人喜的,比如DNS拦截= = 但是正常国内域名使用自家运营商的DNS进行解析效果还是很不错的,因此做推荐。

至于公共DNS,国内的阿里或者腾讯直接用就好啦,如果硬要说谁稳定点,那阿里肯定是稍胜一筹的,毕竟做这块很久了,老大哥了。但是如果用这种公共DNS遇到特殊时期的时候,可能不同的DNS厂商会“打架”,会出现你解析自己家的没有问题,但是解析别家的就有问题了。这方面,运营商提供的 DNS 就没这个问题,还是相对公平公正的。这就是运营商 DNS 服务 为什么好的其中一个原因。

至于国外比较权威的就是cloudflare和google咯,一般这两家也会比较公平公正,我一般如果要用的话这两家都会放在配置里。

2.3 配置

说了这么多,贴一份自己的config

dns:
  enable: true
  ipv6: false
  prefer-h3: true
  respect-rules: true
  enhanced-mode: fake-ip
  fake-ip-range: 28.0.0.1/8
  nameserver:
    # 网络环境文明的话推荐直接使用运营商的DNS服务器 或者 沿用上游的DNS服务器
    - system
    - https://223.5.5.5/dns-query
    - https://doh.pub/dns-query
  proxy-server-nameserver:
    - https://223.5.5.5/dns-query
    - https://doh.pub/dns-query

简单说一下重点的几个配置的作用吧

nameserver :默认的域名解析服务器。

就是默认都用他来解析域名。 这边我是放了一个自己当地运营商的DNS服务,外加一个阿里的doh。为什么不两个都写运营商的DNS服务呢,因为我当地就一个DNS服务,所以只能拿个阿里来备选啦。不过一般也是会走入运营商DNS解析的。因为他的延迟最低,所以最先返回解析结果,这样子就会优先使用啦。

说到这里还需要简单解释下mihomo的DNS解析原理,mihomo收到一个域名后,会并发的把需要解析的域名同时向你填写的所有上游DNS服务器发送请求,最后看谁最先返回结果就用谁的结果。那只要你用的是当地的运营商的DNS,那么肯定是延迟比较低,比较快的。因此绝大多数优先返回的是使用的运营商返回的DNS。

proxy-server-nameserver :代理节点域名解析服务器,仅用于解析代理节点的域名。

有且只会用在解析代理节点的域名。

这边最好就是使用国内的公共DNS,避免你节点的域名被污染了,使用运营商DNS解析的结果不准确。

贴一张Mihomo的DNS解析流程

我的方案只写到了nameserver 和 proxy-server-nameserve,那这边简单介绍下 nameserver-policyfallback 的作用吧

nameserver-policy 这个其实就是dns的分流规则

比如 'rule-set:TENCENT': https://doh.pub/dns-query 也就是你规则集中,是腾讯的域名都走腾讯自家的DNS服务

这个实际上就是一个道理 自家人不会伤害自家人 也就是用自家的DNS来解析自家的域名,出来的结果肯定不会有啥大问题

也可以把阿里等厂商的 DNS mapping放进来 这样的话就可以确保 自家人不会伤害自家人 啦~

fallbackfallback-filter :这两个是一起用的就拿来一起讲了。

先给定一份yaml吧

  nameserver:
    - 运营商DNS(如果确定上游是运营商DNS的话 直接用 system)
    - https://223.5.5.5/dns-query
  fallback:
    - tls://8.8.4.4
    - tls://1.1.1.1
  fallback-filter:
    geoip: true
    geoip-code: CN

解释下Mihomo的解析过程(直接从nameserver-policy没匹配到开始):

域名在 ns-policy 没匹配到后,会并发去向 nameserverfallback 获取DNS解析结果, nameserver 一般都是国内的DNS服务,所以一般都会优先获取到结果, fallback 会稍微晚一些,但是一旦填写了 fallback 后,一定会等待 fallback 解析返回出来IP的结果,并且会走入 fallback-filter 进行判断,这边的例子就是开启geoip检测,且geoip-code也就是国家是CN。也就是会拿 nameserver 解析出来的ip结果与geoip数据库进行匹配,如果解析的是CN的ip,那么就直接用 nameserver 解析出来的结果,如果nameserver 解析出来的ip结果不是CN,那么就会用 fallback 的解析结果。

这边要特别注意一个地方,就是如果开启了 fallback 哪怕 nameserver 解析的再快都需要等待 fallback 的解析结果。并且 fallback-filter 比较依赖geo这个数据库(但是看了一些文章觉得其中的geosite应该是有一定的问题的)具体问题如下(该来源为 狐狐🦊):

因为 dnsmasq-china-list 设计之初是为国内域名的 DNS 解析优化、完全不适用于流量分流(dnsmasq-china-list 只检查域名的权威 DNS 服务器,因此有部分海外域名、因为 DNS 服务器位于中国大陆、依然被包含在 accelerated-domains.china.conf 中)。因此,Loyalsoldier/v2ray-rules-dat 和 MetaCubeX/meta-rules-dat 项目的 GEOSITE 规则使用 dnsmasq-china-list 作为上游数据来源 是大错特错的。

因此,我不是很喜欢用这个系列(

所以 fallback 在现有的环境下我大概率是不会去使用他的。


这边留个坑,后续有时间会把nameserver-policy 补充完善。也就是 自家人不会伤害自家人

抽空完善一下nameserver-policy咯:

举例下,就是阿里的域名或者服务器,全部走阿里的DNS;同理腾讯等其他厂商也是如此。

请到 以下链接 自行复制内容 粘贴到 自己的 配置文件中使用即可。

另外,有自动的代码,但是由于时间有限没有写到action中,请有能力的同学自行运行python脚本。代码以及说明在我的仓库中。

至此,DNS应该可以暂告一个段落

3. TUNEL

直接贴配置咯

tun:
  enable: true
  stack: system
  device: mihomo
  dns-hijack:
    - any:53
    - tcp://any:53
  auto-route: true
  auto-detect-interface: true
  strict-route: true
  # 如果有使用zerotier或者headscale等,需要自己配置排除自己的网段
  # route-exclude-address: ["192.168.110.0/24"]

其中就我觉得只需要注意下 stack 这个参数啦

具体看我之前写的文章就可以啦。结论就是 在能用的前提 system > mixed > gvisor ~

4. 订阅

# 节点订阅的参数 [每24小时更新一次订阅节点,每 60 秒一次健康检查]
NodeParam: &NodeParam {type: http, interval: 86400, health-check: {enable: true, url: 'https://cp.cloudflare.com', interval: 60}}

# 节点订阅
proxy-providers: 
  我的节点:
    url: '替换订阅链接'
    <<: *NodeParam
    path: './proxy_provider/providers.yaml'

# 节点筛选组
FilterHK: &FilterHK '^(?=.*(香港|HK|Hong|🇭🇰))^(?!.*(网站|地址|剩余|过期|时间|有效|网址|禁止|邮箱|发布|客服|订阅|节点)).*$'
FilterJP: &FilterJP '^(?=.*(日本|JP|Japan|🇯🇵))^(?!.*(网站|地址|剩余|过期|时间|有效|网址|禁止|邮箱|发布|客服|订阅|节点)).*$'
FilterKR: &FilterKR '^(?=.*(韩国|韓|KR|Korea|🇰🇷))^(?!.*(网站|地址|剩余|过期|时间|有效|网址|禁止|邮箱|发布|客服|订阅|节点)).*$'
FilterSG: &FilterSG '^(?=.*(新加坡|狮城|SG|Singapore|🇸🇬))^(?!.*(网站|地址|剩余|过期|时间|有效|网址|禁止|邮箱|发布|客服|订阅|节点)).*$'
FilterUS: &FilterUS '^(?=.*(美国|US|United States|America|🇺🇸))^(?!.*(网站|地址|剩余|过期|时间|有效|网址|禁止|邮箱|发布|客服|订阅|节点)).*$'
FilterUK: &FilterUK '^(?=.*(英国|UK|United Kingdom|🇬🇧))^(?!.*(网站|地址|剩余|过期|时间|有效|网址|禁止|邮箱|发布|客服|订阅|节点)).*$'
FilterFR: &FilterFR '^(?=.*(法国|FR|France|🇫🇷))^(?!.*(网站|地址|剩余|过期|时间|有效|网址|禁止|邮箱|发布|客服|订阅|节点)).*$'
FilterDE: &FilterDE '^(?=.*(德国|DE|Germany|🇩🇪))^(?!.*(网站|地址|剩余|过期|时间|有效|网址|禁止|邮箱|发布|客服|订阅|节点)).*$'
FilterTW: &FilterTW '^(?=.*(台湾|TW|Taiwan|Wan|🇹🇼|🇨🇳))^(?!.*(网站|地址|剩余|过期|时间|有效|网址|禁止|邮箱|发布|客服|订阅|节点)).*$'
FilterOthers: &FilterOthers '^(?!.*(🇭🇰|HK|Hong|香港|🇹🇼|TW|Taiwan|Wan|🇯🇵|JP|Japan|日本|🇸🇬|SG|Singapore|狮城|🇺🇸|US|United States|America|美国|🇩🇪|DE|Germany|德国|🇬🇧|UK|United Kingdom|英国|🇰🇷|KR|Korea|韩国|韓|🇫🇷|FR|France|法国)).*$'
FilterAll: &FilterAll '^(?=.*(.))(?!.*((?i)群|邀请|返利|循环|官网|客服|网站|网址|获取|订阅|流量|到期|机场|下次|版本|官址|备用|过期|已用|联系|邮箱|工单|贩卖|通知|倒卖|防止|国内|地址|频道|无法|说明|使用|提示|特别|访问|支持|教程|关注|更新|作者|加入|(\b(USE|USED|TOTAL|EXPIRE|EMAIL|Panel|Channel|Author)\b|(\d{4}-\d{2}-\d{2}|\d+G)))).*$'

# 策略组参数锚点
# 手动选择参数
Select: &Select {type: select, url: 'https://cp.cloudflare.com', disable-udp: false, hidden: false, include-all: true}
Auto: &Auto {type: url-test, url: 'https://cp.cloudflare.com', interval: 300, tolerance: 50, disable-udp: false, hidden: true, include-all: true}
# 策略组
proxy-groups: 
  - {name: 🎯 节点选择, type: select, proxies: [自动选择, 手动选择, DIRECT], url: https://cp.cloudflare.com, icon: https://raw.githubusercontent.com/Orz-3/mini/master/Color/Static.png}
  - {name: 手动选择, type: select, proxies: [🇭🇰 - 手动选择, 🇯🇵 - 手动选择, 🇰🇷 - 手动选择, 🇸🇬 - 手动选择, 🇺🇸 - 手动选择, 🇬🇧 - 手动选择, 🇫🇷 - 手动选择, 🇩🇪 - 手动选择, 🇹🇼 - 手动选择, Others - 手动选择], url: https://cp.cloudflare.com, icon: https://raw.githubusercontent.com/Orz-3/mini/master/Color/Cylink.png}
  - {name: 自动选择, type: select, proxies: [🇭🇰 - 自动选择, 🇯🇵 - 自动选择, 🇰🇷 - 自动选择, 🇸🇬 - 自动选择, 🇺🇸 - 自动选择, 🇬🇧 - 自动选择, 🇫🇷 - 自动选择, 🇩🇪 - 自动选择, 🇹🇼 - 自动选择], url: https://cp.cloudflare.com, icon: https://raw.githubusercontent.com/Orz-3/mini/master/Color/Urltest.png}
  - {name: ✈️ 电报信息, type: select, proxies: [🎯 节点选择, 🇭🇰 - 自动选择, 🇯🇵 - 自动选择, 🇰🇷 - 自动选择, 🇸🇬 - 自动选择, 🇺🇸 - 自动选择, 🇬🇧 - 自动选择, 🇫🇷 - 自动选择, 🇩🇪 - 自动选择, 🇹🇼 - 自动选择], icon: https://raw.githubusercontent.com/Orz-3/mini/master/Color/Telegram.png}
  - {name: 🤖 AIGC, type: select, proxies: [🇺🇸 - 自动选择, 🎯 节点选择, 🇭🇰 - 自动选择, 🇯🇵 - 自动选择, 🇰🇷 - 自动选择, 🇸🇬 - 自动选择, 🇺🇸 - 自动选择, 🇬🇧 - 自动选择, 🇫🇷 - 自动选择, 🇩🇪 - 自动选择, 🇹🇼 - 自动选择], icon: https://raw.githubusercontent.com/Orz-3/mini/master/Color/OpenAI.png}
  - {name: 🍎 苹果服务, type: select, proxies: [DIRECT, 🎯 节点选择, 🇭🇰 - 自动选择, 🇯🇵 - 自动选择, 🇰🇷 - 自动选择, 🇸🇬 - 自动选择, 🇺🇸 - 自动选择, 🇬🇧 - 自动选择, 🇫🇷 - 自动选择, 🇩🇪 - 自动选择, 🇹🇼 - 自动选择], icon: https://raw.githubusercontent.com/Orz-3/mini/master/Color/Apple.png}
  - {name: Ⓜ️ 微软服务, type: select, proxies: [DIRECT, 🎯 节点选择, 🇭🇰 - 自动选择, 🇯🇵 - 自动选择, 🇰🇷 - 自动选择, 🇸🇬 - 自动选择, 🇺🇸 - 自动选择, 🇬🇧 - 自动选择, 🇫🇷 - 自动选择, 🇩🇪 - 自动选择, 🇹🇼 - 自动选择], icon: https://raw.githubusercontent.com/Orz-3/mini/master/Color/Microsoft.png}

  # 自动选择
  - {name: 🇭🇰 - 自动选择, <<: *Auto, filter: *FilterHK}
  - {name: 🇯🇵 - 自动选择, <<: *Auto, filter: *FilterJP}
  - {name: 🇰🇷 - 自动选择, <<: *Auto, filter: *FilterKR}
  - {name: 🇸🇬 - 自动选择, <<: *Auto, filter: *FilterSG}
  - {name: 🇺🇸 - 自动选择, <<: *Auto, filter: *FilterUS}
  - {name: 🇬🇧 - 自动选择, <<: *Auto, filter: *FilterUK}
  - {name: 🇫🇷 - 自动选择, <<: *Auto, filter: *FilterFR}
  - {name: 🇩🇪 - 自动选择, <<: *Auto, filter: *FilterDE}
  - {name: 🇹🇼 - 自动选择, <<: *Auto, filter: *FilterTW}

  # 手动选择
  - {name: 🇭🇰 - 手动选择, <<: *Select, filter: *FilterHK}
  - {name: 🇯🇵 - 手动选择, <<: *Select, filter: *FilterJP}
  - {name: 🇰🇷 - 手动选择, <<: *Select, filter: *FilterKR}
  - {name: 🇸🇬 - 手动选择, <<: *Select, filter: *FilterSG}
  - {name: 🇺🇸 - 手动选择, <<: *Select, filter: *FilterUS}
  - {name: 🇬🇧 - 手动选择, <<: *Select, filter: *FilterUK}
  - {name: 🇫🇷 - 手动选择, <<: *Select, filter: *FilterFR}
  - {name: 🇩🇪 - 手动选择, <<: *Select, filter: *FilterDE}
  - {name: 🇹🇼 - 手动选择, <<: *Select, filter: *FilterTW}
  - {name: Others - 手动选择, <<: *Select, filter: *FilterOthers}

  # 全部节点
  - {name: AllIn - 手动选择, <<: *Select, filter: *FilterAll}
  - {name: AllIn - 自动选择, <<: *Auto, filter: *FilterAll}

这部分没什么好说的 直接照抄即可 改动的地方就是订阅链接

需要简单解释下 测试链接 最好不用直接用google的因为容易引起 Google 对 IP 的风控

有一部分用户还是更习惯用自动选择,因此现在也补充上来咯。

5. 重中之重 规则

首先,请注意,把所有非IP类规则写在 IP类规则之前,这是最没有问题的!

避免 DNS 污染和 DNS 泄漏最有效的办法就是永远不在本地进行 DNS 解析,而 Mihomo 能且只能通过 Fake IP 和域名规则匹配的方式 可以实现非直连域名 一定不在本地本机进行任何 DNS 解析。在 Mihomo 中,规则自上而下匹配,只有当遇到 IP 类规则(如 IP-CIDR、IP-CIDR6、GEOIP 和 IP-ASN)时才会发起 DNS 解析。因此,在 Mihomo 中,将会触发 DNS 解析的规则放在域名和 URL 匹配规则后面非常重要。[引用来自🦊]

由于最近时间有限,先把我自己用的规则贴上来,后续有时间在嚼碎了读看看。

十分推荐大家先去看看狐狐的规则仓库以及文章再来写,会发现豁然开朗!

# 规则参数 [每12小时更新一次订阅规则,更新规则时使用(🎯 节点选择)策略]
RuleSet_classical: &RuleSet_classical {type: http, behavior: classical, interval: 43200, format: text, proxy: 🎯 节点选择}
RuleSet_domain: &RuleSet_domain {type: http, behavior: domain, interval: 43200, format: text, proxy: 🎯 节点选择}
RuleSet_ipcidr: &RuleSet_ipcidr {type: http, behavior: ipcidr, interval: 43200, format: text, proxy: 🎯 节点选择}

# 订阅规则
rule-providers:
  reject_non_ip_no_drop:
    <<: *RuleSet_classical
    url: 'https://ruleset.skk.moe/Clash/non_ip/reject-no-drop.txt'
    path: './rule_set/sukkaw_ruleset/reject_non_ip_no_drop.txt'

  reject_non_ip_drop:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/non_ip/reject-drop.txt
    path: ./rule_set/sukkaw_ruleset/reject_non_ip_drop.txt

  reject_non_ip:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/non_ip/reject.txt
    path: ./rule_set/sukkaw_ruleset/reject_non_ip.txt

  reject_domainset:
    <<: *RuleSet_domain
    url: https://ruleset.skk.moe/Clash/domainset/reject.txt
    path: ./rule_set/sukkaw_ruleset/reject_domainset.txt

  reject_ip:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/ip/reject.txt
    path: ./rule_set/sukkaw_ruleset/reject_ip.txt

  cdn_domainset:
    <<: *RuleSet_domain
    url: https://ruleset.skk.moe/Clash/domainset/cdn.txt
    path: ./rule_set/sukkaw_ruleset/cdn_domainset.txt

  cdn_non_ip:
    <<: *RuleSet_domain
    url: https://ruleset.skk.moe/Clash/non_ip/cdn.txt
    path: ./rule_set/sukkaw_ruleset/cdn_non_ip.txt

  # 所有流媒体(包括上述所有流媒体)
  stream_non_ip:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/non_ip/stream.txt
    path: ./rule_set/sukkaw_ruleset/stream_non_ip.txt
  stream_ip:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/ip/stream.txt
    path: ./rule_set/sukkaw_ruleset/stream_ip.txt

  ai_non_ip:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/non_ip/ai.txt
    path: ./rule_set/sukkaw_ruleset/ai_non_ip.txt

  telegram_non_ip:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/non_ip/telegram.txt
    path: ./rule_set/sukkaw_ruleset/telegram_non_ip.txt

  telegram_ip:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/ip/telegram.txt
    path: ./rule_set/sukkaw_ruleset/telegram_ip.txt

  apple_cdn:
    <<: *RuleSet_domain
    url: https://ruleset.skk.moe/Clash/domainset/apple_cdn.txt
    path: ./rule_set/sukkaw_ruleset/apple_cdn.txt

  apple_services:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/non_ip/apple_services.txt
    path: ./rule_set/sukkaw_ruleset/apple_services.txt

  apple_cn_non_ip:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/non_ip/apple_cn.txt
    path: ./rule_set/sukkaw_ruleset/apple_cn_non_ip.txt
  
  microsoft_cdn_non_ip:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/non_ip/microsoft_cdn.txt
    path: ./rule_set/sukkaw_ruleset/microsoft_cdn_non_ip.txt

  microsoft_non_ip:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/non_ip/microsoft.txt
    path: ./rule_set/sukkaw_ruleset/microsoft_non_ip.txt
  
  # 软件更新、操作系统等大文件下载
  download_domainset:
    <<: *RuleSet_domain
    url: https://ruleset.skk.moe/Clash/domainset/download.txt
    path: ./rule_set/sukkaw_ruleset/download_domainset.txt
  download_non_ip:
    <<: *RuleSet_domain
    url: https://ruleset.skk.moe/Clash/non_ip/download.txt
    path: ./rule_set/sukkaw_ruleset/download_non_ip.txt

  # 内网域名和局域网 IP
  lan_non_ip:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/non_ip/lan.txt
    path: ./rule_set/sukkaw_ruleset/lan_non_ip.txt
  lan_ip:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/ip/lan.txt
    path: ./rule_set/sukkaw_ruleset/lan_ip.txt
  
  domestic_non_ip:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/non_ip/domestic.txt
    path: ./rule_set/sukkaw_ruleset/domestic_non_ip.txt
  direct_non_ip:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/non_ip/direct.txt
    path: ./rule_set/sukkaw_ruleset/direct_non_ip.txt
  global_non_ip:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/non_ip/global.txt
    path: ./rule_set/sukkaw_ruleset/global_non_ip.txt
  domestic_ip:
    <<: *RuleSet_classical
    url: https://ruleset.skk.moe/Clash/ip/domestic.txt
    path: ./rule_set/sukkaw_ruleset/domestic_ip.txt

  china_ip:
    <<: *RuleSet_ipcidr
    url: https://ruleset.skk.moe/Clash/ip/china_ip.txt
    path: ./rule_set/sukkaw_ruleset/china_ip.txt

# 分流规则
rules:
  ### 非 IP 类规则
  - RULE-SET,reject_non_ip,REJECT
  - RULE-SET,reject_domainset,REJECT
  - RULE-SET,reject_non_ip_drop,REJECT-DROP
  - RULE-SET,reject_non_ip_no_drop,REJECT
  - RULE-SET,cdn_domainset,🎯 节点选择
  - RULE-SET,cdn_non_ip,🎯 节点选择
  - RULE-SET,stream_non_ip,🇺🇸 - 自动选择
  - RULE-SET,telegram_non_ip,✈️ 电报信息
  - RULE-SET,apple_cdn,DIRECT
  - RULE-SET,download_domainset,🎯 节点选择
  - RULE-SET,download_non_ip,🎯 节点选择
  - RULE-SET,microsoft_cdn_non_ip,DIRECT
  - RULE-SET,apple_cn_non_ip,DIRECT  
  - RULE-SET,apple_services,🍎 苹果服务
  - RULE-SET,microsoft_non_ip,Ⓜ️ 微软服务
  - RULE-SET,ai_non_ip,🤖 AIGC
  - RULE-SET,global_non_ip,🎯 节点选择
  - RULE-SET,domestic_non_ip,DIRECT
  - RULE-SET,direct_non_ip,DIRECT
  - RULE-SET,lan_non_ip,DIRECT

  ### IP 类规则
  - RULE-SET,reject_ip,REJECT
  - RULE-SET,telegram_ip,✈️ 电报信息
  - RULE-SET,stream_ip,🇺🇸 - 自动选择
  - RULE-SET,lan_ip,DIRECT
  - RULE-SET,domestic_ip,DIRECT
  - RULE-SET,china_ip,DIRECT
  - MATCH,🎯 节点选择

6. 配置仓库

自己目前在用的且更新的配置仓库 Mihomo 欢迎点个star~

7. 参考

狐狐🦊

Rabbit-Spec

metacubex

8. 鸣谢

狐狐🦊

以及愿意耐心给予我帮助理解的各位!

9. 推荐可视化客户端

Mihomo-Party 我自己Windows端本来使用的是裸核,不过近期也是换成mihomoparty了 推荐大家使用下

结合一下我的这篇文章看 Mihomo Party 覆写