Shadowrocket 按需连接 (On Demand) 原理与应用
#iOS#按需连接#路由规则
阅读需 4 分钟||
在 Shadowrocket 的设置中,有一个名为 按需连接 (On Demand) 的选项。了解其原理,可以帮助你在不手动干预开关的情况下,实现自动化的网络代理体验。
1. 按需连接机制解析
按需连接是 iOS 系统原生提供的一种网络扩展特性。 当它开启时,iOS 系统会在后台监听网络请求。一旦你试图访问被定义在按需规则中的域名(或匹配了某个设定的网络环境,如特定的 Wi-Fi 或蜂窝网络),iOS 系统就会自动唤醒并建立对应的 VPN 隧道,而无需你去应用里手动点击“开启”按钮。
注意区分“建立隧道”与“代理分流”:
- 按需连接 (On Demand) 决定的是“何时建立 VPN 隧道”。
- 隧道建立后,具体请求是直连还是走代理节点,依然由 Shadowrocket 内部的 路由规则 (Routing Rules) 来决定。
2. 配置与使用注意事项
进入 Shadowrocket -> 设置 (Settings) -> 按需连接 (On Demand),可以开启该功能并为“蜂窝网络”和“Wi-Fi”分别设置行为(例如遇到所有网络都自动连接)。
- 副作用提醒:开启按需连接后,如果你在 iOS 系统的“设置 -> VPN”中手动断开连接,系统可能会根据当前的网络环境和配置尝试重新建立隧道,但由于 iOS 的严格系统休眠限制,这无法保证 100% 立即重连成功。。若想彻底关闭代理,必须先在小火箭应用内关闭该功能。
3. 配合分流规则使用
为了避免国内应用的流量无端经过代理核心,你应该在 配置 (Config) 模式下使用完善的规则集。若需要单独为某个应用设置直连,可以在小火箭中添加 DOMAIN-SUFFIX(域名后缀)规则,并将策略指向 DIRECT。