我当然需要一些帮助:
我有两台 Windows Server 2008 R2 x64 终端服务器,以及几台 2003 服务器(DNS / Wins / AD / DC)。在两台 2008 机器上,它们时不时会进入这种模式,即您无法将驱动器映射到随机服务器。我说随机服务器是因为您无法映射到的服务器并不总是同一个服务器。
以下是我能做什么和不能做什么的总结:
net view \\servername
有时这个方法有效,有时无效。这个方法总是
net view \\FQDN
有效。这个方法总是有效。 有时这个方法有效,有时无效。这个方法总是有效。这个方法总是有效。
net view \\IPAddress
ping servername
ping FQDN
ping IPAddress
我一直在寻找解决方案。看来微软现在肯定已经有一个修补程序了。
最关键的是,它有时运行良好,尤其是在重新启动后。它可能会运行 2 周,但突然无法解析远程服务器名称。然后它会这样几天,然后可能会再次开始工作。此外,当它处于不工作模式时,其他服务器可以毫无问题地到达那里。只是这些 2008 R2 终端服务器。
在 Hosts 文件和 LMHosts 中设置静态条目无法使其工作。所有服务器都有静态 IP,并且它们在 DNS 和 Wins 中注册得很好。
这里有一个MS Technet 上关于同一问题的长帖,但他们没有好的解决方案。这是他们的解决方法(从 2010 年 6 月开始):
好消息 - 正在开发一个修补程序,并且已确定了一种解决方法:
根本原因是由于这是 SMB1,因此所有用户会话都在与远程服务器的单个 TCP 连接上。第一个发起与远程 SMB 服务器的连接的用户的登录 ID 被添加到定义连接的结构中。如果该用户注销,则该 TCP 会话的所有后续使用都会失败,因为登录 ID 不再有效。目前,为了防止问题发生,您需要让用户不要注销终端服务器,而只是断开他们的会话。
有谁能告诉我解决方案吗?任何帮助我都会非常感激。
谢谢,詹姆斯
答案1
这听起来像是名称解析过程中的一个错误。由于 IP 和 FQDN 都可以正常工作,所以在我看来 SMB 工作得很好。但是 hosts/lmhosts 无法修复该问题也表明名称解析存在问题,并且在进入 DNS 解析步骤之前发生了问题。
验证它是否正在尝试对这些进行 DNS 解析或查看它正在尝试解析什么的一种方法是,一旦受影响的服务器进入该状态,尝试对其进行数据包捕获。查看它尝试解析的各种排列(如果有)应该会提供一些线索。
- 如果它尝试解析所有错误但找不到正确的域名,您可能需要查看网络连接上的 DNS 后缀列表。
- 如果没有与相关服务器相关的 DNS 流量,则问题出在软件进行 DNS 解析之前的某个地方。这是 Microsoft 的问题,请保留数据包捕获,因为他们可能会要求提供数据包捕获。
- 如果它确实通过 DNS 正确地将服务器名称解析为 IP,但仍然不起作用,则表明堆栈中的其他地方存在故障,可能是在防病毒或第三方防火墙区域。或者是需要 Microsoft 注意的错误。