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

时间:2015-03-24 10:41:25

标签: powershell active-directory

关于此论坛帮助我的其他一些帖子......

我的情况是,我们有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
    }        
}

1 个答案:

答案 0 :(得分:1)

您可以更轻松地按域找到全局编录:

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