Shadowrocket 的按需连接(On-Demand VPN)是 iOS 系统级功能,可根据网络环境(Wi-Fi 名称、蜂窝数据等)自动开启或关闭代理,无需手动切换。
配置步骤
开启功能
- 打开 Shadowrocket → 点击底部「设置」
- 找到「按需求连接」(On-Demand)
- 开启「启用按需求连接」
添加规则
点击「添加规则」,按需配置以下类型:
| 规则类型 | 说明 | 常用场景 |
|---|---|---|
| Wi-Fi SSID | 指定 Wi-Fi 名称 | 在家自动关闭,外出自动开启 |
| 蜂窝数据 | 移动数据网络 | 使用流量时自动开启代理 |
| 以太网 | 有线网络(iPad 适用) | 特定网络环境控制 |
设置动作
每条规则可选择:
- 连接:满足条件时自动开启 VPN
- 断开:满足条件时自动关闭 VPN
- 忽略:保持当前状态不变
典型配置示例
场景 1:家庭网络免代理,其他自动代理
规则 1: 接口 Wi-Fi, SSID "Home-5G", 动作: 断开
规则 2: 接口 Wi-Fi, SSID "Home-2.4G", 动作: 断开
规则 3: 接口 蜂窝数据, 动作: 连接
规则 4: 接口 Wi-Fi, SSID *, 动作: 连接 (其他所有 Wi-Fi)
场景 2:公司网络特殊处理
规则 1: 接口 Wi-Fi, SSID "Company-Intranet", 动作: 断开 (公司内网直连)
规则 2: 接口 Wi-Fi, SSID "Company-Guest", 动作: 连接 (访客网络走代理)
规则 3: 接口 蜂窝数据, 动作: 连接
重要注意事项
规则优先级
- 规则按从上到下的顺序匹配,一旦匹配成功即停止
- 建议将具体 SSID 放在前面,通用规则(如 通配符)放在最后
系统限制
- 按需连接依赖 iOS 系统 VPN 框架,切换时会有 1-3 秒延迟
- 部分企业级 Wi-Fi(802.1X)可能无法正确识别 SSID
电池与稳定性
- 频繁切换网络(如地铁上)可能导致反复连接,增加耗电
- 建议配合「断开时自动重新连接」设置使用
常见误区:按需连接 vs 分流规则
很多用户混淆了「按需连接」(自动开关 VPN)和「分流规则」(连接后智能路由):
| 功能 | 作用时机 | 效果 |
|---|---|---|
| 按需连接 | VPN 连接前 | 决定是否开启 VPN 隧道 |
| 分流规则 | VPN 连接后 | 决定流量走代理还是直连 |
如果你需要:访问国内网站不代理,国外网站自动代理 → 应配置「规则」(Rules)而非按需连接,保持 VPN 常开,通过规则分流。
故障排查
问题:设置了按需连接但不生效
解决:
- 检查 Shadowrocket 的「设置 → 隧道 → 按需连接」是否开启
- 确认系统设置 → VPN 中,Shadowrocket 配置的「按需连接」开关已打开
- 尝试重启设备(iOS 有时需刷新 VPN 配置)
问题:切换 Wi-Fi 时频繁弹窗
解决:在系统设置 → VPN → Shadowrocket → 按需连接中,将「询问用户」改为「自动连接」。
建议配置:对于大多数用户,建议仅设置家庭 Wi-Fi 自动断开 + 其他网络自动连接,既省电又省心。