Giter Club home page Giter Club logo

domain-list-community's Introduction


Domain list community

This project manages a list of domains, to be used as geosites for routing purpose in Project V.

Announcement

Due to a lack of members capable of code review, this repository has been moved to v2fly/domain-list-community. This also means that more contributors can have manager access to the new repository after a few successful PRs, which will make the project healthier and more active for good.

From now on, this repo will only be used to release dlc.dat. Other matters (issues and pull requests) will be handled at the new repository.

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

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"
      ]
    },
    {
      "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 and git
  • Download and install project code: go get -u -v --insecure github.com/v2ray/domain-list-community
  • Generate dlc.dat (without datapath option means to use data directory of this repository in $GOPATH):
    • $(go env GOPATH)/bin/domain-list-community
    • $(go env GOPATH)/bin/domain-list-community --datapath=/path/to/your/custom/data/directory

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
regex:www\.google\.com
full:www.google.com

Syntax:

  • 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 prefix domain: may be omitted.
  • Keyword begins with keyword:, followed by a string.
  • Regular expression begins with regex:, 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, regex and full) may have one or more attributes. Each attribute begins with @ and followed by the name of the attribute.

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:

  1. Remove all the comments in the file.
  2. Replace include: lines with the actual content of the file.
  3. Omit all empty lines.
  4. Generate each domain: line into a sub-domain routing rule.
  5. Generate each keyword: line into a plain domain routing rule.
  6. Generate each regex: line into a regex domain routing rule.
  7. 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

  • Please begin with small size PRs, say modification in a single file.
  • A PR must be reviewed and approved by another member.
  • After a few successful PRs, you may apply for manager access of this repository.

domain-list-community's People

Contributors

2509222540 avatar 8dxfpt avatar actions-user avatar akiirui avatar banrikun avatar darienraymond avatar ducksoft avatar epliar avatar eycorsican avatar funray avatar kslr avatar lijingqing avatar loyalsoldier avatar m2kar avatar mzz2017 avatar opportunityliu avatar pragmatwice avatar rhjdvsgsgks avatar rikkix avatar robot-daneelolivaw avatar rosebe avatar sdjdd avatar sitischu avatar techciel avatar toutyrater avatar tritu avatar victoriaraymond avatar whyou avatar xjasonlyu avatar zzqqbs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

domain-list-community's Issues

建议增加国外常用CDN的IP段

为了帮助默认直连的配置(gfwlist-black)加速使用海外CDN的网站,以下我收集的CDNIP段,希望大家多多补充。
CloudFlare:
"173.245.48.0/20",
"103.21.244.0/22",
"103.22.200.0/22",
"103.31.4.0/22",
"141.101.64.0/18",
"108.162.192.0/18",
"190.93.240.0/20",
"188.114.96.0/20",
"197.234.240.0/22",
"198.41.128.0/17",
"162.158.0.0/15",
"104.16.0.0/12",
"172.64.0.0/13",
"131.0.72.0/22",
"2400:cb00::/32",
"2606:4700::/32",
"2803:f800::/32",
"2405:b500::/32",
"2405:8100::/32",
"2a06:98c0::/29",
"2c0f:f248::/32"

AWS:
"144.220.0.0/16",
"52.124.128.0/17",
"54.230.0.0/16",
"54.239.128.0/18",
"52.82.128.0/19",
"99.84.0.0/16",
"204.246.172.0/24",
"54.239.192.0/19",
"70.132.0.0/18",
"13.32.0.0/15",
"205.251.208.0/20",
"13.224.0.0/14",
"13.35.0.0/16",
"204.246.164.0/22",
"204.246.168.0/22",
"71.152.0.0/17",
"216.137.32.0/19",
"205.251.249.0/24",
"99.86.0.0/16",
"52.46.0.0/18",
"52.84.0.0/15",
"204.246.173.0/24",
"130.176.0.0/16",
"205.251.200.0/21",
"204.246.174.0/23",
"64.252.128.0/18",
"205.251.254.0/24",
"143.204.0.0/16",
"205.251.252.0/23",
"204.246.176.0/20",
"13.249.0.0/16",
"54.240.128.0/18",
"205.251.250.0/23",
"52.222.128.0/17",
"54.182.0.0/16",
"54.192.0.0/16",

