pymumu / smartdns

A local DNS server to obtain the fastest website IP for the best Internet experience, support DoT, DoH. 一个本地DNS服务器,获取最快的网站IP,获得最佳上网体验,支持DoH,DoT。
https://pymumu.github.io/smartdns/
GNU General Public License v3.0
7.93k stars 1.05k forks source link

不添加Cloudflare Dns服务器则无法解析任何域名 #1620

Closed lushangkan closed 5 months ago

lushangkan commented 5 months ago

问题现象

之前一直用的是阿里+DnsPod+Cloudflare+Google的DNS。 有天要在dl.google.com下载点东西,但是每次都给我解析到美国IP,国内连不上。 尝试关闭smartdns直接解析域名,发现是有中国服务器的。 再次打开smartdns,将测速模式改为最快IP,并清除缓存,但还是解析到美国的IP。 于是尝试将Cloudflare和Google的dns禁用,仅用国内dns服务器解析。 但禁用后,所有域名无法解析,包括国内外网站。 尝试在Windows下执行ipconfig /flushdns,然后再尝试nslookup bilibili.com手动解析网站,结果返回:

服务器:  smartdns
Address:  192.168.123.1

DNS request timed out.
    timeout was 2 seconds.
DNS request timed out.
    timeout was 2 seconds.
*** 请求 smartdns 超时

尝试多几个网站,结果都一样。 于是我将Cloudflare dns启用,发现就能正常解析域名了。

演示动图: https://drive.google.com/file/d/1Od-Q34hPeq6iKk7hVRQx-o1RGHzSsOm3/view?usp=sharing (文件过大无法上传到issue)

运行环境

  1. 固件型号
    coolsnowwolf/lede commit: 9c8d196759109eb5df2db7ba7d30e3ba30d6712e Xiaomi Redmi AC2100

  2. 运营商
    广东电信

  3. smartdns来源以及版本 来源: coolsnowwolf仓库 自行编译 版本: 1.2023.42-1

  4. 涉及的配置(注意去除个人相关信息) 默认配置+自定义DNS,详细请看下一项

重现步骤

  1. 上游DNS配置。

    阿里DNS 223.5.5.5 tls/https
    DnsPod DNS 1.12.12.12 tls/https
    Cloudflare DNS 1.1.1.1 tls/https
  2. 访问的域名。

    baidu.com
    cutemc.cn
    dl.google.com
    google.com
    bilibili.com

    详细请看动图

信息收集
禁用Cloudflare DNS时的log: https://drive.google.com/file/d/1HZ8QF0xmLV5cZXg24tc5TzIV0F4Xfonb/view?usp=sharing

pymumu commented 5 months ago

你运行smartdns的设备,无法和223.5.5.5,1.12.12.12连通。检查你的网络

PikuZheng commented 5 months ago

单看日志,是这个192.168.123.1到223.5.5.5和1.12.12.12都不通。建议ssh连进去,检查一下到这两个ip的tcp/853连通情况。 cf猜测用的是https,不是853

zxlhhyccc commented 5 months ago

尝试多几个网站,结果都一样。 于是我将Cloudflare dns启用,发现就能正常解析域名了。

我是使用hy2节点,smartdns运行后经常断链接,无法解析国外域名,同样的配置使用ss等其他节点就正常,不知道是什么原因! 其次,我国内使用排查默认组,国外默认组,也是一样的情况,但是国内默认组国外排查组就貌似好些,但出现dns泄露情况,不知道什么问题引起的!

lushangkan commented 5 months ago

单看日志,是这个192.168.123.1到223.5.5.5和1.12.12.12都不通。建议ssh连进去,检查一下到这两个ip的tcp/853连通情况。 cf猜测用的是https,不是853

nmap扫描结果相反,223.5.5.5和1.12.12.12的443和853可连通,1.1.1.1被阻断。 路由器(smartdns服务器)扫描结果: image 局域网内扫描结果: image

lushangkan commented 5 months ago

你运行smartdns的设备,无法和223.5.5.5,1.12.12.12连通。检查你的网络

nmap扫描结果相反,223.5.5.5和1.12.12.12的443和853可连通,1.1.1.1被阻断。 路由器(smartdns服务器)扫描结果: image 局域网内扫描结果: image

lushangkan commented 5 months ago

你运行smartdns的设备,无法和223.5.5.5,1.12.12.12连通。检查你的网络

使用-sS选项扫描三个dns都显示被阻断,使用curl手动请求发现223.5.5.5无法连接,1.1.1.1则可以,可能是防火墙问题,在排除

PikuZheng commented 5 months ago

0.012秒,是被抢答了吧,我这ping都要0.036秒。1.1.1.1那个0.16秒看起来倒是正常的,符合电信线路的特征

lushangkan commented 5 months ago

发现是因为新建的一个静态IP接口导致的,接口是用来访问电信光猫后台的,删了就正常,可能是请求的数据走了那个接口的问题。