目标:
想要在2台机器上复制一个文件夹
情况:我们在一个域中有两台Windows 2003服务器(为此目的),每台服务器有两块网卡; 每个服务器有2个ips,一个在局域网上,一个在互联网上,如:
20.20.0.100,192.168.0.100
20.20.0.101,192.168.0.101
问题:当我使用DFSpipe理工具在两台服务器之间创build一个复制时,它select了公用Iips而不是LAN Iips; 而我们的局域网要快得多 我怎么能告诉DFS复制使用LAN IP?
我不知道DFS-R的任何configuration参数来控制它绑定的接口,或者影响它如何select合作伙伴接口来路由stream量。 做一个快速的search,我会从微软存储团队的博客(尽pipe从2006年) 这个肮脏的黑客 ,表明你应该使用每个复制集成员的HOSTS文件影响他们的名字resoultion,使你有效地“ “他们使用私人IP地址。
这是一个丑陋的黑客,我通常反对使用HOSTS文件。 在这种情况下,它可能是完成你想要做的事情的唯一方法。
相反,做HOSTS文件破解(如果你这样做,你应该logging,以便下一个工作的人知道为什么这样做)我还有一个你可能会尝试的想法。
尝试在每台DFS-R复制集计算机上放置其他主机的主机路由。 如果有效,使路线持久。 我大概在80/20左右,认为这不会起作用,但是值得一试:
成员1: route add 20.20.0.101 mask 255.255.255.255 192.168.0.100
成员2: route add 20.20.0.100 mask 255.255.255.255 192.168.0.101
这可能只是为了让stream量通过私人networking。 (如果我今天早上没有接受“妻子”的命令来完成一些家务劳动,我会亲自尝试一下,告诉你它是否正常工作……如果她今天早上在服务器错误上抓到我,会不好…>微笑<)
这是一个假设,你需要进行一些调查,但这是我的想法:
DFS根目录和链接目标通过主机名来标识(虽然可以根据IP地址而不是主机名来创build链接目标),但是这些主机名是使用DNSparsing的,如果您使用公有IP地址configurationNIC来不注册与DNS(这是真正应该如何configuration,无论如何),那么只有局域网内部网卡的IP地址将被parsing为每台服务器的主机名,这应该强制复制使用局域网的网卡。
这似乎是非常接近埃文引用的解决scheme,但不需要在每个主机上使用主机文件或静态路由。
我find了一个方法来实现这个!
我使用DFSR同步两台服务器S1(Windows Server 2008)和S2(Windows Server 2008 R2)。
我这样做的方法是将Active Directory用户和计算机中的每个服务器的dNSHostName属性更改为第二个网卡上的一个,例如s1.system.int和s2.system.int。
看来DFSR在同步之前先看这个属性,瞧!
但是,我刚刚重新启动,不得不再次设置设置,不知道如何使它坚持在AD。
我也不知道还有什么使用这个dNSHostName属性,所以要警告!