部分Google服务大陆可直连,DLC中能否区别开来?

fonts.googleapis.com是很常用的web fonts,大陆已经解封,用国内的DNS会解析到谷歌北京的服务器,使用代理速度反而会变慢不少。

但是DLC中使用了googleapis.com这一域名:

googleapis.com

这会使得fonts子域名也走代理,在配置(尤其是DNS)时很不方便。

PS:除fonts外,还有一些其他服务也已经解封,可参考https://github.com/felixonmars/dnsmasq-china-list/blob/master/google.china.conf和https://github.com/felixonmars/dnsmasq-china-list/blob/master/apple.china.conf

无法登录XBOX APP

开启自动配置系统代理后,就无法登录Xbox App了,清除系统代理后即可登录
开启时:
image

清除后:
image

已经尝试过直连geosite:xbox或geosite:microsoft等规则

谢谢

在用投影仪投屏youku视频时卡住

投屏youku视频时投影仪卡住,我看日志发现block了这个域名:vali.cp31.ott.cibntv.net

把这个域名加入到direct中后投屏正常,请大家测试一下?

sina-ads是否太严格了

cre.mix.sina.com.cn 是相关新闻feed流,虽然类头条模式的无限下拉令人讨厌,算成广告又感觉有点严格。

Note that sometimes it might cause issues that can be hard to debug

Because the rules are in the domain-list, thus it's hard to debug
when users choose to use these setting, they route the traffics to their servers, now some companies and websites they know these servers, and they blocked them in advance to prevent DDOS, so if some dumb user let's just say 30% of our community here have used the domain list, they will begin to notice that they are not able to go to some websites and dont know why, because the rules are in the domain list files it becomes less informative when you encounter the issues.
BUT WELL NOW YOU KNOW

Category-ads-all 里的 atianqi.com 全域名屏蔽导致腾讯TV app 崩溃

目前如果启用 geosite:category-ads-all 广告域名屏蔽,里面的 xiaomitv-ads 规则会屏蔽了整个 atianqi.com 域名。但是极光TV(腾讯视频TV电视版)必需读取特定 atianqi.com 子域名(例如 tv.aiseet.atianqi.com 和 *.play.aiseet.atianqi.com)才能使用,也并非整个 atianqi.com 域名都是广告。

Move jsDelivr back to `geolocation-cn`

