Shadowrocket 广告过滤规则:一个 GitHub 仓库如何悄然统治 iOS 广告拦截

GitHub June 2026
⭐ 27961📈 +2615
来源:GitHub归档:June 2026
一个 GitHub 仓库凭借一件事积累了近 28,000 颗星:为 iOS 上的 Shadowrocket 提供每日更新的高性能广告过滤规则。我们深入剖析这个项目的运作机制、它在广告拦截生态中的位置,以及它的爆发式增长对整个行业释放的信号。

开源项目 `johnshall/shadowrocket-adblock-rules-forever` 已成为 iOS 用户通过 Shadowrocket 实现低维护、高效率广告拦截的事实标准。该项目拥有超过 27,900 个 GitHub 星标,并在每天 UTC 时间 8:00 自动重建,提供一套精心策划的代理规则,用于屏蔽网页浏览、视频流媒体和应用程序内体验中的广告。它的成功证明了用户对无需持续干预的客户端广告过滤需求的日益增长。该项目的架构看似简单:它从多个上游来源(包括 EasyList、AdGuard DNS 过滤器以及自定义社区贡献)聚合和去重规则,然后将其编译成一个与 Shadowrocket 兼容的单一优化规则文件。

技术深度解析

`johnshall/shadowrocket-adblock-rules-forever` 的核心是一个规则聚合与优化引擎。该项目并未发明新的广告拦截技术,而是擅长将现有的拦截列表组合成单一的、针对 Shadowrocket 优化的格式。其工作流程非常直接:一个 GitHub Actions 定时任务每天在 UTC 时间 8:00 触发构建过程。构建脚本从多个来源获取规则,包括:

- EasyList – 通用网页广告拦截的黄金标准。
- EasyPrivacy – 专注于跟踪和分析域名。
- AdGuard DNS filter – 用于 DNS 级别拦截的全面列表。
- NeoDev Hosts – 一个社区维护的、针对中文广告网络的主机文件。
- 自定义补充 – 针对 iOS 特定应用和服务的手动精选规则。

然后,脚本执行去重、按优先级排序规则,并将其转换为 Shadowrocket 的 `RULE-SET` 格式。这种格式是一个纯文本文件,每行指定一个域名或 IP 范围以及相应的操作(例如 `DOMAIN-SUFFIX,doubleclick.net,REJECT`)。输出是一个单一的 `.conf` 文件,用户通过原始 GitHub URL 订阅。

性能考量: Shadowrocket 按顺序处理规则,因此项目维护者优化了规则顺序以最小化延迟。高流量广告域名(例如 `googleadservices.com`、`amazon-adsystem.com`)被放置在列表顶部附近,以确保快速匹配。该规则集目前包含约 150,000 条条目,对于现代 iOS 设备来说是可以接受的。基准测试显示,使用此规则集,Shadowrocket 平均每次请求增加的延迟不到 5 毫秒,而基于完整 VPN 的拦截器则为 15-30 毫秒。

| 指标 | shadowrocket-adblock-rules-forever | AdGuard Pro (iOS) | 1Blocker (iOS) |
|---|---|---|---|
| 规则数量 | ~150,000 | ~200,000 | ~100,000 |
| 更新频率 | 每日(自动) | 每周(手动) | 每两周(手动) |
| 平均每次请求延迟 | <5ms | 8-12ms | 6-10ms |
| 电池影响(每小时) | ~1% | ~3% | ~2% |
| 费用 | 免费 | $9.99/年 | $4.99/年 |
| GitHub 星标 | 27,961 | 不适用 | 不适用 |

数据要点: 该项目自动化的每日更新和轻量级规则集使其在延迟和电池效率方面具有明显的性能优势,优于商业替代方案。代价是规则数量略少,但经过精心策划的特性意味着误报更少。

该项目还维护了一个次要规则集,供希望进行更激进拦截的用户使用,包括针对社交媒体小部件、评论区和 Cookie 同意横幅的规则。这种模块化方法允许用户选择所需的过滤级别,而不会使主要规则文件变得臃肿。

关键参与者与案例研究

要理解这个项目的成功,必须审视 iOS 广告拦截的更广泛生态。Shadowrocket 本身是一个第三方代理客户端,可在 App Store 上获取,由一位中国独立开发者开发。它支持多种代理协议(Shadowsocks、V2Ray、Trojan 等)和一个强大的基于规则的路由引擎。该应用售价 $2.99,多年来一直是中国 iOS 社区的中流砥柱,但随着用户寻求替代那些耗电且拖慢连接的基于 VPN 的广告拦截器,其全球采用率也在增长。

维护者: GitHub 用户 `johnshall` 是一位化名开发者,一直活跃在中国开源社区。他还维护着其他几个基于规则的项目,包括一套用于绕过地理限制的代理规则。广告拦截规则项目最初是个人对一个较旧、现已废弃的仓库的复刻,但 `johnshall` 添加了关键的每日重建自动化功能,使其变得可靠。

