v2rayN的路由设置
新版本变化
最近升级了v2rayN的系统,发现了没有了原来的pac模式,变成了简单的:清楚系统代理,自动配置代理,不改变系统代理。

其中改变系统代理就是变成了以前的那种全局代理的模式,一开始并不了解,而且由于不支持PAC模式后,好多你不想代理的流量都走到v2ray去了。
旧模式 |

新模式 |

所以这种情况下我们就需要花点时间去配置路由了。
PS:
清除系统代理就是不代理了,而不改变系统代理,如果你有前端PAC分流的话,否则这个选项也是不代理的意思,所以建议使用自动配置系统代理。
Geo文件的使用
新版v2rayN下载时候自带了两个Geo文件(路由规则文件)
"geosite.dat":提供一个预定义好的 「全球域名」 列表;
"geoip.dat" :提供一个预定义好的 「全球 ip-地区」 列表.
里面的域名常用分类:
category-ads:包含了常见的广告域名。
category-ads-all:包含了常见的广告域名,以及广告提供商的域名。
cn:相当于 geolocation-cn 和 tld-cn 的合集。
google:包含了 Google 旗下绝大部分域名。
microsoft:包含了 Microsoft 旗下绝大部分域名。
geolocation-!cn:包含了常见的非大陆站点域名,同时包含了 tld-!cn。
tld-cn:包含了 CNNIC 管理的用于中国大陆的顶级域名,如以 .cn、.中国 结尾的域名。
tld-!cn:包含了非中国大陆使用的顶级域名,如以 .hk(香港)、.tw(台湾)、.jp(日本)、.sg(新加坡)、.us(美国).ca(加拿大)等结尾的域名。
category-games: 包含了 steam、ea、blizzard、epicgames 和 nintendo 等常见的游戏厂商。
当然,如果你还有别的需求,可以看 https://github.com/v2fly/domain-list-community/tree/master/data 下具体的名称,如果你觉得它的规则不准确,这边也有一份国人专门设置的加强版规则: https://github.com/Loyalsoldier/v2ray-rules-dat 这是一个加强版合集,只需要下载geosite.dat和geoip.dat两个文件之后,替换掉v2rayN文件路径下的同名文件就行。
PS:
如果使用加强版记得开启:更新Core时忽略Geo文件

高级用法
如果你看到data目录下有

后面带有@cn标识,说明该域名有cn接口,想要直连的用户,可以设置类别geosite:steam@cn 为直连,意为将steam列表内所有被标记了 @cnattribute 的规则(域名)设置为直连。
需要注意的是:在路由配置中,类别越靠前(上),优先级越高,所以
geosite:category-games@cn等所有带有@cnattribute 的规则都要放置在geosite:geolocation-!cn前(上)面才能生效。
路由其他功能
这边顺带解释一下其他的几个配置的说明:

域名解析策略
AsIs:只使用域名进行路由选择,默认值;
推荐值
IpIfNonMatch:当域名没有匹配任何基于域名的规则时,将域名解析成 IP 然后去匹配,如果IP多,那就一直匹配到有为止。
IpOnDemand:如果有IP 的规则,立即将域名解析为 IP 进行匹配。
域名匹配算法
“hybrid”:使用新的域名匹配算法,速度更快且占用更少。默认值。
推荐值
“linear”:使用原来的域名匹配算法。
分享配置
先说下我的日常模式,我比较经常访问谷歌搜索和GitHub两个地方,其他的网站我希望全部都是走直连的,所以我用如下配置:
代理的Domain或IP:
Domain下配置:
geosite:google,
geosite:github
直连的Domain或IP:
Domain下配置:
geosite:cn
IP下配置:
geoip:private,
geoip:cn
阻止的Domain或IP:
Domain下配置:
geosite:category-ads-all
这套配置实现了,所有国内的网站走直连,谷歌和Github走代理,而且还有广告屏蔽的功效。
如果你有一个域名不在这里面,但是你想要让它走代理/直连可以添加:domain:xxxx.com,或者ip:xxxxx
PS:
也可以直接使用域名,但是如果使用domain:xxxx.com,会匹配该域名下的所有子域名,至于匹配规则我觉得太过复杂,如果不是需求太奇特,一般用不到。
高端玩家
该功能需要玩家有一定的知识储备,我个人不是很建议
系统是支持高级模式的,点击启用路由高级功能,然后点击高级功能,添加规则集:

打开之后,输入自己定义的名称,接下来就是重头戏:

这边有个白名单模式(即在GFW的域名进行代理,其他的不走),有两种方式添加:
一种输入:
https://raw.githubusercontent.com/2dust/v2rayCustomRoutingList/master/custom_routing_rules_whitelist
然后点击从订阅的URL导入规则即可,一种就是打开链接,然后选择从剪贴板导入规则。
接下来我们分析下对应的文件。以下规则已经被我修改,建议直接打开链接后复制
[
{
"outboundTag": "direct", #直连的域名配置
"domain": [
"domain:example.com",
"domain:example2.com"
]
},
{
"type": "field",
"outboundTag": "block", #阻止的域名配置,下面是广告的域名Geo配置
"domain": [
"geosite:category-ads-all"
]
},
{
"type": "field",
"outboundTag": "direct", #直连的域名配置,内部包含个人域名,苹果,谷歌,和中国的域名
"domain": [
"geosite:private",
"geosite:apple@cn",
"geosite:google@cn",
"geosite:tld-cn"
]
},
{
"type": "field",
"outboundTag": "proxy", #代理的域名配置,不是中国网址
"domain": [
"geosite:geolocation-!cn"
]
},
{
"type": "field",
"outboundTag": "direct", #直连的IP配置,中国的IP和个人的IP
"ip": [
"geoip:private",
"geoip:cn"
],
"domain": [
"geosite:cn"
]
},
{
"type": "field", #这个是端口,忽略
"port": "0-65535",
"outboundTag": "proxy"
}
]
其实和我上面设置的一样。只不过是更加方便的导入而已。
我更加推荐这个配置:所有端口都是直连,如果有特定网站再走代理,还添加了广告过滤。有上不去的,再进行添加。
[
{
"outboundTag": "block",
"domain": [
"geosite:category-ads-all"
]
},
{
"outboundTag": "proxy",
"domain": [
"geosite:google"
]
},
{
"port": "0-65535",
"outboundTag": "direct"
}
]
DNS优化
根据 https://github.com/chenxv399/v2ray-rules-dat 推荐,建议使用,可以抵抗DNS污染
使用方法:
设置-参数设置-DNS设置-直接curl+v粘贴规则
规则:
{
"hosts": {
"dns.google": "8.8.8.8",
"dns.pub": "119.29.29.29",
"dns.alidns.com": "223.5.5.5",
"dns.opendns.com":"208.67.222.222",
"geosite:category-ads-all": "127.0.0.1"
},
"servers": [
{
"address": "208.67.222.222",
"port": 5353,
"domains": ["geosite:geolocation-!cn"],
"expectIPs": ["geoip:!cn"]
},
"8.8.8.8",
"9.9.9.9",
{
"address": "114.114.114.114",
"port": 53,
"domains": ["geosite:cn", "geosite:category-games@cn"],
"expectIPs": ["geoip:cn"],
"skipFallback": true
},
{
"address": "localhost",
"skipFallback": true
}
]
}
看下来,就是查询hosts里面的DNS,没有则使用OPENDNS(208.67.222.222这个ip所指),进行查询,要求域名/ip不是中国的,如果是中国的域名/ip使用114这个DNS.
实际使用下来,建议配置。










暂无评论内容