起因是最近代理不稳定,发现代理节点挂掉,国外的 DNS 无法正常工作情况下,国内部分小众域名将会无法解析(不在 geosite:cn 列表中),一部分可以直连国外网站也会无法解析.
在设置为 规则模式走 Direct 和 Direct 模式情况下,依然无法解析,才发现 Real-IP 在这种情况下有解析问题。
我们以 Mihomo 内核举例:
情况一、为了防止 DNS 泄露,一般除了国内域名( geosite:cn ),都是使用 EDNS+国外 DNS 方式查询( NameServer ),有些可能设置了 direct-nameserver (不影响结果)
情况二、geosite:gfw 全走国外 DNS ,其他 NameServer 都是使用国内 DNS 查询( NameServer ),有些可能设置了 direct-nameserver (不影响结果)
SingBox 内核也有相同问题,但是会比 Mihomo 情况好很多(因为可以手动设置解析逻辑,就是比较掉头发罢了)
而 Fake-IP 在这点上就没问题了,直接给客户端发送假 IP ,直接跳到分流层面上;
不必在意 NameServer 是国内还是国外,需要代理域名直接给代理节点发送域名( 99%情况不会发送 IP 的);
而直连域名就通过内核配置 DNS 解析 IP ,由内核中转发送到目标
所以有没有一种方式,当解析超时时候,发送 Fake-IP ,直接到分流层次;或者可以设置 FallBack (此 FallBack 非彼 FallBack )
1
butanediol2d 6 小时 22 分钟前
为什么 Fake IP 没问题? Mihomo 只在遇到 IP 规则的时候才会去解析域名的 IP ,这一点无论是否使用 Fake IP 都是一样的吧?
除非软件非要自己解析 IP ,不然一般走 socks/http 代理的时候,软件都会直接把域名交给代理。我感觉理论上是否用 Fake IP 都不影响。 |
2
ENE OP @butanediol2d 因为软件域名解析超时拿不到 IP ,直接报错了; 而 FAKEIP 直接发假 IP 不会有这个问题
|
3
ENE OP @butanediol2d 你说的仅限于 sock 和 http ,如果是 tun 或者 tproxy 模式的话就是我上面说的
|
4
cairnechen 5 小时 40 分钟前
@ENE sing-box 规则 reject 的时候也会遇到这个问题吧,但是我记得有个兜底策略,连续请求多少次就直接 drop 不 reject 了
|
5
ENE OP @cairnechen 对,reject 的是这样。我现在是吧国外 DNS 单独设置一个组,通过 Auto urltest 选择一个可用节点代理 DNS
|
6
butanediol2d 4 小时 8 分钟前
@ENE 哦那确实,但是我感觉 TUN 模式的话推荐用 fake ip 吧。
|