DNS失败,没有错误报告

昨天,我们将SP1应用于运行Windows Server 2008 R2的DNS服务器。

更新DNS失败后。 事件日志中没有失败代码; 它表示服务已经开始,所有的意图和目的都像是在工作。

但是,当我去DNS属性,监测选项卡,然后单击“现在testing”它说,简单和recursion查询都失败了。

事件logging被设置为logging所有事件。

由于某种原因,今天早些时候它工作了几分钟。 但自从再次停止。

任何想法,我可以检查?

注:我做了一个DNS服务重新启动,它回来了网上; 一会儿。 然后又走了。

编辑:(4/5/11)2个月后,同样的问题。 现在DNS在运行之前运行一段时间。 但是,当它确实没有错误。

我们最近拿出了一个特定的路由器,到目前为止,还没有这个复发。

我将把它记入两种可能性之一。 无论是一个片状路由器发送请求,导致DNS服务器坦克; 或MS解决了这个问题。

无论哪种方式,closures。

UPDATE

与生活中的所有事物一样,还有更多。 较新的路由器死了,我们用Linksys RV082取代它,这个问题又开始出现了。

多一点研究,我发现这是一个问题的组合。 首先,Windows Server 2008 R2默认使用名为EDNS0的扩展来发送DNS请求。 但是,在发生DNS故障的情况下,如果没有该扩展名,就不会再发送该请求。

一些路由器显然要么完全丢弃,要么至less截断超过512字节的UDP数据包。 正常的DNS比这less,但是EDNS0扩展可以轻易超越它。 有些人指的是我们尝试过的几个思科路由器。 是的,第一个路由器也是思科(不同型号)。 第二个路由器是其他品牌。

不幸的是,这些特定的路由器不允许我们select允许更大的UDP数据包; 或者,如果他们这样做,这是隐藏的,我一直没能find正确的开关。

通常情况下,这不是一个问题, 似乎有一个MS DNS服务器的错误,导致它完全停止解决DNS查询时发生一定数量的故障。 这就需要重新启动它将在一段时间内运行的DNS服务。

解决办法是简单地closuresEDNS0支持 。

命令是: dnscmd /config /EnableEDNSProbes 0

尝试使用dcdiag工具,它可以帮助您识别问题。 另外,在您的DNS服务器上,您是否已经在适配器上select的DNS中进行了自动注册?