muink / luci-app-homeproxy

A homeproxy fork with clash api, selector/urltest node, subscribes grouping & ruleset support (stable version)

Home Page:https://github.com/muink/homeproxy

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

反复测试了这个问题如何解决?

onlyfirer opened this issue · comments

同一个节点科学,如果默认DNS是远程DNS就会被墙的,换成默认为国内的DNS就可以出去,但是测试DNS泄漏的时候就有国内的DNS
但也有一种节点,不管默认DNS是远程DNS还是国内的DNS,他都可以出去。当然用默认国内DNS的话测试dns泄漏时也是有内的DNS
如下图:
1-2
出站是这个:芝麻开门
001
这个是采用默认为远程的,那么接到YY相关的节点都出不去。然后free 开头的节点可以出去,
001

两个不同机场的节点。但是只有我在芝麻开门这里选择了free节点后,但youtube选的是YY 的节点同样可以科学了。
只要在芝麻开门这个地方换成YY的节点就全部出不去了,包括国内(这里没有绕过国内的设置)也不能上网了。
第二种形式:
2
把默认的改成国内的就都 可以科学了,在芝麻开门这里也不一定要选free节点了,全部都可以科学上网,但是就是DNS检测时有国内的
这是什么原因造成的?
有没有办法解决?

请发去除了隐私信息的config文件 /etc/config/homeproxy

我发配置文件放了两对不同的节点
测试看下是什么问题!

上面这个配置把网卡的IPV6开启与禁止的国内访问速度延迟不一样。
第一张是开启的
1
第二张是禁止IPV6网卡信息
2

简单解释下原因:

默认dns服务器 Cloudfale 的地址是域名, 需要解析为 ip 才能访问到. 故它首先要请求到自身的 dns.quad9.net 的 ip 地址才能开始工作.
所以 dns.quad9.net 的 dns请求经由 Cloudfale 这个 dns server 项设置的出站 芝麻开门 向外发出, 但是 yy 节点的地址也是域名而不是 ip , 同样需要进行 dns 解析为 ip , 而且大概率不匹配 dnsrule:cn_domain 也不匹配 dnsrule:google_domain , 那么就会走默认的dns服务器, 也就是 Cloudfale. boom陷入死循环了! 但是 free 节点是 ip 地址, 直接就能连接不需要dns解析, 所以就没有这个问题.
Snipaste_2024-04-15_19-13-03
Snipaste_2024-04-15_19-12-22

解决办法:

这条规则加到 dns rules 最上面
image
另外, 这两条规则, 如果你的目的是 匹配cn ruleset走直连outbound匹配国外 ruleset走芝麻开门outbound 的话, 建议去掉, 因为这个是 匹配来自指定 outbound 的 dns请求, 而不是前面的目的
Snipaste_2024-04-15_19-50-17
Snipaste_2024-04-15_19-48-41

@muink 非常感谢大佬解释说明,参照您的办法问题解决了,原因是我对这个DNS规则这的服务器的作用没有搞明,谢谢了!