在另一个域中查找域控制器

find domain controllers in another domain

继本论坛对我有所帮助的其他一些帖子之后......

我有这样的情况,我们有 2 个 AD 域,可以在其中创建用户,我正在尝试搜索具有该帐户副本的 GC,以便我可以创建邮箱。复制大约需要 20 分钟,因此我正在尝试消除该等待时间。

我的脚本如下,我的问题似乎是它只搜索当前域中的 GC,我需要它来搜索指定的域。

所以我们有 2 个域,这两个域分布在相同的 2 个站点上,我希望在正确域中的 GC 上找到用户帐户,但它似乎只搜索当前域 (domain1)。

有没有人有什么想法?

TIA

安迪

$ADUserName = "user1"
$Domain = "domain2"
$ADDomain = "dc=domain1,dc=domain,dc=co,dc=uk"

import-module activedirectory

$GCs = get-addomaincontroller -filter {(domainname -eq $Domain) -and (isglobalcatalog -eq $true) -and (site -eq "Site1") -or (site -eq "Site2")} 
write-host $domain -f green

foreach ($GC in $GCs)
{
    $GCendpoint = "{0}:3268" -f $GC.HostName
    $SearchResult = Get-ADUser -LDAPFilter "(&(samaccountname=$ADUserName))" -Server $GCendpoint -searchbase $ADdomainDN -ErrorAction SilentlyContinue
    if(@($SearchResult).Count -gt 0){
        $ADServer = $GC.hostname
        Write-host "Found $ADUsername on "$ADServer -f green
        set-adserversettings -viewentireforest:$true -preferredserver $ADServer
    }        
}

您可以更轻松地按域查找全局目录:

$domain1GlobalCatalogs = (Get-ADForest -Identity "domain1.local").GlobalCatalogs
$domain2GlobalCatalogs = (Get-ADForest -Identity "domain2.local").GlobalCatalogs