本文详解Shadowrocket抓包原理、系统代理与TUN模式区别、代理组配置及分流规则,提供Clash配置示例,帮助iOS用户实现流量监控与精准分流。
什么是抓包
抓包(Packet Capture)是通过中间人技术拦截并分析网络请求,用于调试接口、排查故障或优化网络配置,Shadowrocket作为iOS平台代理工具,内置抓包功能,可实时捕获设备流量并支持导出分析。
系统代理与TUN模式的区别
系统代理模式
仅处理HTTP/HTTPS流量,通过本地代理端口转发请求,配置简单,但无法捕获应用直连流量。
# 系统代理配置示例 port: 7890 socks-port: 7891 allow-lan: false mode: rule
TUN模式
创建虚拟网卡接管设备全部流量(包括UDP、游戏数据包),实现更全面的流量控制,适合需要代理所有流量的场景。
# TUN模式配置
tun:
enable: true
stack: system
dns-hijack:
- 8.8.8.8
auto-route: true
选择建议:日常网页浏览用系统代理;游戏或UDP应用需开启TUN模式。
代理组配置详解
代理组用于管理多个节点,实现自动测速与故障转移。
手动选择(select)
proxy-groups:
- name: 手动选择节点
type: select
proxies:
- 香港节点A
- 日本节点B
- 美国节点C
自动测速(url-test)
- name: 自动测速
type: url-test
url: http://www.gstatic.com/generate_204
interval: 300
proxies:
- 香港节点A
- 日本节点B
故障转移(fallback)
- name: 故障转移
type: fallback
url: http://www.gstatic.com/generate_204
interval: 300
proxies:
- 主用节点
- 备用节点
适用场景:日常上网推荐url-test;重要业务使用fallback保障可用性。
分流规则写法
规则类型
| 类型 | 说明 | 示例 |
|---|---|---|
| DOMAIN | 精确域名 | DOMAIN,api.example.com |
| DOMAIN-SUFFIX | 域名后缀 | DOMAIN-SUFFIX,google.com |
| IP-CIDR | IP段 | IP-CIDR,10.0.0.0/8,no-resolve |
| GEOIP | 国家/地区 | GEOIP,CN |
规则优先级
rules: # 直连国内 - GEOIP,CN,DIRECT # 代理海外 - MATCH,Proxy
常见问题FAQ
现象:抓包时部分应用无法抓取
原因:应用使用了证书锁定(Certificate Pinning)或非HTTP协议。
解决方法:开启TUN模式并配合mitmproxy辅助抓包。
现象:节点切换后无法上网
原因:代理组配置错误或节点全部失效。
解决方法:检查代理组proxies列表,确保至少有一个可用节点。
现象:规则生效但速度慢
原因:规则匹配顺序不合理或节点线路不佳。
解决方法:调整规则顺序,将常用规则置顶;使用url-test代理组自动选优。
节点选择建议
不同使用场景对节点要求不同:4K视频需高带宽低丢包线路;游戏需低延迟稳定线路;日常办公推荐均衡型节点,选择服务商时关注其线路稳定性、带宽余量和客服响应速度。
通过合理配置系统代理/TUN模式、代理组及分流规则,可实现iOS设备流量的精细化管控,本站提供多平台网络加速客户端下载,持续更新优质节点订阅信息。