Files
ruleset/config/stash/stash-config-wiki.MD
T

4.6 KiB
Raw Blame History

分清 4 个容易混淆字段(Stash/mihomo

表格

参数 干什么用
defaultnameserver 解析 DoH/DoT DNS 服务器自身域名(引导启动)GitHub
proxyservernameserver 只解析代理节点 server 域名,直连出站Stash
nameserver 用户正常上网,网站域名的主 DNS
nameserverpolicy 指定某些域名 /geosite 强制用某组 DNS

proxyservernameserver

   `proxyservernameserver` 只负责ssr.ee解析代理节点本身的域名,
   不处理日常访问域名解析。

nameserver-policy:

'+.ssr.ee': ['system', '223.5.5.5']
'+.sswiwi.com': ['system', '223.5.5.5']
'+.oracle.com': ['system', '223.5.5.5']
'geosite:apple@cn': ['system', '223.5.5.5']
'geosite:cn': ['system', '223.5.5.5']
'geosite:apple': ['1.1.1.1', '8.8.8.8']
'geosite:geolocation-!cn': ['1.1.1.1', '8.8.8.8']
优先级上至下,geosite单独一行,dns不能加#节点,不支持rule-set
Stash 会**并发请求 policy 里全部 DNS 上游**1.1.1.1 和 8.8.8.8 同时走代理并发查询,取最快返回结果

字典的 key 没有从上到下的匹配优先级,**不是写在前面就优先**。
内核内部匹配优先级固定:
`精确域名` > `通配符 +.shturl.` > **geosite 集合(所有 geosite 之间不分先后)**

### 总结关键点
1. `nameserverpolicy` 是字典,**geosite 之间调换书写顺序不能控制优先级**。
2. 想要强制某一类域名优先,用**通配符 `+.shturl.`**,它优先级高于全部 geosite 集合。
3. `geosite:apple`集合里很多域名同时属于`geolocation!cn`,只写 geosite 会出现解析策略不确定。

nameserver语法写法

nameserver:
  - '1.1.1.1#节点选择'   只能在这里加#节点
  - '8.8.8.8#节点选择'   只能在这里加#节点

default-nameserver:

['system','223.5.5.5']  dns模块都支持写system

proxies:语法有效性

proxies:
  - {name: "🟢 直连", type: direct, udp: true, ip-version: ipv4}

YAML 行内对象语法合法,Stash 可以识别加载

关键点说明

  1. type: direct:Direct 直连节点,流量直接本地出站,不经过任何代理服务器。
  2. udp: true:开启 UDP 支持,DNS、QUIC 流量允许走这个直连节点。
  3. ipversion: ipv4:强制只用 IPv4 出站,不使用 IPv6。

小坑

  • direct 节点没有 server、port 字段,本身就不需要填写,direct 类型特殊。
  • 图标 emoji 🟢 Stash 完全支持显示。
  • 你定义完之后,就可以在 proxy‑groups 里面引用 🟢 直连 这个名字。

proxygroups 使用示例

proxy-groups:
  - name: "节点选择"
    type: select
    proxies:
      - "🟢 直连"
      - 你的其他节点

等价展开写法(方便阅读,效果完全一样)

proxies:
  - name: "🟢 直连"
    type: direct
    udp: true
    ip-version: ipv4

⚠️重要提醒

这个自定义🟢 直连和内核内置 DIRECT 不是同一个东西:

  • 内置常量 DIRECTrules 里写- GEOSITE,cn,DIRECT,调用内核内置直连。
  • 你手动新增的🟢 直连是一个自定义代理项,只能在 proxy‑groups 里面选择使用;不能直接写在 rules 里面rules 不识别这个自定义名字。

rules 分流只能用系统保留字 DIRECT,不要写🟢 直连,会匹配失败。 如果想让分流使用你这个自定义直连节点,就把它放进 proxy‑groupsrules 指向组名。

小结:

  • proxies:块里定义:有效
  • 在 proxygroups 选择使用:有效
  • 在 rules 直接写🟢 直连无效,必须用保留字DIRECT

fakeipfilter📌关键区分表

表格

项目 原版 Mihomo (Android/Linux/Windows) StashiOS
blacklist 模式下写 - ruleset:xxx 原生支持 不生效,被裁剪
blacklist 模式下写 - geosite:xxx 支持 支持
fakeipfiltermode: rule 完整支持 内核存在,但官方 Wiki 不记载,属于继承特性
rule 模式语法 RULESET,xxx,realip 原生支持 可以用,但文档无记录

2、规则模式 fakeipfiltermode: rule

完整规则语法,和外层rules:语法一致,自上而下匹配,**每条末尾必须写动作 fakeip / realip**GitHub。 完整支持:GEOSITERULESETDOMAINMATCH

dns:
  enhanced-mode: fake-ip
  fake-ip-filter-mode: rule
  fake-ip-filter:
    - '*.lan,real-ip'
    - 'GEOSITE,private,real-ip'
    - 'RULESET,salem@cn,realip'
    - 'MATCH,fakeip'