Shadowrocket 完全配置指南:从入门到精通的 iOS 网络代理工具深度解析
工具定位与核心特性
Shadowrocket(俗称"小火箭")是 iOS 平台最成熟的网络代理客户端之一,基于 Shadowsocks、ShadowsocksR、VMess、Trojan 等协议架构,与其他客户端相比,其核心优势在于:
- 完整的规则系统:支持 DOMAIN、IP-CIDR、GEOIP 等多维度分流
- 脚本与重写能力:支持 JavaScript 脚本和 URL Rewrite
- MitM 解密功能:可拦截并修改 HTTPS 流量(用于去广告等)
- 模块化配置:支持导入外部规则集和配置片段
注意:该应用为付费软件($2.99),需美区/外区 Apple ID 下载。
初始配置与节点管理
1 节点添加的三种范式
方式 A:订阅链接导入(推荐)
- 首页点击右上角 → 选择
Subscribe(订阅) - 粘贴服务商提供的订阅 URL
- 关键设置:开启「自动更新」并设置更新间隔(建议 24 小时)
- 高级选项:可设置订阅别名和自定义 User-Agent 防止被识别
方式 B:手动单节点配置 适用于自建服务器或调试场景:
- Shadowsocks: 需填写服务器地址、端口、密码、加密方法(推荐 AEAD 系列如
aes-256-gcm) - VMess: 需填写 UUID、AlterID(新版建议填 0)、传输协议(TCP/WebSocket/gRPC)
- Trojan: 注意 TLS 设置中的 SNI(服务器名称指示)必须与证书域名一致
方式 C:二维码扫描 支持识别标准 URI 格式的二维码,但需注意部分特殊字符(如 后的备注信息)可能被截断。
2 节点健康检查与排序
- 在「节点列表」左滑可测试延迟(ICMP Ping)
- 建议开启「按延迟排序」功能,自动将低延迟节点置顶
- 重要:Ping 测试仅反映网络连通性,不代表实际传输速度
代理模式与路由策略
1 三种基础工作模式
| 模式 | 适用场景 | 流量特征 |
|---|---|---|
| 全局代理 | 全流量翻墙 | 所有连接经代理服务器 |
| 直连模式 | 仅测试或临时关闭 | 直接连接,不经过代理 |
| 配置模式 | 日常使用 | 基于规则智能分流 |
2 规则系统深度配置
规则优先级逻辑(从高到低):
- 用户自定义规则(最优先)
- 订阅提供的规则
- 内置 GEOIP 数据库
- 默认 Final 规则(兜底)
推荐规则结构(在「配置」→「编辑」→「规则」中设置):
IP-CIDR, 10.0.0.0/8, DIRECT
# 国内域名直连(使用 GEOIP 或域名列表)
GEOIP, CN, DIRECT
# 广告拦截(可选)
DOMAIN-SUFFIX, googleadservices.com, REJECT
# 代理规则(按需求细分)
DOMAIN-SUFFIX, youtube.com, PROXY
DOMAIN-SUFFIX, openai.com, PROXY
# 兜底规则
FINAL, DIRECT # 或 PROXY,根据需求
高级技巧:使用 DOMAIN-KEYWORD 进行模糊匹配(如 google 匹配所有含 google 的域名),但需注意可能误杀(如 google.cn 被匹配到代理)。
DNS 与网络层优化
1 DNS 配置策略
进入「设置」→「DNS」:
- DoH/DoT 设置:建议启用 DNS over HTTPS(如
https://dns.google/dns-query或https://1.1.1.1/dns-query)防止 DNS 污染 - 备用 DNS:可设置
8.8.8, 1.1.1.1作为 fallback - 本地 DNS 映射:在「Hosts」中添加内网域名解析(如 NAS 本地域名)
2 传输层优化
- TCP Fast Open:开启可减少 TCP 握手延迟(需服务器支持)
- 多路复用 (Mux):VMess/VLESS 协议建议开启,减少 TCP 连接数,提升并发性能
- UDP 转发:游戏或视频通话场景必须开启,但需注意部分节点 UDP 被限速
高级功能:重写、脚本与 MitM
1 URL Rewrite(重写)
用于修改 HTTP 请求/响应,常见用途:
- 去广告:将广告域名重写到本地
0.0.1 - URL 跳转:强制 HTTP 转 HTTPS
- API 修改:修改 App 请求参数(需配合脚本)
配置示例:
# 格式:正则匹配 重写目标 类型(302/307/reject)
^https?://example.com/ad.js https://localhost/blank.js reject
2 JavaScript 脚本
支持基于 $request 和 $response 的完整脚本处理:
- 应用场景:解锁会员、去除水印、自定义 API 响应
- 调试方法:使用
console.log()输出到 Shadowrocket 日志查看
3 MitM(中间人攻击配置)
用于解密 HTTPS 流量(去广告、抓包必需):
- 安装证书:「设置」→「证书」→「生成新的 CA 证书」→「安装证书」
- 关键步骤:必须到 iOS 设置 → 通用 → 关于本机 → 证书信任设置 → 开启 Shadowrocket 证书信任
- 在「解密」设置中添加需要解密的域名(如
*.googlevideo.com用于去 YouTube 广告)
安全警告:MitM 会降低安全性,仅信任来源明确的证书,不要在银行类 App 上启用。
分流策略实战配置
1 国内外分流(GFWList 方案)
导入社区维护的规则集(如 ConnersHua 的 DivineEngine 规则):
- 下载
.conf配置文件到 iCloud - Shadowrocket 中选择「配置」→「导入」
- 在「代理分组」中设置:
- 自动选择(URL-Test):自动测速选择最快节点
- 故障转移(Fallback):主节点失效时自动切换备用
- 负载均衡(Load-Balance):多节点轮询分散压力
2 流媒体分流(解锁特定区域)
针对 Netflix、Disney+ 等需要特定国家 IP 的服务:
DOMAIN-SUFFIX, netflix.com, 美国节点
DOMAIN-SUFFIX, disneyplus.com, 新加坡节点
GEOIP, NETFLIX, 美国节点
3 国内加速(绕过局域网)
确保以下域名/IP 走直连:
- 银行类:
icbc.com.cn,bankcomm.com - 校园网/公司内网:自定义 IP 段
- 国内 CDN:
*alicdn.com,*qpic.cn
故障诊断与性能调优
1 连接问题排查流程
- 检查节点状态:测试节点延迟,确认非节点本身故障
- 查看日志:「设置」→「日志」查看具体错误(如
SSL handshake failed通常是证书问题) - DNS 测试:尝试切换 DNS 服务器(如从 8.8.8.8 改为 223.5.5.5)
- 协议兼容性:部分网络会阻断特定端口或协议(如 443 端口非 TLS 流量被重置)
2 速度优化 checklist
- [ ] 开启「IPv6 优先」(如果网络支持)
- [ ] 调整「并发连接数」(默认 5,可尝试 8-10)
- [ ] 启用「TCP 快速打开」
- [ ] 检查是否开启「按域名分流」(比按 IP 分流更快,但可能不够精确)
- [ ] 关闭「日志记录」(减少磁盘 I/O)
3 耗电与后台优化
- 后台刷新:建议关闭 Shadowrocket 的后台刷新,通过「设置」→「通用」→「后台 App 刷新」管理
- VPN 常驻:iOS 会自动管理 VPN 进程,无需担心持续耗电问题
- Widget 使用:添加小组件到通知中心,可快速切换节点而无需打开 App
安全与隐私最佳实践
1 节点选择安全建议
- 避免使用免费节点:存在流量劫持、中间人攻击风险
- 自建服务器建议:使用最新版 Xray-core 或 Sing-box,及时更新防止漏洞
- TLS 指纹:确保客户端 TLS 指纹与常见浏览器一致(Shadowrocket 已做伪装)
2 隐私保护措施
- 定期清理日志:「设置」→「日志」→「清除」
- 关闭崩溃报告:iOS 设置 → 隐私 → 分析与改进 → 关闭「共享 iPhone 分析」
- DNS 泄漏测试:访问
dnsleaktest.com确认 DNS 请求走代理隧道
3 企业环境注意事项
- 部分企业 MDM(移动设备管理)会限制 VPN 配置
- 如使用公司 Wi-Fi,建议开启「代理旁路」功能,将内网域名排除在代理之外
配置文件备份与迁移
导出配置:
- 长按配置文件 → 「导出」→ 生成
.conf文件(包含节点、规则、脚本) - 通过 AirDrop 或邮件备份到电脑
跨设备迁移:
- 使用 iCloud 同步(需开启 iCloud Drive)
- 手动复制配置文件的 URL 编码内容到新设备导入
常见问题 FAQ
Q: 为什么开启 Shadowrocket 后部分国内 App 变慢? A: 检查规则配置,确保国内域名走 DIRECT,且 DNS 设置使用了国内 DNS(如 223.5.5.5)作为本地 DNS。
Q: 如何更新订阅但保留自定义规则? A: 在「订阅」设置中开启「不覆盖用户配置」,或手动编辑配置文件,将自定义规则放在订阅规则之前。
Q: 支持哪些协议? A: 完整支持 Shadowsocks (含插件)、ShadowsocksR、VMess、VLESS、Trojan、Hysteria、Tuic 等,不支持 Surge 的专属协议。
Q: 与 Surge/Quantumult X 的区别? A: Shadowrocket 更轻量,配置简单,适合入门;Surge 功能最全但价格昂贵;Quantumult X 脚本能力最强但学习曲线陡峭。
Shadowrocket 作为 iOS 生态中平衡了易用性与功能深度的工具,其核心价值在于精细化的流量控制,建议用户从基础代理模式开始,逐步探索规则分流和脚本功能,最终构建符合个人使用习惯的网络环境。任何代理工具都只是隐私保护的一环,配合 HTTPS 优先、密码管理器和系统更新,才能构建完整的数字安全防线。