23 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	简介
V2Ray 路由规则文件加强版,可代替 V2Ray 官方 geoip.dat 和 geosite.dat,兼容 Shadowsocks-windows、Xray-core、Trojan-Go 和 leaf。利用 GitHub Actions 北京时间每天早上 6 点自动构建,保证规则最新。
规则文件生成方式
geoip.dat
- 通过仓库 @Loyalsoldier/geoip 生成
 - 其中全球 IP 地址(IPv4 和 IPv6)来源于 MaxMind GeoLite2,
CN(中国大陆)类别下的 IPv4 地址来源于 ipip.net - 新增类别(方便有特殊需求的用户使用):
geoip:cloudflaregeoip:cloudfrontgeoip:facebookgeoip:fastlygeoip:googlegeoip:netflixgeoip:telegramgeoip:twitter
 
希望定制
geoip.dat文件?查看仓库 @Loyalsoldier/geoip。
geosite.dat
- 基于 @v2fly/domain-list-community/data 数据,通过仓库 @Loyalsoldier/domain-list-custom 生成
 - 加入大量中国大陆域名、Apple 域名和 Google 域名:
- @felixonmars/dnsmasq-china-list/accelerated-domains.china.conf 加入到 
geosite:cn类别中 - @felixonmars/dnsmasq-china-list/apple.china.conf 加入到 
geosite:geolocation-!cn类别中(如希望本文件中的 Apple 域名直连,请参考下面 geosite 的 Routing 配置方式) - @felixonmars/dnsmasq-china-list/google.china.conf 加入到 
geosite:geolocation-!cn类别中(如希望本文件中的 Google 域名直连,请参考下面 geosite 的 Routing 配置方式) 
 - @felixonmars/dnsmasq-china-list/accelerated-domains.china.conf 加入到 
 - 加入 GFWList 域名:
- 基于 @gfwlist/gfwlist 数据,通过仓库 @cokebar/gfwlist2dnsmasq 和 @pexcn/gfwlist-extras 生成
 - 加入到 
geosite:gfw类别中,供习惯于 PAC 模式并希望使用 GFWList 的用户使用 - 同时加入到 
geosite:geolocation-!cn类别中 
 - 加入 Greatfire Analyzer 检测到的屏蔽域名:
- 通过仓库 @Loyalsoldier/cn-blocked-domain 获取 Greatfire Analyzer 检测到的在中国大陆被屏蔽的域名
 - 加入到 
geosite:greatfire类别中,可与上面的geosite:gfw类别同时使用,以达到域名黑名单的效果 - 同时加入到 
geosite:geolocation-!cn类别中 
 - 加入 EasyList 和 EasyListChina 广告域名:通过 @AdblockPlus/EasylistChina+Easylist.txt 获取并加入到 
geosite:category-ads-all类别中 - 加入 AdGuard DNS Filter 广告域名:通过 @AdGuard/DNS-filter 获取并加入到 
geosite:category-ads-all类别中 - 加入 Peter Lowe 广告和隐私跟踪域名:通过 @PeterLowe/adservers 获取并加入到 
geosite:category-ads-all类别中 - 加入 Dan Pollock 广告域名:通过 @DanPollock/hosts 获取并加入到 
geosite:category-ads-all类别中 - 加入 Windows 操作系统相关的系统升级和隐私跟踪域名:
- 基于 @crazy-max/WindowsSpyBlocker 数据
 - [慎用] Windows 操作系统使用的隐私跟踪域名 @crazy-max/WindowsSpyBlocker/hosts/spy.txt 加入到 
geosite:win-spy类别中 - [慎用] Windows 操作系统使用的系统升级域名 @crazy-max/WindowsSpyBlocker/hosts/update.txt 加入到 
geosite:win-update类别中 - [慎用] Windows 操作系统附加的隐私跟踪域名 @crazy-max/WindowsSpyBlocker/hosts/extra.txt 加入到 
geosite:win-extra类别中 - 关于这三个类别的使用方式,请参考下面 geosite 的 Routing 配置方式
 
 - 加入更多代理域名:通过仓库 @lhie1/Rules 获取更多代理域名,并加入到 
