为Windows计算机添加多个替代DNS名称

Jacki

在迁移方案中,通常有必要使用旧主机名访问Windows服务器(计算机)。通过新名称访问计算机的最简单方法是向指向旧的FQDN名称(记录)的DNS添加别名(CNAME)。


可以使用DNS Manager控制台添加旧主机名的cname别名(dnsmgmt.msc)或通过add-dnsserverresourcerecordcordcname命令:

Add-DnsServerResourceRecordCName -ZoneName woshub.loc -Name new-wks11 -HostNameAlias wks11.woshub.loc

但是,如果您创建了DNS别名,则使用新的主机名访问计算机时无法执行Kerberos身份验证。这是因为当您将DNS记录添加到计算机时,A​​D对象属性中的SPN(服务主名)值未更新。

Windows Server具有内置netdom.exe可用于正确添加其他主机名的命令。例如,如果要在FS01计算机中添加第二个主机名,请使用替代FQDN运行以下命令:

netdom computername fs01 /ADD new-fs01.woshub.loc

在DNS中注册新名称:

ipconfig /registerdns

NETDOM命令将在DNS中注册CNAME记录,将新名称添加到eLTERTATECOMPUTERNAMES注册表参数(如下所述),并更新servicePrincipalNamemsDS-AdditionalDnsHostNameAD中计算机帐户的属性。

列出所有注册的计算机名称:

建议阅读:配置DNS清除以清理AD中的陈旧DNS记录

netdom computername m-dc01 /enum

获取计算机帐户的注册SPN:

setspn.exe -L fs01

Windows 10和11中缺少NetDom.exe命令,因此您需要更改注册表以手动添加一个其他主机名。

添加替代DNS名称:

  1. HKLMSystemCurrentControlSetServicesDNSCacheParameters注册表密钥,创建一个称为reg_multi_sz参数替代eComputernames
  2. 为此指定另一个FQDN名称(或多个名称)(每行一个FQDN)
  3. 在DNS中注册计算机名称:ipconfig /registerdns
  4. 将新的计算机名称添加到SPN:
    SETSPN -a host/new-wks11 wks11
    SETSPN -a host/new-wks11_name.woshub.loc wks11

要向计算机添加替代的NetBios名称,请创建可选名称参数(reg_multi_sz)HKLMSystemCurrentControlSetServicesLanManServerParametersreg键。

然后重新启动Lanmanserver服务:

net stop lanmanserver
net start lanmanserver

如果由于某种原因无法在AD中更新计算机的SPN,请创建一个称为reg_dword参数残障限制((HKLMSystemCurrentControlSetServicesLanmanServerParameters)并设置为1。这将允许以新名称访问该计算机上的共享SMB文件夹。