首次尝试时无法通过名称访问 Win 2k3 服务器

首次尝试时无法通过名称访问 Win 2k3 服务器

我不是管理员,但由于我们的常规人员正在休假,问题就落在了我的头上。我会尽可能简短地讲。

我们注意到我们的 SQL Server 2005 实例表现得很奇怪:应用程序启动,应用程序无法连接到数据库。但是,应用程序在重新启动后工作正常。SQL Server Managemetn Studio 也是如此。在多台网络计算机上都观察到了这种行为,因此它可能不是客户端问题。同时,使用服务器的 IP 地址始终有效,对我这个新手来说,这看起来像是名称解析问题。

按名称 ping 服务器,Destination host unreachable第一次尝试会成功,后续尝试都会成功。等待一段不确定的时间后,同样的循环会重复。再次,ping 服务器的 IP 可以完美运行。

事件查看器在 DNS 部分包含错误 4004 和 4015。使用 Google 修复这些错误的尝试目前尚未成功。

问题:有简单的解决办法吗?

更新

我设法通过重新安装 DNS 服务消除了错误 4004,尽管错误 4015 仍然存在。

我注意到的另一件有趣的事情与第一次 ping 失败有关:

Pinging oxyserver [169.254.2.62] with 32 bytes of data:
Reply from 169.254.74.29: Destination host unreachable.
Reply from 169.254.74.29: Destination host unreachable.

我不知道它是如何得到这个 IP 地址(169.254.2.62)的,因为此后,ping 就正确获取了服务器的 IP 地址,并且工作正常:

Pinging oxyserver [192.168.1.201] with 32 bytes of data:
Reply from 192.168.1.201: bytes=32 time<1ms TTL=128
Reply from 192.168.1.201: bytes=32 time<1ms TTL=128

更新2

根据要求,结果dnscmd /info

Query result:
Server info
        server name              = oxyserver.Oxy.loc
        version                  = 0ECE0205 (5.2 build 3790)
        DS container             = cn=MicrosoftDNS,cn=System,DC=Oxy,DC=loc
        forest name              = Oxy.loc
        domain name              = Oxy.loc
        builtin domain partition = ForestDnsZones.Oxy.loc
        builtin forest partition = DomainDnsZones.Oxy.loc
        last scavenge cycle      = not since restart (0)
  Configuration:
        dwLogLevel               = 00000000
        dwDebugLevel             = 00000000
        dwRpcProtocol            = FFFFFFFF
        dwNameCheckFlag          = 00000002
        cAddressAnswerLimit      = 0
        dwRecursionRetry         = 3
        dwRecursionTimeout       = 15
        dwDsPollingInterval      = 180
  Configuration Flags:
        fBootMethod                  = 3
        fAdminConfigured             = 0
        fAllowUpdate                 = 1
        fDsAvailable                 = 1
        fAutoReverseZones            = 1
        fAutoCacheUpdate             = 0
        fSlave                       = 0
        fNoRecursion                 = 0
        fRoundRobin                  = 1
        fStrictFileParsing           = 0
        fLooseWildcarding            = 0
        fBindSecondaries             = 1
        fWriteAuthorityNs            = 0
        fLocalNetPriority            = 1
  Aging Configuration:
        ScavengingInterval           = 0
        DefaultAgingState            = 0
        DefaultRefreshInterval       = 168
        DefaultNoRefreshInterval     = 168
  ServerAddresses:
 Addr Count = 2
                Addr[0] => 192.168.1.201
                Addr[1] => 169.254.2.62
  ListenAddresses:
        NULL IP Array.
  Forwarders:
        NULL IP Array.
        forward timeout  = 5
        slave            = 0
Command completed successfully.

这两个地址显然是一个危险信号。

在“网络连接/高级”中更改 NIC 的优先级似乎已经解决了错误 4015。但是,原始问题仍然存在。

答案1

鉴于它第一次尝试时给出的 APIPA 地址,我倾向于认为您的名称服务器已损坏,或者某处有错误的 DNS 记录。检查返回错误地址的主机的记录。

试试这个:打开命令提示符。输入ipconfig /flushdns。现在尝试 ping 服务器并查看结果。

答案2

您的服务器有多少个 NIC?我曾在工作中看到过此错误,当时 [不知何故] 另一个 NIC 的优先级被设置为高于主 NIC。

编辑 你能检查一下你的 ARP 缓存吗?我认为 Daniel 已经发现了 APIPA 的一些问题。

打开命令提示符并输入arp -a并发布输出。

答案3

“按名称 ping 服务器会导致第一次尝试时无法访问目标主机”

这里可能有点“牵强”,但您可以查看一下服务器 NIC 上的电源管理设置。通常在所有设置和运行后,它不应更改。

答案4

我设法通过禁用第二个网络适配器(TAP-Win32 Adapter v9)解决了该问题,该适配器被列为断开连接,但由于某种原因被分配了一个 IP 地址。

感谢大家的帮助。Josh 建议我运行 ,这促使我找到了解决方案arp -a。当它没有返回 169.xxx 地址的任何内容时,我突然想运行ipconfig /all,结果将 169.xxx 地址列在另一个 NIC 旁边。简单地禁用然后重新启动就可以解决问题。

相关内容