Shadowrocket后台保持活跃的脚本配置方法

本文详解iOS端Shadowrocket(俗称小火箭)的唤醒脚本配置方案,通过自动化脚本实现后台持续连接,有效解决应用切换后代理失效问题,并提供代理组选择、分流规则等核心配置参考。

唤醒脚本解决的问题

使用iOS代理工具时,后台进程常被系统自动终止,导致跨境访问中断,唤醒脚本通过定时任务检测连接状态,在后台被回收前自动重新建立隧道,维持代理服务的持续可用性,该脚本适用于需要长时间稳定连接的场景,如跨境办公、学术资源访问等。

配置步骤

进入脚本编辑界面

打开Shadowrocket → 配置 → 找到对应配置文件 → 编辑 → 脚本 → 添加新脚本。

编写唤醒脚本

[Script]
cron = "*/5 * * * *"  # 每5分钟执行一次
type = http-request
script = "
const isActive = $persistentStore.read('connection_status');
if (isActive !== 'connected') {
    $notification.post('Shadowrocket', '正在恢复代理连接');
    $proxy.reload();
}
"

启用定时任务

保存脚本后,确保cron表达式生效,推荐设置间隔为3-5分钟,过于频繁会消耗电量。

代理组类型选择

代理组配置是分流的核心,常见三种类型:

类型 原理 适用场景
select 手动选择节点 明确知道哪个节点最优
url-test 自动测速选择延迟最低 日常浏览、视频
fallback 优先使用列表中第一个可用节点 追求稳定性

日常使用建议采用select+url-test组合:常用节点设为select,备用节点池用url-test自动切换。

TUN模式与系统代理区别

  • TUN模式:虚拟网卡层接管所有流量,包括UDP数据包、游戏流量,适合需要全流量代理的场景
  • 系统代理:仅处理HTTP/HTTPS请求,兼容性更好但无法代理游戏

iOS端Shadowrocket默认使用TUN模式,可根据应用兼容性在配置中切换。

分流规则写法

rules:
  - DOMAIN-SUFFIX,google.com,Proxy
  - DOMAIN,api.ipify.org,Direct
  - IP-CIDR,10.0.0.0/8,Direct
  - GEOIP,CN,Direct
  - MATCH,Proxy

规则优先级从上到下递减,建议将常用域名放在前面以提升匹配效率。

常见问题

Q1:脚本配置后仍频繁断连

  • 检查cron表达式是否正确保存
  • 确认iOS后台刷新功能已开启
  • 尝试缩短执行间隔至3分钟

Q2:电量消耗明显增加

  • 唤醒脚本会增加后台唤醒次数,属于正常现象
  • 非必要场景可关闭脚本,仅在需要稳定连接时启用

Q3:部分应用无法联网

  • 检查该应用是否被分流规则误判为直连
  • 在GEOIP规则前添加对应DOMAIN规则强制走代理

节点选择建议

稳定可靠的节点是代理体验的基础,建议根据使用场景选择:日常浏览可选普通中转节点,4K视频需高带宽专线,游戏加速则优先低延迟线路,判断节点服务商是否靠谱可观察其是否提供测速、是否支持退款、线路是否稳定无频繁切换。

您可以还会对下面的文章感兴趣: