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

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

我想知道是否有办法控制在给出 NXDOMAIN 响应之前所需的时间。在我看来,如果查询不存在的记录,则服务器需要 3 秒钟才能回复 NXDOMAIN。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)

我 ping 了一个我知道不存在的主机,但它似乎花了整整 3 秒钟才告诉我它不存在(从 09:13:06 到 09:13:09)。以免你认为它转发到某个地方来解析 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 服务器很慢。

那么... 有没有办法配置 DNS 服务器,使其不必等待太长时间才返回其具有权威性的域的 NXDOMAIN 响应?

答案1

我发现了这个问题。我是网络工程师,不是 AD 人员,所以我最初没有设置 DNS——他们只是慷慨地给了我访问权限。问题是域的 WINS 选项卡配置为“使用 WINS 正向查找”。如果单击“高级”,则有一个“查找超时”设置,设置为 2 秒。如果我禁用 WINS 转发,它会立即返回 NXDOMAIN,正如预期的那样。太棒了!

答案2

请注意权威性名称服务器可以立即回复,NXDOMAIN因为它不必等待货运代理或者迭代查询。在这种情况下,您的 Windows Server 是递归dns服务器。因此总会有些延迟,不过可以稍微调整一下。

可以配置转发查询超时前的秒数

  1. 打开域名管理系统
  2. 右键单击 DNS 服务器的名称并选择特性
  3. 在转发器选项卡上,单击编辑...

    編輯貨運輸

  4. 选择秒数。

    • 默认为3
    • 最小值应为2,否则查询可能会在所有迭代完成之前超时。
    • >10秒数也不建议,因为客户端可能会在响应之前超时。

命令行等效于dnscmd /resetforwarders

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

相关内容