Stash怎么开启规则模式?6步设置、验证与排障
简答:大多数情况下不用修改YAML:先导入一份包含rules、策略组和代理定义的配置,确认它已被选中,再在Stash当前版本界面切换为Rule并启动代理。规则模式是否真正生效,还要检查命中的规则、策略组选择和最后的兜底规则;只看到节点或VPN已启动,不能证明分流正确。
定义:Stash规则模式是按照当前配置中的rules、规则集和策略组,为不同连接分别选择代理、直连或其他处理方式的工作模式。
30秒先试:Stash规则模式设置速查
适用范围:已经安装Stash,并准备在iPhone、iPad或macOS上使用Stash/Clash格式配置的用户。本文是第三方使用指南,不代表任何客户端或配置服务的官方页面。不同系统和版本的入口名称可能不同,请以当前版本实际界面为准,优先寻找“配置文件”“首页”“模式”“出站”或同义入口。
| 顺序 | 操作 | 成功标准 | 失败时先看什么 |
|---|---|---|---|
| 1 | 导入Stash或Clash格式配置 | 配置出现在列表中,未显示解析错误 | 链接是否返回配置文件,而不是网页或错误提示 |
| 2 | 选中刚导入的配置 | 它被标记为当前配置 | 是否只是下载成功但没有激活 |
| 3 | 启动Stash并按系统提示授权 | Stash显示运行,系统VPN状态已建立 | 系统VPN权限是否被撤销 |
| 4 | 在当前版本界面选择Rule或“规则” | 当前模式显示为rule/规则 | 配置是否已选中并加载 |
| 5 | 进入策略组,选择节点或代理组 | 代理组显示当前选择 | 规则指向的组是否有可用成员 |
| 6 | 查看连接记录或规则结果 | 能看到目标、命中规则和最终策略 | rules顺序与MATCH兜底是否符合预期 |
Stash文档说明,启用前需要导入Stash/Clash格式配置;配置文件本身使用YAML格式。可先参考Stash快速开始和Stash配置样例。
规则模式、全局模式、直连模式有什么区别
规则模式 Rule:连接按照配置中的规则依次匹配,命中后交给规则指定的代理、代理组、DIRECT或其他策略。它适合日常分流,但不会自动生成规则,也不保证某一类网站必然走某条线路。
全局模式 Global:通常将连接统一交给一个代理策略,适合与规则模式做对照测试,但可能让原本应直连的请求也经过代理。
直连模式 Direct:连接不通过代理策略,适合暂时停用代理或进行对照测试。测试结束后要切回Rule,并恢复原有系统代理或VPN状态。
Stash官方配置样例列出了mode: rule、mode: global和mode: direct三种模式。界面切换是最快的设置方式;YAML中的mode: rule则适合维护本地配置或指定加载后的默认模式。参考配置样例中的模式字段。
完整操作:导入配置、激活Rule并选择节点
第一步:导入配置
- 打开Stash,在当前版本中进入配置管理或配置文件入口。
- 选择URL导入、从链接下载或本地文件导入。按钮名称可能因系统和版本不同而变化。
- 如果使用订阅链接,不要把包含授权信息的链接发给他人,也不要粘贴到公共检测网站。
- 等待配置完成解析,确认它出现在配置列表中。
导入成功不等于配置已经生效。若列表中没有新配置,先检查链接是否完整、返回内容是否为YAML或兼容的配置文件,以及网络请求是否被拦截。
第二步:确认当前配置已激活
- 在配置列表中点击或选择刚导入的配置。
- 回到首页,确认当前显示的配置名称已经切换。
- 如果首页没有策略组或代理信息,返回配置列表检查是否只完成了下载,没有完成选中或加载。
第三步:启动VPN并切换Rule
- 回到首页,启动Stash。
- 首次使用时按iOS、iPadOS或macOS的系统提示允许创建VPN配置。
- 在首页或当前版本提供的模式入口中选择Rule或“规则”。不要把“启动成功”误认为“规则已经正确命中”。
第四步:选择策略组中的节点
规则模式只决定按规则处理连接;如果规则目标是某个代理组,还需要在该组中选择具体节点或可用的下级策略。若规则目标是DIRECT,则直连是预期结果。配置样例中同时展示了代理定义、选择型代理组和rules之间的关系,可参考Stash配置样例。
如何验证规则真的生效
建议固定一个测试目标,每次只修改一个变量,再查看连接结果。不要只根据“节点显示在线”“首页已启动”或一次网页打开成功来判断分流。
- 看当前配置:确认正在使用的配置确实包含
rules:,而不是只有节点信息的简单列表。 - 看规则目标:检查命中的规则最终指向哪个节点、代理组、DIRECT或其他策略。
- 看策略组:如果规则指向代理组,确认组内存在可用成员,并且当前选择符合预期。
- 看规则顺序:规则通常按配置顺序匹配,宽泛规则或过早出现的
MATCH可能先处理请求。 - 看兜底规则:配置末尾常见类似
MATCH,Proxy或MATCH,DIRECT的兜底项,它会处理前面没有命中的连接。
如果使用带HTTP引擎的功能,Stash还提供连接和规则相关的查询接口;普通用户应优先使用应用内的连接记录或规则查看入口,具体界面以当前版本为准。官方接口文档可参考Stash HTTP API。
Stash规则模式不生效:按顺序排查
- 配置未激活:重新进入配置列表,确认目标配置被选中,而不是仅下载到设备。
- VPN未运行:确认Stash开关已开启,并检查系统VPN权限、系统网络状态和其他代理软件是否产生冲突。
- 配置内容不完整:检查配置是否包含
rules、代理定义和策略组。不同提供方返回的内容可能不同,不能把所有订阅链接都视为完整配置。 - 代理组没有有效选择:规则命中代理组后,组内没有可用成员或选择不正确,都可能导致连接失败。
- 规则顺序不合预期:检查是否有宽泛规则、过早的
MATCH或新增规则抢先匹配。 - 兜底策略不符合需求:确认最后的MATCH是指向代理还是DIRECT,再结合连接记录判断是否需要调整。
- 覆写发生冲突:如果启用了多个Override,暂时关闭最近添加的一个,重新应用配置,再逐个恢复。
- 远程更新覆盖修改:如果配置来自托管或订阅,不要把远程文件当作长期编辑文件,优先使用独立Override保存自定义内容。
如果排查涉及企业设备、受管网络或其他代理软件,先遵守设备管理策略,不要关闭证书校验或上传订阅令牌做在线检测。
需要手动设置时:用mode: rule指定默认模式
维护本地YAML配置时,可以在顶层写入:
mode: rule
它表示配置加载时默认使用规则模式,但不会自动补齐rules、rule-providers、代理定义或策略组,也不会替你选择节点。修改前建议备份原文件,修改后重新加载配置;如果加载失败,先撤销最近一次改动。
一个简单的核对顺序是:先确认有代理定义,再确认有策略组,然后确认rules引用了这些策略,最后检查是否存在符合需求的兜底规则。YAML缩进会影响结构,字段名称和层级应以当前Stash文档为准。
为什么优先使用Override,而不是直接修改订阅
远程订阅更新后,直接改动托管配置可能被覆盖。Override用于修改托管或订阅配置的部分字段,适合保存少量自定义规则、模式或策略组调整。
- 只想临时测试:先使用规则查看或短期Override。
- 想长期保留自定义分流:建立单独的
.stoverride文件,并写明用途。 - 想让规则追加到原规则末尾:确认当前版本支持
#!append,避免新规则被插入到前面。 - 启用了多个Override:按启用顺序检查,优先停用最近增加的文件做对照。
Stash官方Override文档说明,多个覆写会按顺序作用;数组默认插入到前面,使用#!append可追加到末尾,但较旧版本可能不支持该写法。具体以当前版本为准,参考Stash Override文档。
常见问题 FAQ
Stash规则模式在哪里设置?
通常在首页或当前版本提供的模式入口中选择Rule或“规则”。如果找不到,先确认配置已选中并已启动;按钮位置和名称可能随系统及版本变化。
选了规则模式,为什么还要选节点?
Rule只决定按规则分流。若命中的规则指向代理组,实际使用哪个节点仍取决于该组的当前选择;若命中DIRECT,则不会使用代理节点。
规则模式会自动让国内直连、其他流量代理吗?
不一定。实际结果取决于当前配置的rules、规则集、策略组和兜底规则,不能只根据网站所在地或节点名称推断。
导入订阅成功但规则不生效怎么办?
按顺序检查:当前配置是否激活、VPN是否运行、配置是否包含rules、策略组是否有可用选择、规则顺序是否正确,以及最后的MATCH兜底是否符合预期。
可以直接修改远程订阅中的rules吗?
不建议把远程订阅当作长期编辑文件。需要保留自定义规则时,优先使用Override,并在重新应用后查看连接记录。
iPhone、iPad和macOS的操作入口完全一样吗?
不能保证完全一样。本文只给出通用判断路径,具体按钮、页面层级和权限提示以当前设备与Stash版本的实际界面为准。
参考资料
- Stash快速开始:导入配置并启用Stash
- Stash配置样例:YAML、mode、代理组与rules示例
- Stash规则类型:规则匹配与规则写法说明
- Stash Override文档:覆写优先级与#!append
- Stash HTTP API:模式、连接与规则查询接口
常见问题
Stash规则模式在哪里设置?
通常在首页或当前版本提供的模式入口中选择Rule或“规则”。如果找不到,先确认配置已选中并已启动;具体入口以当前版本界面为准。
选了规则模式为什么还要选节点?
Rule只负责按规则分流。若规则指向代理组,实际使用哪个节点取决于该组的当前选择;若规则指向DIRECT,则连接会直连。
规则模式会自动让国内直连、其他流量代理吗?
不一定。实际结果取决于rules、规则集、策略组和兜底规则,应通过连接记录或规则查看入口验证。
导入订阅成功但规则不生效怎么办?
依次检查配置是否激活、VPN是否运行、配置是否包含rules、策略组是否有可用选择、规则顺序以及最后的MATCH兜底。
可以直接修改远程订阅中的rules吗?
不建议。需要长期保留自定义规则时,优先使用Override,避免远程更新覆盖本地修改。
iPhone、iPad和macOS的入口完全一样吗?
不能保证完全一样。按钮名称和页面层级可能随系统及版本变化,应以当前设备中的实际界面为准。
相关阅读
参考资料
- Stash快速开始:导入配置并启用Stash(stash.wiki)
- Stash配置样例:YAML、模式、代理组与规则(stash.wiki)
- Stash规则类型(stash.wiki)
- Stash覆写文件(Override)(stash.wiki)
- Stash HTTP API(stash.wiki)