A comprehensive collection of optimized rulesets, maintained with a focus on reliability, frequent updates, and efficient performance. These rulesets are specifically designed to work seamlessly with META.
- MRS Format: Optimized binary format, providing efficient performance and low memory usage
- YAML Format: Human-readable files for easy inspection, debugging, and modification
- Frequent Updates: Rulesets are rebuilt and published multiple times daily (every 4 hours)
- Automatic CDN Cache Purging: Ensures you always get the freshest rulesets via jsDelivr
- Aggregates data from multiple reliable upstream sources:
- Redundancy Removal: Intelligent processing to eliminate redundant domain entries
- Exclusion Lists: Carefully maintained exclusion lists to prevent false positives
- Efficient Domain Handling: Special handling for different domain types (full, domain, regexp, keyword)
- Basic: Essential rulesets for common usage scenarios
- Universal: Expanded ruleset collection with more comprehensive coverage
The easiest way to use these rulesets is with META, which automates the entire configuration process. For usage instructions, refer to the Quick Start of META.
Basic Branch (@basic
)
Ruleset | Description |
---|---|
fake-ip-filter.mrs |
Domains that should not be assigned fake IP mappings for connection |
applications.yaml |
Applications recommended for direct connection |
private.mrs |
Domains serving private/local networks and fulfill specific technical roles |
direct.mrs |
Domains recommended for direct connection |
proxy.mrs |
Domains recommended for proxy connection |
reject.mrs |
Advertisement and tracking domains for blocking |
gfw.mrs |
Domains in the Great Firewall blocklist |
tld-!cn.mrs |
Top-level domains not used in mainland China |
cncidr.mrs |
China IP CIDR blocks |
lancidr.mrs |
LAN IP CIDR blocks |
And more... | Various provider-specific CIDR blocks |
Universal Branch (@universal
)
Contains rulesets for specific applications/services/regions to provide more granular control.
This repository employs an advanced GitHub Actions workflow to:
- Data Collection: Fetch domain lists from multiple authoritative sources
- Processing:
- Remove redundant and invalid domains
- Apply exclusion lists
- Handle different domain types appropriately
- Format Conversion: Convert to both MRS (binary) and YAML formats
- Publishing:
- Push to separate branches for organization
- Create GitHub releases
- Purge CDN caches for immediate availability
If you prefer manual configuration, apply the rulesets to your configuration like this:
dns:
fake-ip-filter:
- rule-set:fake-ip-filter
- rule-set:direct
- rule-set:private
- rule-set:connectivity-check
rules:
- RULE-SET,applications,DIRECT
- RULE-SET,lancidr,DIRECT,no-resolve
- RULE-SET,private,DIRECT
- RULE-SET,reject,Advertising
- RULE-SET,win-spy,Advertising
- RULE-SET,xai,xAI
- RULE-SET,openai,OpenAI
- RULE-SET,gemini,Gemini
- RULE-SET,notebooklm,NotebookLM
- RULE-SET,anthropic,Anthropic
- RULE-SET,perplexity,Perplexity
- RULE-SET,rednote,rednote
- RULE-SET,bilibili,bilibili
- RULE-SET,youtube,YouTube
- RULE-SET,telegram,Telegram
- RULE-SET,x,X
- RULE-SET,binance,Binance
- RULE-SET,google,Google
- RULE-SET,microsoft,Microsoft
- RULE-SET,xget,Xget
- RULE-SET,cloudflare,Cloudflare
- RULE-SET,speedtest,Speedtest
- RULE-SET,direct,Mainland China 🇨🇳
- RULE-SET,proxy,PROXY
- RULE-SET,telegramcidr,Telegram
- RULE-SET,xcidr,X
- RULE-SET,googlecidr,Google
- RULE-SET,cloudflarecidr,Cloudflare
- RULE-SET,cncidr,Mainland China 🇨🇳
- MATCH,Others
rule-providers:
fake-ip-filter:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@basic/fake-ip-filter.mrs
path: ./rulesets/fake-ip-filter.mrs
connectivity-check:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/connectivity-check.mrs
path: ./rulesets/connectivity-check.mrs
applications:
type: http
interval: 14400
format: yaml
behavior: classical
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@basic/applications.yaml
path: ./rulesets/applications.yaml
lancidr:
type: http
interval: 14400
format: mrs
behavior: ipcidr
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@basic/lancidr.mrs
path: ./rulesets/lancidr.mrs
cncidr:
type: http
interval: 14400
format: mrs
behavior: ipcidr
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@basic/cncidr.mrs
path: ./rulesets/cncidr.mrs
cloudflarecidr:
type: http
interval: 14400
format: mrs
behavior: ipcidr
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@basic/cloudflarecidr.mrs
path: ./rulesets/cloudflarecidr.mrs
googlecidr:
type: http
interval: 14400
format: mrs
behavior: ipcidr
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@basic/googlecidr.mrs
path: ./rulesets/googlecidr.mrs
telegramcidr:
type: http
interval: 14400
format: mrs
behavior: ipcidr
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@basic/telegramcidr.mrs
path: ./rulesets/telegramcidr.mrs
xcidr:
type: http
interval: 14400
format: mrs
behavior: ipcidr
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@basic/xcidr.mrs
path: ./rulesets/xcidr.mrs
private:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@basic/private.mrs
path: ./rulesets/private.mrs
direct:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@basic/direct.mrs
path: ./rulesets/direct.mrs
proxy:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@basic/proxy.mrs
path: ./rulesets/proxy.mrs
geolocation-cn:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/geolocation-cn.mrs
path: ./rulesets/geolocation-cn.mrs
reject:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@basic/reject.mrs
path: ./rulesets/reject.mrs
win-spy:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/win-spy.mrs
path: ./rulesets/win-spy.mrs
xai:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/xai.mrs
path: ./rulesets/xai.mrs
openai:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/openai.mrs
path: ./rulesets/openai.mrs
gemini:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/google-gemini.mrs
path: ./rulesets/gemini.mrs
notebooklm:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/google-notebooklm.mrs
path: ./rulesets/notebooklm.mrs
anthropic:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/anthropic.mrs
path: ./rulesets/anthropic.mrs
perplexity:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/perplexity.mrs
path: ./rulesets/perplexity.mrs
rednote:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/xiaohongshu.mrs
path: ./rulesets/rednote.mrs
bilibili:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/bilibili.mrs
path: ./rulesets/bilibili.mrs
youtube:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/youtube.mrs
path: ./rulesets/youtube.mrs
telegram:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/telegram.mrs
path: ./rulesets/telegram.mrs
x:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/x.mrs
path: ./rulesets/x.mrs
binance:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/binance.mrs
path: ./rulesets/binance.mrs
google:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/google.mrs
path: ./rulesets/google.mrs
microsoft:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/microsoft.mrs
path: ./rulesets/microsoft.mrs
xget:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/xget.mrs
path: ./rulesets/xget.mrs
cloudflare:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/cloudflare.mrs
path: ./rulesets/cloudflare.mrs
speedtest:
type: http
interval: 14400
format: mrs
behavior: domain
url: https://cdn.jsdelivr.net/gh/xixu-me/RFM@universal/speedtest.mrs
path: ./rulesets/speedtest.mrs
The rulesets are automatically updated multiple times daily, ensuring you always have the most current data. The GitHub Actions workflow runs at scheduled intervals and also triggers on pushes to the main branch.
- This repository is strictly for educational and research purposes.
- Use at your own risk. The repository assumes no responsibility for potential issues.
- No guarantee of accuracy, completeness, or reliability.
- Not liable for data loss or damages.
- Ensure compliance with relevant licenses and legal regulations.
- No endorsement of third-party hardware/software.
- User modifications are their own responsibility.
- Terms may change at any time. By using this repository, you agree to these terms.
Copyright © Xi Xu
Licensed under the GPL-3.0 license.