c7c30b4 (and following #128) seem like false positives. There's no sign jsDelivr has stopped partnering with QUANTIL (and therefore lost access points in China). A simple test should be enough evidence.
Since there may be others in know, I choose to submit an issue here before a PR to move.

Traffic rules

Hi
can anyone please tell me how to set traffic rules for v2ray?
i dont want to allow porn site gambling site access.

请问怎么单独运行这个域名列表工具?我安装完各种go package后运行时提示`Failed: No file found in GOPATH`

可以正常build出来二进制文件,但不论是直接go run或是运行二进制文件都会提示
Failed: No file found in GOPATH

项目并没有克隆到/Users/joshua/go里面

$ export GOPATH=/Users/joshua/go 
$ export PATH=$GOPATH/bin:$PATH
$ ./main                        
Failed:  No file found in GOPATH
$ tree -d go
go
├── pkg
│   └── darwin_amd64
│       ├── github.com
│       │   └── golang
│       │       └── protobuf
│       └── go.starlark.net
└── src
    ├── github.com
    │   └── golang
    │       └── protobuf
    │           ├── descriptor
    │           ├── jsonpb
    │           │   └── jsonpb_test_proto
    │           ├── proto
    │           │   ├── proto3_proto
    │           │   └── test_proto
    │           ├── protoc-gen-go
    │           │   ├── descriptor
    │           │   ├── generator
    │           │   │   └── internal
    │           │   │       └── remap
    │           │   ├── grpc
    │           │   ├── plugin
    │           │   └── testdata
    │           │       ├── deprecated
    │           │       ├── extension_base
    │           │       ├── extension_extra
    │           │       ├── extension_user
    │           │       ├── grpc
    │           │       ├── import_public
    │           │       │   ├── importing
    │           │       │   └── sub
    │           │       ├── imports
    │           │       │   ├── fmt
    │           │       │   ├── test_a_1
    │           │       │   ├── test_a_2
    │           │       │   └── test_b_1
    │           │       ├── issue780_oneof_conflict
    │           │       ├── multi
    │           │       ├── my_test
    │           │       └── proto3
    │           └── ptypes
    │               ├── any
    │               ├── duration
    │               ├── empty
    │               ├── struct
    │               ├── timestamp
    │               └── wrappers
    ├── go.starlark.net
    │   ├── cmd
    │   │   └── starlark
    │   ├── doc
    │   ├── docs
    │   │   ├── cmd
    │   │   │   └── starlark
    │   │   ├── internal
    │   │   │   ├── chunkedfile
    │   │   │   └── compile
    │   │   ├── repl
    │   │   ├── resolve
    │   │   ├── starlark
    │   │   ├── starlarkstruct
    │   │   ├── starlarktest
    │   │   └── syntax
    │   ├── internal
    │   │   ├── chunkedfile
    │   │   ├── compile
    │   │   └── spell
    │   ├── repl
    │   ├── resolve
    │   │   └── testdata
    │   ├── starlark
    │   │   └── testdata
    │   ├── starlarkstruct
    │   │   └── testdata
    │   ├── starlarktest
    │   └── syntax
    │       └── testdata
    └── v2ray.com
        └── core
            ├── app
            │   ├── commander
            │   ├── dispatcher
            │   ├── dns
            │   ├── log
            │   │   └── command
            │   ├── policy
            │   ├── proxyman
            │   │   ├── command
            │   │   ├── inbound
            │   │   └── outbound
            │   ├── reverse
            │   ├── router
            │   └── stats
            │       └── command
            ├── common
            │   ├── bitmask
            │   ├── buf
            │   │   └── data
            │   ├── bytespool
            │   ├── crypto
            │   │   └── internal
            │   ├── dice
            │   ├── errors
            │   │   └── errorgen
            │   ├── log
            │   ├── mux
            │   ├── net
            │   ├── peer
            │   ├── platform
            │   │   ├── ctlcmd
            │   │   └── filesystem
            │   ├── protocol
            │   │   ├── bittorrent
            │   │   ├── dns
            │   │   ├── http
            │   │   ├── tls
            │   │   │   └── cert
            │   │   └── udp
            │   ├── retry
            │   ├── serial
            │   ├── session
            │   ├── signal
            │   │   ├── done
            │   │   ├── pubsub
            │   │   └── semaphore
            │   ├── stack
            │   ├── strmatcher
            │   ├── task
            │   └── uuid
            ├── external
            │   └── github.com
            │       ├── cheekybits
            │       │   └── genny
            │       │       └── generic
            │       ├── cloudflare
            │       │   └── sidh
            │       │       ├── internal
            │       │       │   ├── arith
            │       │       │   ├── isogeny
            │       │       │   └── utils
            │       │       ├── p503
            │       │       ├── p751
            │       │       └── sidh
            │       ├── lucas-clemente
            │       │   └── quic-go
            │       │       └── internal
            │       │           ├── ackhandler
            │       │           ├── congestion
            │       │           ├── crypto
            │       │           ├── flowcontrol
            │       │           ├── handshake
            │       │           ├── protocol
            │       │           ├── qerr
            │       │           ├── testdata
            │       │           ├── utils
            │       │           │   └── linkedlist
            │       │           └── wire
            │       └── marten-seemann
            │           └── qtls
            ├── features
            │   ├── dns
            │   │   └── localdns
            │   ├── inbound
            │   ├── outbound
            │   ├── policy
            │   ├── routing
            │   └── stats
            ├── infra
            │   ├── bazel
            │   ├── conf
            │   │   ├── command
            │   │   ├── json
            │   │   └── serial
            │   ├── control
            │   │   └── main
            │   └── vprotogen
            ├── main
            │   ├── confloader
            │   │   └── external
            │   ├── distro
            │   │   ├── all
            │   │   └── debug
            │   ├── json
            │   └── jsonem
            ├── proxy
            │   ├── blackhole
            │   ├── dns
            │   ├── dokodemo
            │   ├── freedom
            │   ├── http
            │   ├── mtproto
            │   ├── shadowsocks
            │   ├── socks
            │   └── vmess
            │       ├── encoding
            │       ├── inbound
            │       └── outbound
            ├── release
            │   ├── config
            │   │   ├── systemd
            │   │   └── systemv
            │   ├── doc
            │   └── verify
            ├── testing
            │   ├── coverage
            │   ├── mocks
            │   ├── scenarios
            │   └── servers
            │       ├── http
            │       ├── tcp
            │       └── udp
            └── transport
                ├── internet
                │   ├── domainsocket
                │   ├── headers
                │   │   ├── http
                │   │   ├── noop
                │   │   ├── srtp
                │   │   ├── tls
                │   │   ├── utp
                │   │   ├── wechat
                │   │   └── wireguard
                │   ├── http
                │   ├── kcp
                │   ├── quic
                │   ├── tcp
                │   ├── tls
                │   ├── udp
                │   └── websocket
                └── pipe

231 directories

1

1

[Feature Discussion] support priority settings

Default priority is 99, and set it when is needed.
Priority of 1 is the highest, the higher the number the lower the priority.
Every priority begins with !, followed by the priority

example:

zoom.com
zoom.com.cn !100
zoom.us

and in this way, zoom.com.cn would be treated as tld-cn.

Similarly, #487 can be solved.

域名列表或者规则是否有问题?

域名列表或者规则是否有问题?选择PAC模式,一些国内的站点、服务也会被分流,有些国内的IP地址直接访问也会分流。

还有微软的一些服务,近期都失效报错,除非关掉SS

关于域名组织归属书写方式的意见收集

在此仓库的域名管理形式中,如果一家公司有子公司的情况会有两种写法,如 data/alibaba

# Taobao
1688.com
etao.com
juhuasuan.com
lingshoujia.com
pailitao.com
taobao.com
taobao.org
taobaocdn.com
taopiaopiao.com
tb.cn
tbcache.com
tmall.com
tmalltv.com
tmjl.ai

include:dingtalk

前者为子公司的所有域名直接写到 data/alibaba 中,后者为单独一个文件再进行 include

在我发现 data/eleme 为阿里的子公司的时候,拿不定使用哪种引用形式,因此开了此 issue 供大家讨论,希望能得出一个比较合适的方式。

V2ray with google domains

I'm new to this.
Currently managed to set up a v2ray server and want to access free internet.
Only cloudflare domains gets connected through reverse SNI (for vmess/vless).
Some google domains (eg. books.google.com, news.google.com) are free to be accessed. Can I make a configuration with google domains?
Please guide.
Thanks

Add smart tv app domain

Not sure where to put it so I'll just leave it here.
ottcn.com # 聚好看
aisee.tv # 云视听小电视

如何配置代理转发

v2ray教程里面是有代理转发的配置,也就是数据可以先到A服务器,然后传到B服务器,然后再传出去.
这里面可以配置代理转发吗?

Attributes are dismissed in config file

As per https://github.com/v2ray/domain-list-community#attributes, I tried geosite:baidu@ads, geosite:google@ads and geosite:steam@cdn in config file:

{
  "type": "field",
  "domain": [
    "geosite:baidu@ads",
    "geosite:google@ads"
  ],
  "outboundTag": "blocked"
}

or

{
  "type": "field",
  "domain": [
    "geosite:steam@cdn"
  ],
  "outboundTag": "direct"
}

V2Ray returned v2ray.com/core/app/router: this rule has no effective fields. All of them were dismissed, not even taken as geosite:baidu or geosite:steam (geosite:google-ads hasn't been tagged). Although geosite:baidu-ads and geosite:google-adsstill worked. I wonder whether this function has been deployed or am I just doing it wrong?

How to generate the geosite.dat file manually in my local computer?

How to generate the geosite.dat file manually in my local computer?

I want to modify some of the files and debug whether it could work. And in some cases, I want to do some private customization. But i don't know how to generate the geosite.data manually. Could any one give some help?

Speedtest hosts list is now dynamically generated according to users' IP address.

https://c.speedtest.net/speedtest-servers-static.php

Speedtest hosts list is now dynamically generated according to users' IP address. It only shows 1000 testing hosts near your IP address.

For example, using Hong Kong VPN to access it, you will get a host list containing 1000 testing hosts like the following:

<settings>
<servers>
<server url="http://www.suntechspeedtest.com:8080/speedtest/upload.php" lat="22.2500" lon="114.1667" name="Hong Kong" country="China" cc="HK" sponsor="STC" id="1536" host="www.suntechspeedtest.com:8080"/>
<server url="http://speedtesthk.gemnet.mn:8080/speedtest/upload.php" lat="22.2500" lon="114.1667" name="Hong Kong" country="Hong Kong" cc="HK" sponsor="Gemnet LLC" id="21182" host="speedtesthk.gemnet.mn:8080"/>
<server url="http://shenron.smartone.com:8080/speedtest/upload.php" lat="22.2500" lon="114.1667" name="Hong Kong" country="China" cc="HK" sponsor="SmarTone" id="19036" host="shenron.smartone.com:8080"/>
<server url="http://hk.ap.speedtest.i3d.net:8080/speedtest/upload.php" lat="22.2500" lon="114.1667" name="Hong Kong" country="Hong Kong" cc="HK" sponsor="i3D.net" id="22126" host="hk.ap.speedtest.i3d.net:8080"/>
<server url="http://speedtest.telin.hk:8080/speedtest/upload.php" lat="22.2500" lon="114.1667" name="Hong Kong" country="Hong Kong" cc="HK" sponsor="Telin" id="26461" host="speedtest.telin.hk:8080"/>
<server url="http://speedtest.website-solution.net:8080/speedtest/upload.php" lat="22.2500" lon="114.1667" name="Hong Kong" country="China" cc="HK" sponsor="Website Solution Limited" id="2993" host="speedtest.website-solution.net:8080"/>

Using USA VPN to access it, you will get a host list like this:

<settings>
<servers>
<server url="http://speedtest1.sbbnet.com:8080/speedtest/upload.php" lat="38.8986" lon="-121.0744" name="Auburn, CA" country="United States" cc="US" sponsor="Smarterbroadband, Inc" id="1938" host="speedtest1.sbbnet.com:8080"/>
<server url="http://stosat-scrm-01.sys.comcast.net:8080/speedtest/upload.php" lat="38.5556" lon="-121.4689" name="Sacramento, CA" country="United States" cc="US" sponsor="Comcast" id="9436" host="stosat-scrm-01.sys.comcast.net:8080"/>
<server url="http://speedtest1.succeed.net:8080/speedtest/upload.php" lat="38.5556" lon="-121.4689" name="Sacramento, CA" country="United States" cc="US" sponsor="Succeed.Net" id="7760" host="speedtest1.succeed.net:8080"/>

I think there is NO need to keep the ookla-speedtest sub-list in the repo anymore.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.