我最近将一个旧的基于 Win2008R2 的域更新为一个基于 Win2019 的新域(使用常见的升级/降级/退役操作)。这是为一个非常小的办公室(3 个人)准备的,所以这是一个单 DC 设置,其中旧的和新的 DC 都兼作文件服务器。
为此,我创建了一个 DNS 别名,将旧名称(即olddc.example.com
:)指向新名称(即newdc.example.com
:)。到目前为止,一切顺利:所有客户端都可以使用旧名称和新名称访问新的 DC/文件服务器。但是,我忘记正式将旧 DC 的名称(作为别名)添加到新 DC。换句话说,我没有发出类似以下内容:
netdom computername newdc.example.com /add:olddc.example.com
今天我在新的 DC 上,出于记忆力,我尝试通过旧名称访问其自己的共享(打开 Explorer 并写入\\olddc.example.com
)。 Explorer 立即抱怨“凭据错误”,并且确实显示了 Wireshark 转储STATUS_LOGON_FAILURE
。 我发出了netdom
上述命令(添加olddc.example.com
为别名),问题就解决了:服务器现在可以通过旧名称查看其自己的共享。
netdom
我知道并理解为什么应通过(或通过单独的命令)添加备用/别名setspn
。然而,令我惊讶的是,所有显示的 Win10 客户端毫无怨言即使没有提供这样的替代名称。
那么,为什么 Win10 客户端完全没有问题,而服务器却立即停止使用“未知”DNS 别名访问自己的共享?是因为服务器和客户端操作系统之间的一些不同设置吗?还是与访问环回共享有关?
答案1
环回 SMB 连接的处理方式确实与外部连接不同:https://docs.microsoft.com/en-us/troubleshoot/windows-server/networking/accessing-server-locally-with-fqdn-cname-alias-denied。
(本文引用了 Windows Server 2003,但它仍然适用。)
答案2
问题 在 Windows 计算机上,文件共享可以通过计算机名称(有或没有完整限定)或 IP 地址进行。但是,默认情况下,文件共享不能与任意 DNS 别名一起使用。要使文件共享和其他 Windows 服务能够与 DNS 别名一起使用,您必须按照下文所述进行注册表更改并重新启动计算机。
解决方案允许其他机器通过 DNS 别名使用文件共享(DisableStrictNameChecking)仅此更改将允许网络上的其他机器使用任意主机名连接到该机器。(但是,此更改不允许机器通过主机名连接到自身,请参阅下面的 BackConnectionHostNames)。
• 编辑注册表项 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters 并添加一个 DWORD 类型的值 DisableStrictNameChecking,并将其设置为 1。