在 Shadowrocket(小火箭)中设置拒绝连接名单(即黑名单/阻断规则),主要用于屏蔽广告、追踪域名或特定网站,以下是详细设置方法:
通过规则配置(推荐)
文本编辑方式
在配置文件的 [Rule] 部分添加拒绝规则:
[Rule]DOMAIN,example.com,REJECT # 匹配域名及其子域名(最常用) DOMAIN-SUFFIX,google-analytics.com,REJECT DOMAIN-SUFFIX,doubleclick.net,REJECT # 匹配域名关键词 DOMAIN-KEYWORD,adservice,REJECT # 拒绝特定 IP 或 IP 段 IP-CIDR,127.0.0.1/32,REJECT IP-CIDR,192.168.1.100/32,REJECT,no-resolve # 使用规则集(推荐,适合大量规则) RULE-SET,https://raw.githubusercontent.com/Loyalsoldier/surge-rules/release/reject.txt,REJECT
App 内操作路径
- 打开 Shadowrocket → 配置(底部)
- 点击当前使用的配置右侧的 "i" 图标
- 选择 编辑配置 → 规则
- 点击右上角 添加规则:
- 类型:选择
DOMAIN-SUFFIX或DOMAIN - 值:填写要屏蔽的域名(如
baidu.com) - 策略:选择
REJECT或REJECT-TINYGIF - 保存
- 类型:选择
使用模块(Module)- 适合新手
如果不想手动添加大量规则,可以加载现成的广告拦截模块:
- 配置 → 模块 → 安装新模块
- 输入模块 URL(:
https://raw.githubusercontent.com/blackmatrix7/ios_rule_script/master/script/Advertising/Advertising_MitM.sgmodule - 开启模块开关即可自动屏蔽常见广告域名
关键参数说明
| 策略类型 | 说明 | 适用场景 |
|---|---|---|
| REJECT | 直接断开连接 | 一般屏蔽 |
| REJECT-DROP | 静默丢弃(不返回错误) | 防止应用反复重试 |
| REJECT-TINYGIF | 返回 1x1 像素图片 | 网页广告(减少页面错误显示) |
规则优先级(重要)
Shadowrocket 自上而下匹配,建议按以下顺序排列:
[Rule] # 1. 优先放需要直连的(如局域网) IP-CIDR,192.168.0.0/16,DIRECT # 2. 拒绝名单(广告/追踪) DOMAIN-SUFFIX,googleads.g.doubleclick.net,REJECT DOMAIN-KEYWORD,umeng,REJECT # 3. 代理规则 DOMAIN-SUFFIX,google.com,PROXY DOMAIN-SUFFIX,github.com,PROXY # 4. 兜底规则 GEOIP,CN,DIRECT FINAL,PROXY
实用示例:屏蔽常见追踪
# 统计与追踪 DOMAIN-SUFFIX,google-analytics.com,REJECT DOMAIN-SUFFIX,googletagmanager.com,REJECT DOMAIN-SUFFIX,facebook.com,REJECT DOMAIN-SUFFIX,crashlytics.com,REJECT # 国内广告 DOMAIN-SUFFIX,mob.com,REJECT DOMAIN-SUFFIX,umeng.com,REJECT DOMAIN-SUFFIX,umengcloud.com,REJECT
注意事项
- HTTPS 阻断:对于 HTTPS 网站,REJECT 可能会显示证书错误,这是正常现象
- 应用兼容性:某些应用检测到阻断可能会闪退,建议改用
REJECT-TINYGIF - 性能影响:规则过多(>5000 条)可能影响连接速度,建议使用规则集(RULE-SET)而非逐条列出
需要屏蔽特定 App 的服务器?建议先开启日志(设置 → 日志记录 → 启用),查看该 App 连接的域名,再针对性添加 REJECT 规则。