3个服务器之间的DFS和复制网格 – 如何select本地服务器

作为一个例子,我有3个DFS服务器都在不同的子网上,每个子网上都有一个权威的初始共享( \\svr1\accounts\\svr2\sales\\svr3\hr )。

我已经在所有服务器(网格)上启用复制,以便在每台服务器上拥有3个共享(即svr1将拥有3个共享accountssaleshr ,而其他2台服务器也相同)。

由于每个文件夹有多个源共享,客户端如何知道要连接的共享(我们希望连接到本地文件服务器,而不是通过慢速VPN连接)。

DFS-R如何在上述情况下工作? 我看到两种可能性:

  1. 我可以使用根名称空间,即\\mydomain.local\file\accounts并将其自动redirect到本地服务器(基于延迟或活动目录站点子网)

  2. 或者我必须手动指向本地服务器,即\\svr1\accounts (牺牲svr1下去我松散连接)?

如果是第一种可能性,是否需要进行configuration?

免责声明:我正在绘制我的第一个DFS实现,所以我的理解来自书籍(特别是Windows Server 2012:在这种情况下),而不是实践。 但是,我肯定对这个答案感兴趣。

假设我理解你的问题,我想你问了两个不连贯的问题:

  • DFS如何复制?
  • 什么决定了给定客户端连接的服务器?

根据Windows Server 2012:Inside Out (大约1244页左右),当一个客户请求一个基于域的命名空间的引用时,它看起来是一个域控制器(这里是DC)的指导。 然后,DC通过存储在几个内存caching中的数据来作出响应,这些caching描述了DFS和站点结构。

首先,DC检查引用caching以获取有关请求对象的信息。 如果找不到相关对象,则DC将find“该名称空间的DFS对象”以生成一个引用对象,以传递给客户端。 引用对象包含客户端可以使用的UNCpath的列表。

由DC调查以build立引用对象的caching包括站点成本caching客户端目标站点caching以及其他一些caching 。 引用对象是否包含从这些源收集的信息,以便客户端可以从UNCpath中select最佳path,或者如果服务器根据对“接近度”的评估来限制返回给客户端的UNCpath, 。

进一步说,这听起来像站点configuration,特别是链接权重,通知“邻近”计算。

最后,我觉得手动将客户端指向特定的服务器将首先破坏实施DFS背后的主要原因之一; 即:为客户端添加一个抽象层来查找/访问文件共享,而不pipe该共享位于哪个服务器上。 (这也允许pipe理员在需要时移动所述共享,同时限制重新configurationlogin脚本等的需要)

PS:不好意思, 我刚到家,不得不研究这个东西。

编辑:所以,基本上,我认为你需要做的是确保configuration每个网站…以及你有的网站。 IE:您可能希望为通过WAN复制的每台服务器创build一个站点。 另外,如果这是一个基于域的DFS实现,那么您将需要考虑您的数据中心所在的位置 – 因为客户将要求最近的DC进行UNC引用。

DFS命名空间根据内部评分自动select“想法”端点。 理想情况下,这意味着它将始终select与您最近的服务器并在同一子网上。 不过,从我的经验来看,这并不总是会发生。

命名空间和复制是两个不同的东西,彼此协同工作,因此您可以在没有复制方面的情况下复制没有可见的命名空间和命名空间。 但是,在这种情况下,我将使用根名称空间进行映射。