【发布时间】:2016-08-01 12:02:13
【问题描述】:
我有一个通过 LDAP 使用 Active Directory 信息的 Web 应用程序:
<add name="ADConnectionString" connectionString="LDAP://domain1.com/OU=Users,DC=domain1,DC=com" />
它工作正常,但是当管理员将新域 2 放入与域 1 相同的森林时,我的应用程序失败并出现以下错误:
Server Error in "/" Application.
Unable to obtain DNS hostname of Active Directory domain controller with ntdsa object name "CN=NTDS Settings,CN=SERVERNAME,CN=Servers,CN=Datacenter,CN=Sites,CN=Configuration,DC=domain1,DC=com"
[ActiveDirectoryOperationException: Unable to obtain DNS hostname of Active Directory domain controller with ntdsa object name "CN=NTDS Settings,CN=SERVERNAME,CN=Servers,CN=Datacenter,CN=Sites,CN=Configuration,DC=domain1,DC=com".]
System.DirectoryServices.ActiveDirectory.Utils.GetReplicaList(DirectoryContext context, String partitionName, String siteName, Boolean isDefaultNC, Boolean isADAM, Boolean isGC) +9909
System.DirectoryServices.ActiveDirectory.GlobalCatalog.FindAllInternal(DirectoryContext context, String siteName) +133
System.DirectoryServices.AccountManagement.ADStoreCtx.GetGroupsMemeberOf(Principal p) +1134
有趣的是,SERVERNAME 不再存在于 domain1 中(它在很久以前就被删除了),它现在在 domain2 中。另外,我不需要任何数据(没有用户信息)
似乎在添加 domain2 后,我的应用程序尝试查找将与其域控制器复制的任何服务器,看到 SERVERNAME 但无法访问它,因为 SERVERNAME 没有设置正确的 DNS 主机名。我相信只要 SERVERNAME 有它的 DNS 主机名,这个错误就会消失 (如果我错了请纠正我) 但还是有一些问题
- 我的结论哪里有误?
- 为什么 AD 库关心复制?
- 为什么我的应用仍然尝试在 domain1 中查找 SERVERNAME?
- 在设置 domain2 及其服务器时如何避免此错误?
提前感谢您的回答
【问题讨论】:
标签: .net windows dns active-directory