geosite:geolocation-!cn类别中 - 可添加自定义直连、代理和广告域名:由于上游域名列表更新缓慢或缺失某些域名,所以引入需要添加的域名列表。
hidden 分支里的三个文件direct.txt、proxy.txt和reject.txt,分别存放自定义的需要添加的直连、代理、广告域名,最终分别加入到geosite:cn、geosite:geolocation-!cn和geosite:category-ads-all类别中 - 可移除自定义直连、代理和广告域名:由于上游域名列表存在需要被移除的域名,所以引入需要移除的域名列表。
hidden 分支里的三个文件direct-need-to-remove.txt、proxy-need-to-remove.txt和reject-need-to-remove.txt,分别存放自定义的需要从direct-list(直连域名列表)、proxy-list(代理域名列表)和reject-list(广告域名列表) 移除的域名 
规则文件下载及使用方式
下载地址:
如果无法访问域名
raw.githubusercontent.com,可以使用第二个地址(cdn.jsdelivr.net),但是内容更新会有 12 小时的延迟。
- geoip.dat:
 - geosite.dat:
 - 直连域名列表 direct-list.txt:
 - 代理域名列表 proxy-list.txt:
 - 广告域名列表 reject-list.txt:
 - Apple 在中国大陆可直连的域名列表 apple-cn.txt:
 - Google 在中国大陆可直连的域名列表 google-cn.txt:
 - GFWList 域名列表 gfw.txt:
 - Greatfire 域名列表 greatfire.txt:
 - Windows 操作系统使用的隐私跟踪域名列表 win-spy.txt:
 - Windows 操作系统使用的系统升级域名列表 win-update.txt:
 - Windows 操作系统使用的附加隐私跟踪域名列表 win-extra.txt:
 
使用方式:
- 安装适用于自己操作系统的客户端(推荐 V2Ray 客户端)
 - 下载本项目的 
geoip.dat和geosite.dat - 把下载下来的 
geoip.dat和geosite.dat放入到客户端的规则文件目录,替换掉原来的geoip.dat和geosite.dat - 如果使用的是 V2Ray 客户端,配置可参考下面 👇👇👇
 
