为什么我的 DNS MX 查询返回 SOA 记录?

为什么我的 DNS MX 查询返回 SOA 记录?

我正在使用 PowerShell 获取 MX 记录数组。我想知道为什么以下命令会返回 SOA 记录,因为我已为类型参数指定了 MX。

Resolve-DnsName $SomeDomainName -type MX -Server 8.8.8.8 -DnsOnly -ErrorAction Stop

答案1

您所看到的几乎肯定只是负面回应。

“未找到”响应有两种类型,即NXDOMAINNODATA

  • NXDOMAIN意味着姓名查询中请求的记录根本不存在。
    此类响应在部分中有状态NXDOMAIN和相关记录(部分中没有任何内容)。SOAAUTHORITYANSWER

  • NODATA意味着姓名查询中请求的确实存在,但没有请求的记录类型针对该名称。此类响应具有状态NOERROR(它没有自己的状态)并SOAAUTHORITY部分中有相关记录(部分中没有任何内容ANSWER)。

我快速浏览了一下Resolve-DnsName,我的印象是,其不一致的行为无助于您理解正在发生的事情。
在响应的情况下,NXDOMAIN它会抛出错误,但在响应的情况下,NODATA它会返回响应,就好像它是成功的一样。这看起来很奇怪,这两种类型的响应是类似的故障模式,但无论出于什么原因,它们被 完全不同地处理Resolve-DnsName

为了更容易地理解正在发生的事情,我建议花一点时间dig,以便您可以看到这两种情况的完整答复。

相关内容