将服务器join域后强制进行活动目录复制?

我正在尝试为开发人员创build更多的“自助服务”虚拟机。 要求是在运行脚本引导机器并将其join域之后,机器的本地域控制器立即将其数据(例如新注册的机器名称)复制回主企业域控制器。

这应该允许开发人员立即通过DNS名称而不是IP地址来访问机器。

剧本:

  • 以交互方式捕获域pipe理员凭据
  • join域
  • configuration一些本地服务器的东西
  • 通过电子邮件发送报告

引导脚本被devise为由系统pipe理员(域pipe理员)交互地调用来为开发者设置机器,但是稍后它将被烘焙到unattend.xml中。

我已经尝试了以下方法:

1.通过WMI连接到具有域pipe理员凭据的域控制器,并在那里运行repadmin以强制复制

这似乎不起作用,因为repadmin不喜欢通过WMI调用,它宣称没有权限,因为它是如何解释凭据WMI

$remotesession = new-pssession -computername "localdomaincontroller" -Credential $credential invoke-command -ScriptBlock { Repadmin /replicate corporatedomaincontroller localdomaincontroller 'DC=company,DC=com' } -Session $remotesession Remove-PSSession -Session $remotesession 

2.在本地执行repadmin

所以我安装了repadmin到我的服务器模板,但是这似乎不工作,除非你先重新启动机器。 因为我想要从单个脚本启动所有的任务,这似乎不起作用。

 Start-Process powershell.exe -Credential $credential "Repadmin /replicate corporatedomaincontroller localdomaincontroller 'DC=company,DC=com'" 

所以任何人都可以build议,我怎样才能join到一个域的机器,并强制从单个脚本的DC复制?

假设你没有DNS复制的问题(你是否证实了这一点?):

您还需要知道源DC(首先存在DNSlogging的位置)和目标DC(开发人员正在使用的DC),以确保您实际上正在复制您关心的logging。

如何加快AD集成DNS区域复制? Server 2008 R2

Per Simon Catlin:

我用它来做几乎相同的事情。 不要复制一切,你只需要复制dnsDomain分区(我认为DN是dc = domaindnszones,dc = yourdomain,dc = co,dc = uk)。

repadmin示例:

 %SystemRoot%\System32\repadmin.exe /replicate <target_dc> <source_dc> DC=DomainDnsZones,DC=domain,DC=co,DC=uk 

Repadmin不需要重新启动服务器,我不知道什么会导致你认为它。