explaingit

v2fly/domain-list-community

8,614GoAudience · ops devopsComplexity · 1/5Setup · easy

TLDR

Community-maintained lists of domain names grouped by category, ads, streaming, Chinese sites, that proxy tools like V2Ray load to decide whether to block, route directly, or tunnel each site.

Mindmap

mindmap
  root((domain-list-community))
    What it does
      Domain categorization
      Routing rule source
      Community maintained
    Categories
      Ads
      Streaming
      Chinese sites
      Developer tools
    Output
      dlc.dat binary
      GitHub releases
    Used by
      V2Ray
      Compatible proxies
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Load the pre-built dlc.dat file into V2Ray to route Chinese domains directly while sending other traffic through a proxy.

USE CASE 2

Block all ad-serving domains at the proxy level by referencing the category-ads-all group in your routing config.

USE CASE 3

Submit a pull request to add or correct domain entries for a service you maintain or use.

USE CASE 4

Build a custom dlc.dat using the Go compiler that includes only the specific domain categories you need.

Tech stack

Go

Getting it running

Difficulty · easy Time to first run · 5min

In plain English

This project is a community-maintained collection of domain name lists. The lists are used as routing rules inside V2Ray and its related tools, which are network proxy applications. The idea is simple: group domains by category (for example, Chinese sites, advertising networks, media streaming services, developer tools), then let a proxy tool use those groups to decide how to handle traffic to each domain: block it, send it directly, or route it through a proxy. The output of this project is a compiled file called dlc.dat, which proxy tools can load. Pre-built versions are available as GitHub release downloads, so most users never need to run any code themselves. The file is regenerated automatically when the community updates the domain lists. For those who want to build the file themselves or create custom variants, the project includes a Go program that reads the plain-text data files in the repository and compiles them into the binary format. Each data file holds a list of domains for one category. Rules can match by subdomain, full domain, keyword inside the domain name, or regular expression. Domains can also carry tags (called attributes) to mark subgroups, such as ad-serving domains within an otherwise legitimate service, which allows very fine-grained filtering. The data directory is the core of the project. Files there are named after what they contain: google, netflix, cn, category-ads-all, and so on. Anyone can submit a pull request to add or correct domains, and an automated check runs on every pull request to catch errors before merging. The project explicitly does not take a position on what should be blocked or proxied, it just provides organized lists that users configure as they choose. This is primarily useful to people running V2Ray or compatible proxy tools who want up-to-date, community-verified routing rules without maintaining their own domain lists by hand.

Copy-paste prompts

Prompt 1
Show me how to add the V2Fly domain-list-community dlc.dat to my V2Ray config to route Chinese domains directly.
Prompt 2
Walk me through cloning domain-list-community and running the Go build tool to compile a custom dlc.dat with only the categories I need.
Prompt 3
How do I add a domain to the category-ads-all list in domain-list-community and submit a pull request?
Prompt 4
Explain how V2Ray routing rules use dlc.dat tags and attributes to do fine-grained per-domain filtering.
Open on GitHub → Explain another repo

← v2fly on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.