Windows DNS服务器:在NXDOMAIN响应前3秒钟

我想知道是否有一种方法来控制NXDOMAIN响应之前所需的时间。 在我看来,如果查询不存在的logging,服务器回复NXDOMAIN需要3秒钟。 在Windows Server 2008 R2和Windows Server 2012 R2中都会出现这种情况。 我有一个数据包捕捉下面。 对于我的问题,我的服务器是权威的example.com和example2.com:

09:13:06.846116 IP 10.200.242.165.49505 > 10.200.1.13.53: 33831+ A? asr-1.example.com. (46) 09:13:09.855028 IP 10.200.1.13.53 > 10.200.242.165.49505: 33831 NXDomain* 0/1/0 (112) 

我打了一个我知道不存在的主机,但似乎已经花了整整3秒钟才告诉我它不存在(从09:13:06到09:13:09)。 为避免你认为它正在转发到某个地方来parsingasr-1.example.com,如果我使用nslookup -norecurse asr-1.example.com. ,我会得到相同的结果nslookup -norecurse asr-1.example.com.

只是为了向您显示服务器的速度确实很快,以下是从我在其实际域中查找主机的位置捕获的数据包输出:

 09:13:09.855416 IP 10.200.242.165.49542 > 10.200.1.13.53: 47128+ A? asr-1.example2.com. (46) 09:13:09.855889 IP 10.200.1.13.53 > 10.200.242.165.49542: 47128* 1/0/0 (62) 

这是一个0.4毫秒的响应…所以这不是我的DNS服务器很慢。

所以…有没有办法configurationDNS服务器不要等待这么长时间才能返回一个NXDOMAIN响应的权威域名?

我发现这个问题。 我是networking工程师,而不是广告人,所以我最初并没有设置DNS – 他们只是慷慨地给我访问它。 问题是该域的WINS选项卡被configuration为“使用WINS正向查找”。 如果单击“高级”,则会出现“Looukp超时”设置,该设置为2秒。 如果我禁用WINS转发,它将立即返回NXDOMAIN。 好极了!

请注意, 授权名称服务器可以立即回复NXDOMAIN ,因为它不必等待转发器迭代查询 。 在这种情况下,你的Windows Server是一个recursion的 DNS服务器。 所以总会有一些延迟,但可以稍微调整一下。

可以configuration转发查询超时之前的秒数

  1. 打开dnsmgmt.msc
  2. 右键单击DNS服务器的名称,然后select“ 属性”
  3. 在转发器选项卡上单击编辑…。

    编辑转发器

  4. select秒数。

    • 缺省值是3
    • 最小值应为2 ,否则在所有迭代完成之前,查询可能会超时。
    • >10不build议>10秒钟,因为客户端可能在响应之前超时。

相当于命令行是dnscmd /resetforwarders

 dnscmd <ServerName> /ResetForwarders <MasterIPaddress ...> [/TimeOut <Time>] [/Slave]