为什么要分流
全部走代理时,微信、网银、国内视频也会出国一圈,又慢又容易出验证码。规则把「不用代理的」留在直连,只让需要的域名去节点。
这是 Shadowrocket 相对「一键全局 VPN」的主要差别。产品定位见 是什么,开关和测速见 教程。
怎么匹配
规则从上往下看,命中第一条就停。所以更具体的写在前面,兜底写在最后。
策略常见三种:DIRECT 不经节点;PROXY 发到当前选中的服务器;REJECT 丢掉请求。REJECT 不要随便加在常用域名上,否则会表现为「打不开」却不是节点问题。
常用关键字
| 类型 | 含义 | 例子 |
|---|---|---|
| DOMAIN | 主机名完全一致 | DOMAIN,www.example.com,PROXY |
| DOMAIN-SUFFIX | 后缀匹配,含子域 | DOMAIN-SUFFIX,google.com,PROXY |
| DOMAIN-KEYWORD | 域名里包含这段文字 | DOMAIN-KEYWORD,github,PROXY |
| IP-CIDR | 按 IP 段 | IP-CIDR,172.16.0.0/12,DIRECT |
| GEOIP | 按地理位置库,常用 CN | GEOIP,CN,DIRECT |
| FINAL | 前面都没命中时的兜底 | FINAL,PROXY |
部分版本还支持按 App 分流:指定某个应用始终直连或始终代理。规则文件和节点一样存在本机。
示例
下面不是默认配置,只说明顺序。Apple 与国内 IP 直连,Google / GitHub 走代理,其余也走代理:
DOMAIN-SUFFIX,apple.com,DIRECT
DOMAIN-SUFFIX,icloud.com,DIRECT
DOMAIN-SUFFIX,google.com,PROXY
DOMAIN-KEYWORD,github,PROXY
GEOIP,CN,DIRECT
FINAL,PROXY
GEOIP,CN,DIRECT 写在 FINAL 之前,国内 IP 才不会被兜底送去代理。若某国外站点被误判成直连,把更具体的 DOMAIN-SUFFIX 写到 GEOIP 上面。
也可以导入规则订阅,让列表由别人维护。来源要自己甄别;规则订阅和节点订阅是两件事,不要贴错栏。
和全局模式
主界面常见 Config / 规则、Proxy / 全局、Direct / 直连。日常用规则。排查时开全局:全局能打开、规则不能,就是规则把站点判错了,回来改本页这些行,而不是先换节点。
全局也不能打开,按 故障排查 查节点、时间和 VPN 许可。
规则还没开始用?
回教程
先保证订阅有节点、开关能连上,再调分流。