domain-list-community
Community managed domain list. Generate geosite.dat for V2Ray.
Top Related Projects
Community managed domain list
🦄 🎃 👻 V2Ray 路由规则文件加强版,可代替 V2Ray 官方 geoip.dat 和 geosite.dat,适用于 V2Ray、Xray-core、mihomo(Clash-Meta)、hysteria、Trojan-Go 和 leaf。Enhanced edition of V2Ray rules dat files, applicable to V2Ray, Xray-core, mihomo(Clash-Meta), hysteria, Trojan-Go and leaf.
🦄️ 🎃 👻 Clash Premium 规则集(RULE-SET),兼容 ClashX Pro、Clash for Windows 等基于 Clash Premium 内 核的客户端。
Chinese-specific configuration to improve your favorite DNS server. Best partner for chnroutes.
The one and only one gfwlist here
自由·负责·克制 去广告 Hosts 项目
Quick Overview
The v2fly/domain-list-community repository is a collaborative project that maintains a comprehensive list of domain names categorized by their respective organizations or purposes. This list is primarily used for routing and domain-based rule matching in network tools and applications, particularly those related to V2Ray, a platform for building proxies.
Pros
- Extensive and regularly updated domain list
- Community-driven, allowing for contributions from various users
- Well-organized structure with clear categorization
- Useful for configuring network tools, firewalls, and proxy applications
Cons
- May require frequent updates to stay current with domain changes
- Potential for over-categorization or miscategorization of domains
- Relies on community contributions, which may lead to inconsistencies
- Large file size due to the extensive list of domains
Getting Started
To use the domain list in your project:
-
Clone the repository:
git clone https://github.com/v2fly/domain-list-community.git
-
Use the
dlc.dat
file in your V2Ray configuration or other compatible applications. -
To update the list, pull the latest changes from the repository:
cd domain-list-community git pull
-
If you want to contribute, follow the contribution guidelines in the repository's README and submit a pull request with your changes.
Competitor Comparisons
Community managed domain list
Pros of domain-list-community
- Longer history and established user base
- More comprehensive documentation
- Wider range of contributors
Cons of domain-list-community
- Less frequent updates
- Slower response to issues and pull requests
- Some outdated domain classifications
Code Comparison
domain-list-community:
include:category-ads-all
include:category-companies
# Google
google
v2fly/domain-list-community:
include:category-ads
include:category-companies
# Google
google
googleapis.com
The v2fly version tends to have more specific domain inclusions and updated categorizations.
Key Differences
- Maintenance: v2fly/domain-list-community is more actively maintained
- Community: v2fly has a growing, engaged community
- Updates: v2fly version typically includes more recent domain additions
- Structure: v2fly repository has a more organized file structure
- Integration: v2fly version is better integrated with v2ray-core
Conclusion
While domain-list-community has a longer history, v2fly/domain-list-community offers more frequent updates and active maintenance. Users looking for the most up-to-date domain classifications may prefer the v2fly version, while those seeking a more established project might opt for the original domain-list-community.
🦄 🎃 👻 V2Ray 路由规则文件加强版,可代替 V2Ray 官方 geoip.dat 和 geosite.dat,适用于 V2Ray、Xray-core、mihomo(Clash-Meta)、hysteria、Trojan-Go 和 leaf。Enhanced edition of V2Ray rules dat files, applicable to V2Ray, Xray-core, mihomo(Clash-Meta), hysteria, Trojan-Go and leaf.
Pros of v2ray-rules-dat
- More comprehensive rule sets, including geoip.dat and geosite.dat
- Regular updates and maintenance
- Includes pre-built rule files for easier implementation
Cons of v2ray-rules-dat
- Larger file sizes due to more extensive rule sets
- May require more system resources to process
- Potentially over-inclusive, leading to unintended blocking
Code Comparison
domain-list-community:
include:category-ads-all
include:category-companies
include:adobe
include:amazon
include:apple
v2ray-rules-dat:
payload:
- DOMAIN-SUFFIX,googleapis.cn
- DOMAIN-SUFFIX,googleapis.com
- DOMAIN-SUFFIX,googleusercontent.cn
- DOMAIN-SUFFIX,googleusercontent.com
- DOMAIN-SUFFIX,gvt0.com
The domain-list-community uses a more modular approach with includes, while v2ray-rules-dat employs a more direct listing of domains and suffixes. v2ray-rules-dat's approach may be easier to read and modify for some users, but domain-list-community's structure allows for better organization and reusability of rule sets.
Both repositories serve similar purposes in providing domain lists for V2Ray, but they differ in their approach to rule organization and comprehensiveness. Users should consider their specific needs and system capabilities when choosing between the two.
🦄️ 🎃 👻 Clash Premium 规则集(RULE-SET),兼容 ClashX Pro、Clash for Windows 等基于 Clash Premium 内核的客户端。
Pros of clash-rules
- More focused on Clash configuration, providing ready-to-use rule sets
- Includes specialized categories like streaming services and game platforms
- Regularly updated with community contributions
Cons of clash-rules
- Less comprehensive domain coverage compared to domain-list-community
- May require more manual configuration for non-Clash applications
- Potentially less flexible for custom rule creation
Code Comparison
domain-list-community:
include:category-ads-all
include:category-companies
regexp:(?:^|\.)goo\.gl$
clash-rules:
payload:
- DOMAIN-SUFFIX,googleapis.cn
- DOMAIN-SUFFIX,googleapis.com
- DOMAIN-SUFFIX,googleusercontent.cn
Summary
domain-list-community offers a more extensive domain list with broader applications, while clash-rules provides specialized rule sets tailored for Clash configurations. The former uses a simple include-based format, whereas the latter employs YAML with specific Clash directives. Users should choose based on their specific needs and preferred proxy management tool.
Chinese-specific configuration to improve your favorite DNS server. Best partner for chnroutes.
Pros of dnsmasq-china-list
- More focused on Chinese domains, providing better coverage for China-specific websites and services
- Optimized for use with dnsmasq, making it easier to implement in network configurations
- Regular updates to maintain accuracy and relevance
Cons of dnsmasq-china-list
- Limited to Chinese domains, less useful for global or non-China-specific applications
- May require additional configuration for non-dnsmasq setups
- Less granular categorization compared to domain-list-community
Code Comparison
domain-list-community:
include:alibaba
include:baidu
include:bilibili
include:bytedance
include:tencent
dnsmasq-china-list:
server=/10010.com/114.114.114.114
server=/100offer.com/114.114.114.114
server=/115.com/114.114.114.114
server=/123juzi.com/114.114.114.114
server=/123juzi.net/114.114.114.114
The domain-list-community uses a hierarchical structure with includes, while dnsmasq-china-list directly maps domains to DNS servers. The latter is more straightforward for dnsmasq configuration but less flexible for other use cases.
Both repositories serve different purposes and cater to different needs. domain-list-community offers a more comprehensive and categorized list of domains for various applications, while dnsmasq-china-list is specifically tailored for optimizing DNS resolution for Chinese websites using dnsmasq.
The one and only one gfwlist here
Pros of gfwlist
- Longer history and wider adoption in the community
- Simple, straightforward format for easy manual editing
- Focuses specifically on censored domains in China
Cons of gfwlist
- Less structured and harder to maintain at scale
- Limited to domain-level blocking, lacking more granular control
- Slower update cycle compared to domain-list-community
Code comparison
gfwlist:
||example.com
||subdomain.example.com
@@||whitelist.example.com
domain-list-community:
example.com
subdomain.example.com
full:specific.example.com
regexp:^(api|cdn)\.example\.com$
Key differences
-
Format: gfwlist uses a simple list with basic wildcards, while domain-list-community employs a more structured approach with categories and advanced matching options.
-
Scope: gfwlist primarily targets censorship circumvention in China, whereas domain-list-community aims to be a comprehensive, categorized domain list for various purposes.
-
Maintenance: domain-list-community's structure allows for easier collaborative maintenance and more frequent updates, while gfwlist relies on manual curation.
-
Flexibility: domain-list-community offers more granular control with full domain matching, regular expressions, and category-based filtering, making it more versatile for different use cases.
-
Integration: domain-list-community is designed to work seamlessly with V2Ray and other compatible tools, while gfwlist is more generic and requires additional processing for use in various applications.
自由·负责·克制 去广告 Hosts 项目
Pros of neohosts
- Focused on ad-blocking and privacy protection for Chinese users
- Regularly updated with community contributions
- Includes both domain-based and IP-based blocking rules
Cons of neohosts
- Limited to Chinese websites and services
- May cause over-blocking for some users
- Less flexible than domain-list-community for custom configurations
Code Comparison
domain-list-community:
include:category-ads-all
include:category-ads-cn
domain:ad.xiaomi.com
domain:ad1.xiaomi.com
domain:ad.intl.xiaomi.com
neohosts:
0.0.0.0 ad.xiaomi.com
0.0.0.0 ad1.xiaomi.com
0.0.0.0 ad.intl.xiaomi.com
0.0.0.0 ad.mi.com
0.0.0.0 ad.api.xiaomi.com
Summary
domain-list-community is a more comprehensive and flexible solution for domain categorization, suitable for various applications including content filtering and routing. It supports hierarchical includes and provides a wide range of categories beyond just ads.
neohosts is specifically tailored for Chinese users looking to block ads and protect their privacy. It offers a straightforward hosts file format, making it easy to implement in various systems but less versatile for complex configurations.
Both projects rely on community contributions to stay updated, but they serve different purposes and user bases.
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
Domain list community
This project manages a list of domains, to be used as geosites for routing purpose in Project V.
Purpose of this project
This project is not opinionated. In other words, it does NOT endorse, claim or imply that a domain should be blocked or proxied. It can be used to generate routing rules on demand.
Download links
- dlc.datï¼https://github.com/v2fly/domain-list-community/releases/latest/download/dlc.dat
- dlc.dat.sha256sumï¼https://github.com/v2fly/domain-list-community/releases/latest/download/dlc.dat.sha256sum
Usage example
Each file in the data
directory can be used as a rule in this format: geosite:filename
.
"routing": {
"domainStrategy": "IPIfNonMatch",
"rules": [
{
"type": "field",
"outboundTag": "Reject",
"domain": [
"geosite:category-ads-all",
"geosite:category-porn"
]
},
{
"type": "field",
"outboundTag": "Direct",
"domain": [
"domain:icloud.com",
"domain:icloud-content.com",
"domain:cdn-apple.com",
"geosite:cn",
"geosite:private"
]
},
{
"type": "field",
"outboundTag": "Proxy-1",
"domain": [
"geosite:category-anticensorship",
"geosite:category-media",
"geosite:category-vpnservices"
]
},
{
"type": "field",
"outboundTag": "Proxy-2",
"domain": [
"geosite:category-dev"
]
},
{
"type": "field",
"outboundTag": "Proxy-3",
"domain": [
"geosite:geolocation-!cn"
]
}
]
}
Generate dlc.dat
manually
- Install
golang
andgit
- Clone project code:
git clone https://github.com/v2fly/domain-list-community.git
- Navigate to project root directory:
cd domain-list-community
- Install project dependencies:
go mod download
- Generate
dlc.dat
(withoutdatapath
option means to use domain lists indata
directory of current working directory):go run ./
go run ./ --datapath=/path/to/your/custom/data/directory
Run go run ./ --help
for more usage information.
Structure of data
All data are under data
directory. Each file in the directory represents a sub-list of domains, named by the file name. File content is in the following format.
# comments
include:another-file
domain:google.com @attr1 @attr2
keyword:google
regexp:www\.google\.com$
full:www.google.com
Syntax:
The following types of rules are NOT fully compatible with the ones that defined by user in V2Ray config file. Do Not copy and paste directly.
- Comment begins with
#
. It may begin anywhere in the file. The content in the line after#
is treated as comment and ignored in production. - Inclusion begins with
include:
, followed by the file name of an existing file in the same directory. - Subdomain begins with
domain:
, followed by a valid domain name. The prefixdomain:
may be omitted. - Keyword begins with
keyword:
, followed by a string. - Regular expression begins with
regexp:
, followed by a valid regular expression (per Golang's standard). - Full domain begins with
full:
, followed by a complete and valid domain name. - Domains (including
domain
,keyword
,regexp
andfull
) may have one or more attributes. Each attribute begins with@
and followed by the name of the attribute.
Note: Adding new
regexp
andkeyword
rules is discouraged because it is easy to use them incorrectly, and proxy software cannot efficiently match these types of rules.
How it works
The entire data
directory will be built into an external geosite
file for Project V. Each file in the directory represents a section in the generated file.
To generate a section:
- Remove all the comments in the file.
- Replace
include:
lines with the actual content of the file. - Omit all empty lines.
- Generate each
domain:
line into a sub-domain routing rule. - Generate each
keyword:
line into a plain domain routing rule. - Generate each
regexp:
line into a regex domain routing rule. - Generate each
full:
line into a full domain routing rule.
How to organize domains
File name
Theoretically any string can be used as the name, as long as it is a valid file name. In practice, we prefer names for determinic group of domains, such as the owner (usually a company name) of the domains, e.g., "google", "netflix". Names with unclear scope are generally unrecommended, such as "evil", or "local".
Attributes
Attribute is useful for sub-group of domains, especially for filtering purpose. For example, the list of google
domains may contains its main domains, as well as domains that serve ads. The ads domains may be marked by attribute @ads
, and can be used as geosite:google@ads
in V2Ray routing.
Contribution guideline
- Fork this repo, make modifications to your own repo, file a PR.
- Please begin with small size PRs, say modification in a single file.
- A PR must be reviewed and approved by another member.
- A script will verify your pull request to test whether your PR is correct or not every time you update the PR. Only the PR which passes the test will be merged. Please go to the Action label to get detailed information if you didn't pass it. We also provide the file which has been generated to make you test.
- After a few successful PRs, you may apply for manager access to this repository.
Top Related Projects
Community managed domain list
🦄 🎃 👻 V2Ray 路由规则文件加强版,可代替 V2Ray 官方 geoip.dat 和 geosite.dat,适用于 V2Ray、Xray-core、mihomo(Clash-Meta)、hysteria、Trojan-Go 和 leaf。Enhanced edition of V2Ray rules dat files, applicable to V2Ray, Xray-core, mihomo(Clash-Meta), hysteria, Trojan-Go and leaf.
🦄️ 🎃 👻 Clash Premium 规则集(RULE-SET),兼容 ClashX Pro、Clash for Windows 等基于 Clash Premium 内核的客户端。
Chinese-specific configuration to improve your favorite DNS server. Best partner for chnroutes.
The one and only one gfwlist here
自由·负责·克制 去广告 Hosts 项目
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot