Nick Peng
Nick Peng
配置里面应该有其他地方设置了speed-check-mode ,排查下。 还有,如果要返回多IP地址,要确保开启cache,并且开启过期缓存。
修改了一下,用最新代码看看。
当前设计就是关闭测速后,仅会使用响应最快的DNS结果,并不会将所有结果合并。 目前看来,将所有结果合并没有太多意义。
whitelist-ip blacklist-ip
nslookup dns.msftncsi.com 看一下这个是否能解析 131.107.255.255
代码是有tag的。tag下载的时候,是带版本号的。 比如这个:https://github.com/pymumu/smartdns/archive/refs/tags/Release35.zip
最新版本发下出问题时的log,带debug的log
看了log,原因是,上游dns,除了114,其他的DNS服务器都返回AAAA地址SOA,IPV6地址不存在。 所以,smartdns,按照多数先响应原则,返回了SOA。 这个我考虑下怎么处理吧。 你可以先把dns_server.c:2406行注释掉临时规避。 注释掉这个,会导致不存在的域名响应时间变长。但这种情况下有V6地址的话,就会返回V地址。 也可以试试将 2405改成: ```shell if (atomic_inc_return(&request->soa_num) >= (dns_server_num() / 2)) { ```
仔细看了log,你smartdns运行的设备IPV6是不可用的,导致smartdns无法启用ipv6测速。 在这种情况下,就是那个上游返回快,用那个的结果。如果返回快的dgss3.bdstatic.com是SOA,那就直接返回SOA给客户端了。