V2Ray 路由规则文件加强版,可代替 V2Ray 官方 geoip.dat
和 geosite.dat
,适用于 V2Ray、Xray-core、mihomo、hysteria、Trojan-Go、leaf。使用 GitHub Actions 北京时间每天早上 6 点自动构建,保证规则最新。
- 通过仓库 @Loyalsoldier/geoip 生成
- 默认使用 MaxMind GeoLite2 Country CSV 数据生成各个国家和地区的 GeoIP 文件。所有可供使用的国家和地区 geoip 类别(如
geoip:cn
,两位英文字母表示国家或地区),请查看:https://www.iban.com/country-codes - 中国大陆 (
geoip:cn
) IPv4 地址数据融合了 IPIP.net 和 @gaoyifan/china-operator-ip - 中国大陆 (
geoip:cn
) IPv6 地址数据融合了 MaxMind GeoLite2 和 @gaoyifan/china-operator-ip - 新增类别(方便有特殊需求的用户使用):
geoip:cloudflare
geoip:cloudfront
geoip:facebook
geoip:fastly
geoip:google
geoip:netflix
geoip:telegram
geoip:twitter
希望定制
geoip.dat
文件?需要适用于其他代理软件的 GeoIP 格式文件?查看项目 @Loyalsoldier/geoip。
- 基于 @v2fly/domain-list-community/data 数据,通过仓库 @Loyalsoldier/domain-list-custom 生成
- 加入大量中国大陆域名、Apple 域名和 Google 域名:
- @felixonmars/dnsmasq-china-list/accelerated-domains.china.conf 加入到
geosite:china-list
和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 生成
- 加入到
geosite:gfw
类别中,供习惯于 PAC 模式并希望使用 GFWList 的用户使用 - 同时加入到
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 配置方式
- 可添加自定义直连、代理和广告域名:由于上游域名列表更新缓慢或缺失某些域名,所以引入需要添加的域名列表。
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
。 如果无法访问域名cdn.jsdelivr.net
,可以将其替换为fastly.jsdelivr.net
。*.sha256sum 为校验文件。
- geoip.dat:
- geosite.dat:
- 直连域名列表 direct-list.txt:
- 代理域名列表 proxy-list.txt:
- 广告域名列表 reject-list.txt:
- @felixonmars/dnsmasq-china-list 仓库收集的在中国大陆可直连的域名列表 china-list.txt:
- Apple 在中国大陆可直连的域名列表 apple-cn.txt:
- Google 在中国大陆可直连的域名列表 google-cn.txt:
- GFWList 域名列表 gfw.txt:
- Windows 操作系统使用的隐私跟踪域名列表 win-spy.txt:
- Windows 操作系统使用的系统升级域名列表 win-update.txt:
- Windows 操作系统使用的附加隐私跟踪域名列表 win-extra.txt:
点击查看在 V2Ray 和 Xray-core 中的使用方法
需要先下载 geoip.dat
格式文件,并放置在程序目录内。
"routing": {
"rules": [
{
"type": "field",
"outboundTag": "Direct",
"ip": [
"geoip:cn",
"geoip:private",
"ext:cn.dat:cn",
"ext:private.dat:private",
"ext:geoip-only-cn-private.dat:cn",
"ext:geoip-only-cn-private.dat:private"
]
},
{
"type": "field",
"outboundTag": "Proxy",
"ip": [
"geoip:us",
"geoip:jp",
"geoip:facebook",
"geoip:telegram",
"ext:geoip-asn.dat:facebook",
"ext:geoip-asn.dat:telegram"
]
}
]
}
点击查看在 mihomo 中的使用方法
geodata-mode: true
geox-url:
geoip: "https://cdn.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/geoip.dat"
点击查看在 hysteria 中的使用方法
需要先下载 geoip.dat
格式文件,并放置在 hysteria 程序目录内。
direct(geoip:cn)
proxy(geoip:telegram)
proxy(geoip:us)
点击查看在 Trojan-Go 中的使用方法
需要先下载 geoip.dat
格式文件,并放置在 Trojan-Go 程序目录内。
"router": {
"enabled": true,
"bypass": ["geoip:cn"],
"proxy": ["geoip:telegram", "geoip:us"],
"block": ["geoip:jp"],
"default_policy": "proxy",
"geoip": "./geoip.dat"
}
跟 V2Ray 官方 geosite.dat
配置方式相同。相比官方 geosite.dat
文件,本项目特有的类别:
geosite:china-list
:包含 @felixonmars/dnsmasq-china-list/accelerated-domains.china.conf 文件里的域名,供有特殊 DNS 分流需求的用户使用。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
等所有带有@cn
attribute 的规则都要放置在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"]
},
{
"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
}
]
}
注意事项:
- 由于下面客户端配置的 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"
}
]
}
}