# 217heidai/adblockfilters

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/217heidai-adblockfilters).**

7,051 stars · 416 forks · Python · gpl-3.0

## Links

- GitHub: https://github.com/217heidai/adblockfilters
- awesome-repositories: https://awesome-repositories.com/repository/217heidai-adblockfilters.md

## Topics

`adblock` `adguard` `adguardhome` `clash` `dnsmasq` `fiters` `hosts` `invizible` `loon` `mihomo` `personaldnsfilter` `quantumultx` `shadowrocket` `sing-box` `smartdns`

## Description

This project is an adblock filter list aggregator and DNS blocklist generator. It merges multiple blocking rule sources into a single deduplicated set and processes these rules into formatted lists compatible with DNS servers, browser extensions, and network proxy tools.

The system includes a domain resolvability validator that checks filter lists against global DNS services to remove unreachable or invalid domains. It also features a filter rule parser that extracts target domains and IP addresses from complex syntaxes while removing comments.

The project covers rule aggregation, syntax-aware domain extraction, and the automated distribution of filtered lists. It manages rule freshness through checksum-based update detection and remote API-driven cache purging for content delivery networks.

## Tags

### Security & Cryptography

- [Blocklist Aggregators](https://awesome-repositories.com/f/security-cryptography/blocklist-aggregators.md) — Merges, deduplicates, and optimizes multiple adblock and DNS filter lists into a unified blocking set. ([source](https://github.com/217heidai/adblockfilters#readme))
- [DNS Filtering](https://awesome-repositories.com/f/security-cryptography/dns-filtering.md) — Combines and validates multiple rule sources to create merged DNS blocklists excluding unresolvable domains. ([source](https://github.com/217heidai/adblockfilters/blob/main/smartdns.conf))
- [Domain Blocklists](https://awesome-repositories.com/f/security-cryptography/domain-blocklists.md) — Generates formatted domain blocklists compatible with network-level DNS servers and proxy tools.

### Web Development

- [Domain Filtering Rules](https://awesome-repositories.com/f/web-development/domain-filtering-rules.md) — Aggregates and deduplicates multiple rule sources to create unified blocklists for web traffic filtering.

### Development Tools & Productivity

- [Rule Aggregators](https://awesome-repositories.com/f/development-tools-productivity/rule-aggregators.md) — Combines multiple filter list sources into a single, deduplicated configuration for unified distribution.

### Networking & Communication

- [DNS Configuration Generators](https://awesome-repositories.com/f/networking-communication/dns-configuration-generators.md) — Processes filter rules into formatted configuration files compatible with DNS servers and proxy tools.
- [DNS Resolvability Checkers](https://awesome-repositories.com/f/networking-communication/dns-resolvability-checkers.md) — Prunes unreachable or inactive domains from blocking lists by querying global DNS servers.
- [Domain Extraction Parsers](https://awesome-repositories.com/f/networking-communication/domain-extraction-parsers.md) — Parses complex filter rule patterns to extract target hostnames and IP addresses while removing comments.
- [Filter List Generators](https://awesome-repositories.com/f/networking-communication/filter-list-generators.md) — Generates filtered lists matching the specific syntax requirements of DNS servers, browser extensions, and proxies. ([source](https://github.com/217heidai/adblockfilters#readme))
- [Filter Rule Transformers](https://awesome-repositories.com/f/networking-communication/filter-rule-transformers.md) — Converts raw blocking rules into specific syntaxes required by DNS servers and browser extensions.
- [Filtering Rule Repositories](https://awesome-repositories.com/f/networking-communication/filtering-rule-repositories.md) — Extracts target domains and IPs from complex rule syntaxes to create standardized filtering configurations.

### Software Engineering & Architecture

- [Checksum-Based Updates](https://awesome-repositories.com/f/software-engineering-architecture/custom-rule-development/security-rule-development/automated-rule-distribution/checksum-based-updates.md) — Implements checksum-based update detection to ensure only modified rule sources are downloaded and processed. ([source](https://github.com/217heidai/adblockfilters/blob/main/updater.py))

### DevOps & Infrastructure

- [Blocklist Distribution Pipelines](https://awesome-repositories.com/f/devops-infrastructure/blocklist-distribution-pipelines.md) — Automates the update and caching process to ensure users receive current filtering lists.
