DNS 错误和不存在的子域

hen*_*ght -1 domain-name-system github

当我访问 nothinghere.mysite.tld 时,出现 DNS 错误。但是,如果您观察 anyhere.google.com 和 anyhere.example.com 的行为,您将看到没有 DNS 错误。

注意:doesnotexist.mysite.tld、random.mysite.tld等不存在;所有不存在的子域似乎都受到影响。在这种情况下出现 DNS 错误的原因可能是什么?

注 2:我将 GitHub Pages 与 CloudFlare 一起使用。

更新:如果我清除浏览器缓存,则不会发生 DNS 错误。我在 random.lsquo.com 上看到的行为与在 random.google.com 上看到的行为完全相同。这很好,因为这正是我想要的。但是,当我再次访问 lsquo.com 并再次访问 random.lsquo.com 时,我再次看到 DNS 错误。

Håk*_*ist 5

首先,在所有提到的示例中出现 DNS 错误是正常的(它们都random.google.com没有解析,也没有解析random.lsquo.com)。

但是,在查看您的屏幕截图时,重要的是要注意您实际上并没有收到 DNS 错误random.lsquo.com,而是收到“连接超时”。

您配置的 DNS 服务器(可能由您的 ISP 提供)似乎会进行 NXDOMAIN 劫持,在这种情况下,它们会生成无法解析的名称,即 NXDOMAIN 状态,解析到某些为其产生收入的页面。

访问您的网站后改变行为的是您使用 HSTS 并说该策略也适用于子域。
即,includeSubDomainsStrict-Transport-Security: max-age=15552000; includeSubDomains; preload

在您的情况下,浏览器也被 NXDOMAIN 劫持所欺骗,但是由于托管 NXDOMAIN 劫持站点的服务器不执行 HTTPS(如果这样做,它无论如何都不会为您的域提供有效证书,因此即使尝试也无济于事),浏览器无法连接。

总而言之,由于您的 HSTS 政策,您的域在上述示例中表现最好。好的!