远程桌面连接错误:DNS 缓存中的条目已过期
用户开始抱怨,当尝试使用标准 RD 客户端 (mstsc.exe) 连接到运行 Windows Server 2008 R2 的 RDS(远程桌面服务器)场时,他们经常会收到错误消息:
连接无法完成,因为到达的远程计算机不是您指定的计算机。这可能是由 DNS 缓存中的过时条目引起的。尝试使用计算机的 IP 地址而不是名称。
RDS 场的配置:3 台运行 Windows Server 2008 R2 的服务器,带有 RD 连接代理,用于在终端之间分配工作负载并重新连接到当前会话。错误时常发生的事实表明农场的其中一台服务器出现了问题。通过顺序搜索,找到了问题服务器,我们使用其IP地址远程连接到其桌面。
为了以防万一,我再次在 DNS 中运行服务器记录注册:
ipconfig /registerdns
并在几分钟内重置客户端上的本地 DNS 缓存:
ipconfig /flushdns但这没有帮助。服务器没有其他问题,因此我不得不使用 Microsoft 知识库中的一篇文章:https://support.microsoft.com/kb/2493594(与运行 Windows Server 2008 R2 的远程桌面服务器的 RDP 连接可能会失败,并显示消息“无法联系本地安全机构”)。
本文中的解决方案将用于加密 RDP 连接的协议级别从 SSL(TLS 1.0 用于身份验证)降低到 RDP 安全层(集成且安全性较低的 RDP 加密)。
注意。此设置位于远程桌面会话主机配置 -> Microsoft RDP 7.1 -> 属性 -> 安全层
但在我们的配置中,使用协商方法,如果客户端不支持第一种方法,该方法会自动从 TLS 切换到 RDP 安全层。
完全是偶然,我注意到问题服务器上的时间与域控制器上的时间不同。事实上,事实证明,这台服务器(虚拟服务器)位于 VMWare ESXi 主机上,时间错误,并且在 VMWare Tools 设置中启用了与主机虚拟机管理程序的时间同步选项(虚拟机和 ESX Server 之间的时间同步)。
我必须禁用 ESXi 同步并重新启动 Windows 时间服务才能与 DC 同步时间。
net stop w32timenet start w32time之后,用户可以正常连接到RDS场的所有服务器。
注意。如果您尝试按名称连接到 RDS 场中的特定服务器,也会出现错误“这可能是由 DNS 缓存中的过时条目引起的”。在这种情况下,连接代理可能会将客户端重定向到另一个 RD 主机(具有另一个 DNS 名称和 IP 地址),这会导致指定的地址与服务器的地址之间存在差异,并且客户端在尝试身份验证后返回错误。因此,请始终指定要连接的 RD 场名称。