参考配置
geoip.dat
跟 V2Ray 官方 geoip.dat 配置方式相同。
Routing 配置方式:
"routing": {
  "rules": [
    {
      "type": "field",
      "outboundTag": "Direct",
      "ip": [
        "223.5.5.5/32",
        "119.29.29.29/32",
        "180.76.76.76/32",
        "114.114.114.114/32",
        "geoip:cn",
        "geoip:private"
      ]
    },
    {
      "type": "field",
      "outboundTag": "Proxy",
      "ip": [
        "1.1.1.1/32",
        "1.0.0.1/32",
        "8.8.8.8/32",
        "8.8.4.4/32",
        "geoip:us",
        "geoip:ca",
        "geoip:telegram"
      ]
    }
  ]
}
geosite.dat
跟 V2Ray 官方 geosite.dat 配置方式相同。相比官方 geosite.dat 文件,本项目特有的类别:
geosite:apple-cn:包含 @felixonmars/dnsmasq-china-list/apple.china.conf 文件里的域名,供希望 Apple 域名直连(不走代理)的用户使用。geosite:google-cn:包含 @felixonmars/dnsmasq-china-list/google.china.conf 文件里的域名,供希望 Google 域名直连(不走代理)的用户使用。- [慎用]
geosite:win-spy:包含 @crazy-max/WindowsSpyBlocker/hosts/spy.txt 文件里的域名,供希望屏蔽 Windows 操作系统隐私跟踪域名的用户使用。 - [慎用]
geosite:win-update:包含 @crazy-max/WindowsSpyBlocker/hosts/update.txt 文件里的域名,供希望屏蔽 Windows 操作系统自动升级的用户使用。 - [慎用]
geosite:win-extra:包含 @crazy-max/WindowsSpyBlocker/hosts/extra.txt 文件里的域名,供希望屏蔽 Windows 操作系统附加隐私跟踪域名的用户使用。 
⚠️ 注意:在 Routing 配置中,类别越靠前(上),优先级越高,所以
geosite:apple-cn和geosite:google-cn要放置在geosite:geolocation-!cn前(上)面才能生效。
高级用法
v2fly/domain-list-community 项目 data 目录中某些列表里的规则会被标记诸如 @cn 的 attribute(如下所示),意为该域名在中国大陆有接入点,可直连。
steampowered.com.8686c.com @cn
steamstatic.com.8686c.com @cn
对于玩 Steam 国区游戏,想要直连的用户,可以设置类别 geosite:steam@cn 为直连,意为将 steam 列表内所有被标记了 @cn attribute 的规则(域名)设置为直连。同理,由于 category-games 列表包含了 steam、ea、blizzard、epicgames 和 nintendo 等常见的游戏厂商。设置类别 geosite:category-games@cn 为直连,即可节省大量服务器流量。
⚠️ 注意:在 Routing 配置中,类别越靠前(上),优先级越高,所以
geosite:category-games@cn等所有带有@cnattribute 的规则都要放置在geosite:geolocation-!cn前(上)面才能生效。
category-games列表内的规则(域名)可能会有疏漏,请留意规则命中情况。如发现遗漏,欢迎到项目 v2fly/domain-list-community 提 issue 反馈。
配置参考下面 👇👇👇
白名单模式 Routing 配置方式:
"routing": {
  "rules": [
    {
      "type": "field",
      "outboundTag": "Reject",
      "domain": ["geosite:category-ads-all"]
    },
    {
      "type": "field",
      "outboundTag": "Direct",
      "domain": [
        "geosite:private",
        "geosite:apple-cn",
        "geosite:google-cn",
        "geosite:tld-cn",
        "geosite:category-games@cn"
      ]
    },
    {
      "type": "field",
      "outboundTag": "Proxy",
      "domain": ["geosite:geolocation-!cn"]
    },
    {
      "type": "field",
      "outboundTag": "Direct",
      "domain": ["geosite:cn"]
    },
    {
      "type": "field",
      "outboundTag": "Proxy",
      "network": "tcp,udp"
    }
  ]
}
黑名单模式 Routing 配置方式:
"routing": {
  "rules": [
    {
      "type": "field",
      "outboundTag": "Reject",
      "domain": ["geosite:category-ads-all"]
    },
    {
      "type": "field",
      "outboundTag": "Proxy",
      "domain": ["geosite:gfw", "geosite:greatfire"]
    },
    {
      "type": "field",
      "outboundTag": "Proxy",
      "ip": ["geoip:telegram"]
    },
    {
      "type": "field",
      "outboundTag": "Direct",
      "network": "tcp,udp"
    }
  ]
}
DNS 配置方式:
"dns": {
  "hosts": {
    "dns.google": "8.8.8.8",
    "dns.pub": "119.29.29.29",
    "dns.alidns.com": "223.5.5.5",
    "geosite:category-ads-all": "127.0.0.1"
  },
  "servers": [
    {
      "address": "https://1.1.1.1/dns-query",
      "domains": ["geosite:geolocation-!cn"],
      "expectIPs": ["geoip:!cn"]
    },
    "8.8.8.8",
    {
      "address": "114.114.114.114",
      "port": 53,
      "domains": ["geosite:cn", "geosite:category-games@cn"],
      "expectIPs": ["geoip:cn"],
      "skipFallback": true
    },
    {
      "address": "localhost",
      "skipFallback": true
    }
  ]
}
自用 V2Ray 客户端配置(仅供参考,请根据自身需求酌情修改)
注意事项:
- 由于下面客户端配置的 DNS 使用了 
skipFallback选项,所以必须使用 v4.37.2 或更新版本的 V2Ray - 下面客户端配置使 V2Ray 在本机开启 SOCKS 代理(监听 1080 端口)和 HTTP 代理(监听 2080 端口),允许局域网内其他设备连接并使用代理
 - BT 流量统统直连(实测依然会有部分 BT 流量走代理,如果服务商禁止 BT 下载,请不要为下载软件设置代理)
 - 最后,不命中任何路由规则的请求和流量,统统走代理
 outbounds里的第一个大括号内的配置,即为 V2Ray 代理服务的配置。请根据自身需求进行修改,并参照 V2Ray 官网配置文档中的 配置 > Outbounds > OutboundObject 部分进行补全
{
  "log": {
    "loglevel": "warning"
  },
  "dns": {
    "hosts": {
      "dns.google": "8.8.8.8",
      "dns.pub": "119.29.29.29",
      "dns.alidns.com": "223.5.5.5",
      "geosite:category-ads-all": "127.0.0.1"
    },
    "servers": [
      {
        "address": "https://1.1.1.1/dns-query",
        "domains": ["geosite:geolocation-!cn", "geosite:google@cn"],
        "expectIPs": ["geoip:!cn"]
      },
      "8.8.8.8",
      {
        "address": "114.114.114.114",
        "port": 53,
        "domains": [
          "geosite:cn",
          "geosite:icloud",
          "geosite:category-games@cn"
        ],
        "expectIPs": ["geoip:cn"],
        "skipFallback": true
      },
      {
        "address": "localhost",
        "skipFallback": true
      }
    ]
  },
  "inbounds": [
    {
      "protocol": "socks",
      "listen": "0.0.0.0",
      "port": 1080,
      "tag": "Socks-In",
      "settings": {
        "ip": "127.0.0.1",
        "udp": true,
        "auth": "noauth"
      },
      "sniffing": {
        "enabled": true,
        "destOverride": ["http", "tls"]
      }
    },
    {
      "protocol": "http",
      "listen": "0.0.0.0",
      "port": 2080,
      "tag": "Http-In",
      "sniffing": {
        "enabled": true,
        "destOverride": ["http", "tls"]
      }
    }
  ],
  "outbounds": [
    {
      //下面这行,协议类别要改为socks、shadowsocks、vmess或vless等(记得删除本行文字说明)
      "protocol": "协议类别",
      "settings": {},
      //下面这行,tag的值对应Routing里的outboundTag,这里为Proxy(记得删除本行文字说明)
      "tag": "Proxy",
      "streamSettings": {},
      "mux": {}
    },
    {
      "protocol": "dns",
      "tag": "Dns-Out"
    },
    {
      "protocol": "freedom",
      "tag": "Direct",
      "settings": {
        "domainStrategy": "UseIPv4"
      }
    },
    {
      "protocol": "blackhole",
      "tag": "Reject",
      "settings": {
        "response": {
          "type": "http"
        }
      }
    }
  ],
  "routing": {
    "domainStrategy": "IPIfNonMatch",
    "domainMatcher": "mph",
    "rules": [
      {
        "type": "field",
        "outboundTag": "Direct",
        "protocol": ["bittorrent"]
      },
      {
        "type": "field",
        "outboundTag": "Dns-Out",
        "inboundTag": ["Socks-In", "Http-In"],
        "network": "udp",
        "port": 53
      },
      {
        "type": "field",
        "outboundTag": "Reject",
        "domain": ["geosite:category-ads-all"]
      },
      {
        "type": "field",
        "outboundTag": "Proxy",
        "domain": [
          "full:www.icloud.com",
          "domain:icloud-content.com",
          "geosite:google"
        ]
      },
      {
        "type": "field",
        "outboundTag": "Direct",
        "domain": [
          "geosite:tld-cn",
          "geosite:icloud",
          "geosite:category-games@cn"
        ]
      },
      {
        "type": "field",
        "outboundTag": "Proxy",
        "domain": ["geosite:geolocation-!cn"]
      },
      {
        "type": "field",
        "outboundTag": "Direct",
        "domain": ["geosite:cn", "geosite:private"]
      },
      {
        "type": "field",
        "outboundTag": "Direct",
        "ip": ["geoip:cn", "geoip:private"]
      },
      {
        "type": "field",
        "outboundTag": "Proxy",
        "network": "tcp,udp"
      }
    ]
  }
}
使用本项目的项目
致谢
- @v2fly/geoip
 - @Loyalsoldier/geoip
 - @v2fly/domain-list-community
 - @Loyalsoldier/domain-list-custom
 - @felixonmars/dnsmasq-china-list
 - @gfwlist/gfwlist
 - @pexcn/gfwlist-extras
 - @cokebar/gfwlist2dnsmasq
 - @Loyalsoldier/cn-blocked-domain
 - @lhie1/Rules
 - @AdblockPlus/EasylistChina+Easylist.txt
 - @AdGuard/DNS-filter
 - @PeterLowe/adservers
 - @DanPollock/hosts
 - @crazy-max/WindowsSpyBlocker