2dust / v2rayNG

A V2Ray client for Android, support Xray core and v2fly core
https://1.2345345.xyz
GNU General Public License v3.0
36.16k stars 5.52k forks source link

请问自定义路由规则该如何配置才能生效? #1345

Closed Gokou-Ruri closed 2 years ago

Gokou-Ruri commented 2 years ago

Screenshot_20220119-144954_v2rayNG

清空所有代理/直连自定义路由规则并关闭v2rayNG,重新打开v2rayNG并开启VPN,会发现之前能连接的域名现在依旧能连接(常见的例如google.com),之前不能连接的域名现在依旧连不上(例如少数境外服务器的私人小博客)。

版本:v1.6.28 (Lib v23, Xray-core v1.5.2) Android 11

举个例子: 在预定义规则为“绕开局域网和大陆地址”的情况下,将domain:ys.mihoyo.com,添加到自定义代理规则里,关闭v2rayNG再开启,访问https://ys.mihoyo.com/,会看到通知栏里的流量依旧是直连流量。 而当预定义规则为“全局”的情况下,将domain:ys.mihoyo.com,添加到自定义直连规则里,关闭v2rayNG再开启,访问https://ys.mihoyo.com/会看到通知栏里的流量依旧是代理流量。

ghost commented 2 years ago

首先,“自定义规则”的优先级比“预定义规则”高,其次建议你将预定义规则设置为“全局”,不要勾选“启用流量探测” ,勾选“启用本地DNS”。

而且你这种情况应该是domain:mihoyo.com,而不是domain:xxx.mihoyo.com,具体请参阅https://www.v2ray.com/chapter_02/04_dns.html

另外,建议自己配置geo文件,然后在自定义规则里直接设置geosite/geoip:xxx,即可。可参阅https://github.com/Loyalsoldier/v2ray-rules-dat

ghost commented 2 years ago

你如果要让xxx.com走代理:自定义规则>代理的网址或IP>domain:xxx.com, 如果要让它走直连:自定义规则>直连的网址或IP>domain:xxx.com,

ghost commented 2 years ago

就你上面所描述的域名,我这边完全可以将它设置为走代理或者走直连,没有任何问题。“xxx实际无效”这种issues显然不负责任,容易误导其他人。

Gokou-Ruri commented 2 years ago

首先,“自定义规则”的优先级比“预定义规则”高,其次你应该将预定义规则设置为“全局”,不要勾选“启用流量探测” ,勾选“启用本地DNS”。

而且你这种情况应该是domain:mihoyo.com,而不是domain:xxx.mihoyo.com,具体请参阅https://www.v2ray.com/chapter_02/04_dns.html

另外,建议自己配置geo文件,然后在自定义规则里直接设置geosite/geoip:xxx,即可。可参阅https://github.com/Loyalsoldier/v2ray-rules-dat

感谢指点!现在正常工作了。

另请教一下v2rayNG自定义路由规则是不支持端口和协议方式吗?如何才能排除某个APP的P2P流量呢?(此APP也有http境外流量)比如只代理80/443等常用端口。 例如类似下面的规则应该如何添加到v2rayNG?目前使用的geoip/geosite是 https://github.com/Loyalsoldier/v2ray-rules-dat

"routing": {
    "domainStrategy": "IPIfNonMatch",
    "domainMatcher": "mph",
    "rules": [
      {
        "type": "field",
        "outboundTag": "Direct",
        "protocol": ["bittorrent"]
      }
   ]
}

就你上面所描述的域名,我这边完全可以将它设置为走代理或者走直连,没有任何问题。“xxx实际无效”这种issues显然不负责任,容易误导其他人。

抱歉,标题目前已经修改过了,我还不太熟悉用法,造成其他用户的困扰了不好意思。

ghost commented 2 years ago

Duplicate of #

首先,“优先级的优先级定义规则”,“不准准许”“让DNS预定义设置为”,将“预先定义为”,勾选“启用流量检测”。 你这种情况应该是domain:mihoyo.com,而不是domain:xxx.mihoyo.com,具体请看https://www.v2ray.com/chapter_02/04_dns.html 另外,建议自己直接配置geo文件,然后在自定义规则里设置geosite/geoip:xxx,即可。可参见https://github.com/Loyalsoldier/v2ray-rules-dat