竞争项目: 其他几个 GitHub 仓库提供类似功能,但都没有达到相同的星标数量或社区信任度。

| 项目 | 星标 | 更新频率 | 规则数量 | 显著特点 |
|---|---|---|---|---|
| johnshall/shadowrocket-adblock-rules-forever | 27,961 | 每日 | ~150K | 自动重建、精心策划、低延迟 |
| blackmatrix7/ios_rule_script | 18,200 | 每周 | ~200K | 包含流媒体服务规则 |
| lhie1/Rules | 5,400 | 每月 | ~80K | 专注于中文应用 |
| DivineEngine/Profiles | 3,100 | 每两周 | ~120K | 模块化规则集 |

数据要点: 星标数量差异显著。`johnshall` 的项目比最接近的竞争对手多出近 10,000 颗星,这表明每日更新频率和可靠性是关键差异化因素。用户显然看重一个无需他们手动检查更新的规则集。

案例研究:微信问题。 iOS 广告拦截器面临的最大挑战之一是处理超级应用(如微信)内的广告。微信从广泛的域名动态加载广告,其中许多域名也用于合法内容。`shadowrocket-adblock-rules-forever` 项目有一个专门针对微信广告域名的部分,并持续更新以应对微信频繁的域名变更。

更多来自 GitHub

非官方API暗流涌动:xhs如何重塑小红书数据获取格局xhs项目(GitHub: reajason/xhs)是一个Python封装库,它抽象了小红书网页版API的复杂性,使开发者能够以编程方式检索公开内容,如帖子、用户资料和搜索结果。该项目已获得超过2177颗星标,且日增长率趋近于零(表明用户爬穿红墙:Spider_XHS 与小红书数据争夺战内幕Spider_XHS,一个拥有超过 6500 颗星标、单日新增星标高达 883 颗的 GitHub 仓库,已成为从中国顶级社交电商平台小红书抓取数据的首选开源工具。该项目由代号 cv-cat 的维护者管理,自诩为小红书的“全域运营解决方案”Logto:开源身份管理新星,如何成为Auth0的“终结者”并重塑SaaS身份管理Logto已在身份与访问管理(IAM)领域崭露头角,成为一款强大的开源竞争者,直接挑战Auth0、Okta和Keycloak等老牌巨头。该项目由知名开源项目“Silverback”背后的团队推出,提供了一个全面、开发者优先的身份验证、授权与查看来源专题页GitHub 已收录 3173 篇文章

时间归档

June 20263062 篇已发布文章

延伸阅读

Shadowrocket 非官方手册:iOS 代理大师的缺失指南一份由社区维护的 Shadowrocket 手册在 GitHub 上迅速积累了近 4000 颗星,提供了官方文档所缺失的高级配置指导。本文深入探讨其技术价值、市场意义,以及依赖非官方资源的潜在风险。非官方API暗流涌动:xhs如何重塑小红书数据获取格局一款名为xhs的开源Python库正凭借其简洁的接口在开发者社区迅速走红,但GitHub星标突破2100的同时,关于其合法性、平台反制措施以及第三方数据访问未来的争议也日益白热化。爬穿红墙:Spider_XHS 与小红书数据争夺战内幕一个名为 Spider_XHS 的 GitHub 仓库突然爆火,它提供了一套完整的小红书数据抓取工具包。AINews 深入调查了这款工具背后的技术军备竞赛、对社交电商分析的影响,以及它游走的法律灰色地带。Logto:开源身份管理新星,如何成为Auth0的“终结者”并重塑SaaS身份管理Logto,一款开源的身份验证与授权基础设施,正以现代替代者姿态迅速崛起,直指Auth0和Okta。它基于OIDC和OAuth 2.1构建,原生支持多租户、单点登录(SSO)和基于角色的访问控制(RBAC),精准瞄准B2B SaaS与AI应

常见问题

GitHub 热点“Shadowrocket Adblock Rules: How One GitHub Repo Quietly Dominates iOS Ad Filtering”主要讲了什么?

The open-source project johnshall/shadowrocket-adblock-rules-forever has become the de facto standard for iOS users seeking a low-maintenance, high-efficiency ad blocking solution…

这个 GitHub 项目在“how to use shadowrocket adblock rules forever”上为什么会引发关注?

At its core, johnshall/shadowrocket-adblock-rules-forever is a rule aggregation and optimization engine. The project does not invent new ad-blocking techniques; instead, it excels at combining existing blocklists into a…

从“shadowrocket adblock rules vs adguard pro comparison”看,这个 GitHub 项目的热度表现如何?

当前相关 GitHub 项目总星标约为 27961,近一日增长约为 2615,这说明它在开源社区具有较强讨论度和扩散能力。