我不知道自己在用 DNS 做什么,也知道我无知的程度,但我被要求尝试排除远程网络上的远程设备的故障,而这两个网络我都无法访问。似乎发生的情况是,在特定网络上,DHCP 配置的设备无法解析名称。在所有其他网络上,一切正常,所以我们只能考虑这个特定网络上与 DHCP 和可能的 DNS 相关的特殊行为。
在 Windows 主机上调用nslookup
此远程网络如下:
nslookup
>server ns1.[theserver].net
Default Server: ns1.[theserver].net
Addresses: 1716:efb7::3
125.75.227.17
> set timout=10
> set q=ns
> [bigsubdomainnamewithdashes].[thedomaininquestion].com
Server: ns1.[theserver].net
Addresses: 1716:efb7::3
125.75.227.17
*** ns1.[theserver].net can't find [bigsubdomainnamewithdashes].[thedomaininquestion].com:No response from server
但单独指定 IPv4 地址ns1.[theserver].net
是可行的。
> server 125.75.227.17
Default Server: [125.75.227.17]
Address: 125.75.227.17
> [bigsubdomainnamewithdashes].[thedomaininquestion].com
Server: [125.75.227.17]
Address: 125.75.227.17
Non-authoritative answer:
[bigsubdomainnamewithdashes].[thedomaininquestion].com canonical name = [yep a cname].com [yep a cname].com canonical name = [yep a cname].us-east-1.elb.amazonaws.com
这种交互行为nslookup
令人惊讶。在前一种情况下,nslookup
知道一个命名服务器有两个可用的 IP 地址,即 IPv4 和 IPv6,但它不会解析具有 IPv4 地址的名称。在后一种情况下,nslookup
提供了一个 IPv4 地址,并按预期解析了名称。
由于我承认自己无知,我不想跳到看似明显的答案,因此我提交了这个问题,“当 nslookup 同时获得 IPv4 和 IPv6 地址时,它会执行什么魔法?”