感谢指点!现在正常工作了。

请另外教一下rayNG自定义路由规则是不是也支持某类的流量和端口方式 ?规则应该如何添加到v2rayNG?目前使用的geoip/geosite是https://github.com/Loyalsoldier/v2ray-rules-dat

"routing": {
    "domainStrategy": "IPIfNonMatch",
    "domainMatcher": "mph",
    "rules": [
      {
        "type": "field",
        "outboundTag": "Direct",
        "protocol": ["bittorrent"]
      }
   ]
}

你下面的话题,我这个完全可以直接连带它设置的问题,或者说没有任何代理可以将问题实际处理掉”。

抱歉,标题目前的修改结束了,我还很受用,给其他用户造成了很大的麻烦。

只能通过“分应用代理”来完全绕开或完全代理某个APP,NG目前是不支持端口规则的。其实你这个需求和应用场景更适合用Kitsunebi:https://github.com/eycorsican/kitsunebi-android

Gokou-Ruri commented 2 years ago

Duplicate of #

首先,“优先级的优先级定义规则”,“不准准许”“让DNS预定义设置为”,将“预先定义为”,勾选“启用流量检测”。 你这种情况应该是domain:mihoyo.com,而不是domain:xxx.mihoyo.com,具体请看https://www.v2ray.com/chapter_02/04_dns.html 另外,建议自己直接配置geo文件,然后在自定义规则里设置geosite/geoip:xxx,即可。可参见https://github.com/Loyalsoldier/v2ray-rules-dat

感谢指点!现在正常工作了。 请另外教一下rayNG自定义路由规则是不是也支持某类的流量和端口方式 ?规则应该如何添加到v2rayNG?目前使用的geoip/geosite是https://github.com/Loyalsoldier/v2ray-rules-dat

"routing": {
    "domainStrategy": "IPIfNonMatch",
    "domainMatcher": "mph",
    "rules": [
      {
        "type": "field",
        "outboundTag": "Direct",
        "protocol": ["bittorrent"]
      }
   ]
}

你下面的话题,我这个完全可以直接连带它设置的问题,或者说没有任何代理可以将问题实际处理掉”。

抱歉,标题目前的修改结束了,我还很受用,给其他用户造成了很大的麻烦。

只能通过“分应用代理”来完全绕开或完全代理某个APP,NG目前是不支持端口规则的。其实你这个需求和应用场景更适合用Kitsunebi:https://github.com/eycorsican/kitsunebi-android

谢谢推荐,kitsunebi以前用过,它不支持协议(protocol)规则,而且在Android 10以后就不能开机启动了。所以后来就换成了v2rayNG。

nanbobike commented 2 years ago

新版PAC

其实不但有而且更好用了 简单设置打开就好 详情请看 2022/5/18 1) 主流V2Ray客户端不再支持PAC代理模式,影响及应对-『白云居』 第一步:打开高级路由 image 第二:右键选择”白名单“ image

istomyang commented 1 year ago

首先,“自定义规则”的优先级比“预定义规则”高,其次建议你将预定义规则设置为“全局”,不要勾选“启用流量探测” ,勾选“启用本地DNS”。

而且你这种情况应该是domain:mihoyo.com,而不是domain:xxx.mihoyo.com,具体请参阅https://www.v2ray.com/chapter_02/04_dns.html

另外,建议自己配置geo文件,然后在自定义规则里直接设置geosite/geoip:xxx,即可。可参阅https://github.com/Loyalsoldier/v2ray-rules-dat

您好!首先感谢您的工作!我想请教一下,预定义规则设置为全局,是不是 不能匹配规则的site/ip 都会通过代理?我想仅规定能代理的site/ip(这个是有限的),其余走直连,特殊情况(网页某地方无法显示)可以暂时开启全局访问。是否可以?

Jinx-Q commented 1 year ago

某些小众域名不走代理连接不上,只能开全局代理。但这样切换麻烦,也影响访问国内的网站。想加这些小众域名进规则里面让它走代理访问,真的好麻烦,看了你们上面的讨论,完全一头雾水,依然找不到设置的地方。类似的这种用户需求,为什么不设置一个简单的选项,直接复制域名进去,识别走代理不就好?普通用户哪里管底层什么路由规则,研究完这些学习成本太高了。