如果启动nslookup并打开调试,您会发现Windows总是首先尝试附加其后缀。
C:\>nslookup
Default Server: itads.example.com
Address: 0.0.0.0
> set debug=true
> www.yahoo.com
Server: itads.example.com
Address: 0.0.0.0
------------
Got answer:
HEADER:
opcode = QUERY, id = 2, rcode = NXDOMAIN
header flags: response, auth. answer, want recursion, recursion avail.
questions = 1, answers = 0, authority records = 1, additional = 0
QUESTIONS:
www.yahoo.com.example.com, type = A, class = IN
AUTHORITY RECORDS:
-> example.com
ttl = 3600 (1 hour)
primary name server = itads.example.com
responsible mail addr = itads.example.com
serial = 12532170
refresh = 1200 (20 mins)
retry = 600 (10 mins)
expire = 1209600 (14 days)
default TTL = 3600 (1 hour)
------------
------------
Got answer:
HEADER:
opcode = QUERY, id = 3, rcode = NOERROR
header flags: response, want recursion, recursion avail.
questions = 1, answers = 4, authority records = 0, additional = 0
QUESTIONS:
www.yahoo.com, type = A, class = IN
ANSWERS:
-> www.yahoo.com
canonical name = www.wa1.b.yahoo.com
ttl = 241 (4 mins 1 sec)
-> www.wa1.b.yahoo.com
canonical name = www-real.wa1.b.yahoo.com
ttl = 30 (30 secs)
-> www-real.wa1.b.yahoo.com
internet address = 209.131.36.158
ttl = 30 (30 secs)
-> www-real.wa1.b.yahoo.com
internet address = 209.191.93.52
ttl = 30 (30 secs)
------------
Non-authoritative answer:
Name: www-real.wa1.b.yahoo.com
Addresses: 209.131.36.158, 209.191.93.52
Aliases: www.yahoo.com, www.wa1.b.yahoo.com
如您所见,我的机器尝试首先查找www.yahoo.com.example.com,然后DNS服务器响应NXDOMAIN
(未找到条目)。您可以通过运行来确认这一点nslookup www.yahoo.com.
(注意.com末尾的点!),您将看到它可以正常解析。
发生的情况是您的外部 DNS服务器正在响应它们具有“ www.yahoo.com.example.com”的条目,并正在返回站点根目录的IP地址。我不确定您使用的服务是什么,但是我猜测您有一个通配符映射,该映射告诉服务器使用有效响应来响应任何未知查询,而不是返回NXDOMAIN
。你需要仔细检查您的设置服务器并确认它设置为仅回应查询条目它实际上有(example.com
,www.example.com
,mail.example.com
等)。
请记住,DNS通过检查已配置的服务器并从那里向上运行来工作。DNS查询可以采用类似于以下模式的路径(当然,这只是一个示例,可能是错误的):机器->本地路由器DNS(linksys)-> ISP DNS->(第二个ISP DNS?)->根服务器DNS-> TLD DNS->您的外部DNS服务器。沿着这条路的人说那www.yahoo.com.example.com
存在。可能是您的外部DNS服务器。
编辑
我想我还会再提一提您提到的随机性。如果确实偶尔发生这种情况,则可能是外部DNS服务器配置错误,或者他们的ISP提供了DNS劫持服务。不幸的是,我已经看到越来越多的住宅ISP为无效域名提供“搜索服务”。由于几乎所有最终用户都使用其ISP DNS服务器,因此ISP现在开始将无效的域条目重定向到搜索页面-通常载有广告,不相关的链接和一个小的“您是说www.example.com吗?”的搜索页面。结果可能与域名无关,也可能与域名无关。我知道Verizon和Comcast开始这样做,我相信Quest也开始这样做。另一种可能性是OpenDNS,因为如果没有,它们会提供相同的“搜索相关域”
我提出这个问题的问题是,您说它正在返回根记录的地址,如果他们试图搜索,则这些都不做,他们会给您一个IP他们的网络服务器来处理搜索。