it-swarm.cn

如何配置Windows计算机以允许使用DNS别名共享文件

配置Windows环境以允许我使用DNS CNAME引用服务器需要什么过程?

我想这样做,以便可以将服务器命名为SRV001,但仍然有\\filepoint指向该服务器,所以当SRV002替换它时,我不必更新人们拥有的任何链接,只需更新DNS CNAME,每个人都将指向新服务器。

81
Michael Ferrante

为了促进故障转移方案,常用的技术是对不同的计算机角色使用DNS CNAME记录(DNS别名)。然后,您可以更改DNS记录以指向新的主机,而不用更改实际计算机名的Windows计算机名。

这可以在Microsoft Windows计算机上工作,但是要使其与文件共享一起工作,需要采取以下配置步骤。

大纲

  1. 问题
  2. 解决方案
    • 允许其他计算机通过DNS别名使用文件共享(DisableStrictNameChecking)
    • 允许服务器计算机通过DNS别名(BackConnectionHostNames)自身使用文件共享
    • 提供多个NetBIOS名称(OptionalNames)的浏览功能
    • 为其他Windows功能(如打印(setspn))注册Kerberos服务主体名称(SPN)
  3. 参考文献

1.问题

在Windows机器上,文件共享可以通过计算机名称(带有或不带有完整限定符)或IP地址来工作。但是,默认情况下,文件共享在任意DNS别名下将不起作用。要使文件共享和其他Windows服务能够与DNS别名一起使用,必须按以下所述对注册表进行更改,然后重新启动计算机。

2.解决方案

允许其他计算机通过DNS别名使用文件共享(DisableStrictNameChecking)

单独进行此更改将允许网络上的其他计算机使用任意主机名连接到该计算机。 (但是,此更改将不允许计算机通过主机名连接到自身,请参阅下面的BackConnectionHostNames)。

  • 编辑注册表项HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters并添加DWORD类型的值DisableStrictNameChecking设置为1。

  • 编辑注册表项(在2008 R2上)HKLM\SYSTEM\CurrentControlSet\Control\Print并添加DWORD类型的值DnsOnWire设置为1

允许服务器计算机通过DNS别名(BackConnectionHostNames)自身使用文件共享

要使DNS别名与从计算机上的文件共享一起工作以查找自身,此更改是必需的。这将创建可在NTLM身份验证请求中引用的本地安全机构主机名。

为此,请对客户端计算机上的所有节点执行以下步骤:

  1. 到注册表子项HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0,添加新的多字符串值BackConnectionHostNames
  2. 在“数值数据”框中,键入用于计算机上本地共享的CNAME或DNS别名,然后单击“确定”。
    • 注意:在单独的行中键入每个主机名。

提供多个NetBIOS名称(OptionalNames)的浏览功能

允许在网络浏览列表中查看网络别名。

  1. 编辑注册表项HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters并添加类型为Multi-String的值OptionalNames
  2. 在以换行符分隔的名称列表中添加应在NetBIOS浏览条目下注册的名称
    • 名称应与NetBIOS约定匹配(即不是FQDN,仅是主机名)

为其他Windows功能(如打印(setspn))注册Kerberos服务主体名称(SPN)

注意:基本功能正常运行不需要这样做,此处出于完整性目的在此处记录。在一种情况下,DNS别名不起作用是因为存在旧的SPN记录,因此,如果其他步骤不起作用,请检查是否有任何杂散的SPN记录。

您必须为所有新的DNS别名(CNAME)记录注册Kerberos服务主体名称(SPN),主机名和完全限定的域名(FQDN)。如果您不这样做,则对DNS别名(CNAME)记录的Kerberos票证请求可能会失败,并返回错误代码KDC_ERR_S_SPRINCIPAL_UNKNOWN

要查看新DNS别名记录的Kerberos SPN,请使用Setspn命令行工具(setspn.exe)。 Setspn工具包含在Windows Server 2003支持工具中。您可以从Windows Server 2003启动盘的Support\Tools文件夹中安装Windows Server 2003支持工具。

如何使用该工具列出计算机名的所有记录:

setspn -L computername

要为DNS别名(CNAME)记录注册SPN,请使用具有以下语法的Setspn工具:

setspn -A Host/your_ALIAS_name computername
setspn -A Host/your_ALIAS_name.company.com computername

3.参考

所有Microsoft参考均通过以下方式工作: http://support.Microsoft.com/kb/

  1. 连接到SMB基于Windows 2000的计算机或基于Windows Server 2003的计算机上的共享可能无法使用别名。
    • 涵盖使文件共享与其他计算机到服务器计算机的DNS别名记录一起正常工作的基础。
    • KB281308
  2. 当您尝试在安装Windows Server 2003 Service Pack 1后使用其FQDN或CNAME别名在本地访问服务器时出现错误消息:“访问被拒绝”或“没有网络提供商接受给定的网络路径”
    • 介绍如何使DNS别名与文件服务器本身的文件共享一起使用。
    • KB926642
  3. 如何在Windows Server 2003和Windows 2000 Server中使用DNS别名(CNAME)记录合并打印服务器
    • 涵盖了更复杂的场景,在该场景中,可能需要更新Active Directory中的记录,以使某些服务正常运行以及浏览此类服务正常运行,如何注册Kerberos服务主体名称(SPN)。
    • KB870911
  4. 分布式文件系统更新以支持Windows Server 2003中的合并根
    • 使用DFS讨论更复杂的场景(讨论OptionalNames)。
    • KB829885
67
Michael Ferrante

使用冗余进行Windows文件共享的另一种方法是使用带复制的分布式文件系统(DFS-R)。为了实现此目的,文件服务器上至少需要Windows Server 2003 R2。

设置DFS根目录,然后可以指定提供单个共享的多个服务器。如果其中一台服务器出现故障,则使用该服务器的客户端将自动故障转移到其他服务器之一。

有关更多信息,请参见Microsoft的 DFS概述

11
Joe