预防:无法联系 Active Directory 域控制器
错误描述
当我尝试将新的 Windows 工作站或服务器加入 Active Directory (AD) 域时,有时会遇到以下错误:“域 'domainname' 的 Active Directory 域控制器 (AD DC)”无法联系上。”
发生此错误的原因有多种,从简单的不正确的 DNS 服务器 IP 地址到更复杂的问题。在这篇博客中,我将引导您完成解决此问题所需的步骤,从最简单到最复杂。
当错误出现时
当您尝试将工作站或服务器加入域时,可能会显示该错误。以下是导致错误的步骤:
右键单击开始按钮并选择系统:
-
在下一个屏幕上,点击更改设置:
在“系统属性”窗口中,单击更改按钮。然后输入新计算机的名称并指定要将其加入哪个域,确保输入该域的 FQDN(完全限定域名)。单击确定。 这时候可能会显示错误:
初始故障排除步骤
首先,确保您输入的域名正确。
如果这不是问题,请点击详细信息以获取有关错误的信息。
以下部分详细介绍了解决问题根源所需采取的步骤。在大多数情况下,问题与以下原因之一相关:系统上的 DNS 设置不正确或 IP 地址错误、域控制器 (DC) 端的 DNS 配置错误或防火墙上阻止的端口。
如果您不知道问题的根源,我建议按顺序执行这些故障排除选项。但是,如果您有其他信息,请随时直接继续您认为可能解决问题的步骤。
验证 IP 设置是否正确
确保您计算机的网络接口具有正确的 IP 地址。 IP 地址可以在网络适配器设置中明确定义,也可以从 DHCP 服务器获取。要获取计算机当前的网络设置,请使用以下命令:
ipconfig /all确保 DNS 客户端服务正在运行
接下来,使用以下命令检查 DNS 客户端服务是否已启动并正在运行:
Get-Service dnscache检查主机文件中的域条目
确保 PC 上位于 C:\Windows\System32\Drivers\etc\hosts 的主机文件中没有您的域或域控制器名称的条目。使用记事本或任何其他文本编辑器打开文件。如果您的域名或 DC 名称有任何条目,请将其删除。
要查看 PC 上的主机文件的内容,请使用以下命令:
get-content C:\Windows\System32\Drivers\etc\hosts重启DNS缓存服务
打开提升的命令提示符并使用以下命令清除 DNS 缓存:
ipconfig /flushdns然后使用以下命令停止并重新启动 dnscache 服务:
net stop dnscache && net start dnscache或者,您可以使用 Service.msc 控制台。右键单击 DNS 客户端 打开其属性对话框:
单击使用停止和启动按钮来停止和重新启动服务:
检查客户端是否可以访问DC
要确定是否可以从客户端访问域控制器,请首先从命令提示符运行以下命令:
ping your_domain_name.com然后运行这个命令:
tracert your_domain_name.com您还应该从同一网络上的另一个工作站检查 DC 的可用性。如果您的客户端无法访问 DC,但其他客户端可以,则您的客户端的电缆或硬件或中间的设备可能存在问题。要缩小问题范围,请尝试不同的网络插孔或使用无线网络。
使用 PowerShell 检查 DC 的可访问性
或者,您可以使用以下 PowerShell cmdlet 检查与 DC 的连接。
要显示 IP 地址:
Get-NetIPConfiguration –All要对 DC 执行 ping 操作:
Test-NetConnection domainname要跟踪到 DC 的路由:
Test-NetConnection –TraceRoute domainname将 DNS 服务器添加到网络适配器的 TCP/IP 设置中
如果可以访问域控制器,请尝试将 DNS 服务器的 IP 地址添加到网络适配器的高级 TCP/IP 设置中。
打开控制面板,点击网络和共享中心,然后点击更改适配器设置:
右键单击网络适配器并选择属性。
- 右键单击Internet 协议版本 4 (TCP/IPv4),然后选择属性。
- 单击高级按钮并转到 DNS 选项卡。
在 DNS 选项卡上,单击添加按钮,提供 DNS 服务器的 IP 地址,然后单击确定。 (请注意,DNS 服务器可能是 DC,尤其是小型组织。)
如果列出了多个 IP 地址,请使用箭头按钮将您首选的 IP 地址移至列表顶部。然后点击确定。
- 再次单击确定以保存更改。
- 重新启动工作站或服务器以使更改生效,然后再次尝试将工作站或服务器加入 Active Directory 域。
检查您是否使用正确的 DNS 服务器
在深入研究之前,请仔细检查您是否使用了正确的 DNS 服务器。具体来说,DC所感知的DNS服务器用于注册记录,帮助AD连接的设备定位DC等资源;未集成 AD 的 DNS 服务器没有这些记录。
据此,请确保您使用的是以下其中一项:
- 与 Active Directory 集成的 DNS 服务器
- 从另一个支持 Active Directory 的 DNS 服务器复制记录的 DNS 服务器
- 配置为通过转发查询 AD 集成 DNS 服务器或具有重复记录的 DNS 服务器的 DNS 服务器
要检查您的 DNS 服务器是否为其中之一,请在加入域的 PC 上的 PowerShell 会话中使用如下所示的 PowerShell cmdlet。 (如果您没有其他域客户端可供使用,则需要联系您的网络工作人员。)
Get-DnsClientServerAddress运行 cmdlet 的计算机使用的 DNS 服务器列在 ServerAdesses 列中。
选项 1:更新计算机的 DNS 客户端设置
如果需要更新计算机的 DNS 客户端设置,可以使用以下 cmdlet:
Set-DnsClientServerAddress或者,您可以使用计算机网卡的“IPv4 属性”对话框:转至控制面板 -> 网络 -> Internet -> 网络连接。然后右键单击网卡,选择属性,然后选择Internet 协议版本 4 (TCP/IPv4),然后选择属性。检查设置:
如果网络支持动态主机配置协议 (DHCP),请确保选中自动获取 IP 地址和自动获取 DNS 服务器地址复选框。
如果您的网络不使用 DHCP,请将首选 DNS 服务器和备用 DNS服务器 的值更改为您之前找到的值(当您运行Set-DnsClientServerAddress cmdlet)。
选项 2:通过 Windows 设置连接到域
另一种选择是通过 Windows 设置连接到域:
- 按键盘上的 Windows 和 I 键打开“窗口设置”窗口。
点击帐户。
在左侧菜单中,点击访问工作单位或学校。然后点击连接。
在 Microsoft 帐户窗口底部,单击将此设备加入本地 Active Directory 域。
提供有效的、可联系的域名,然后单击下一步。
接下来,提供一个域帐户,用于将此工作站加入域。此帐户必须具有将工作站加入域的权限。单击确定。
如果您没有收到错误,则您的工作站现已加入域。在下一个屏幕上,提供此电脑的用户帐户,然后单击下一步。
- 单击重新启动,以便您的更改生效。
检查DC的53端口是否被防火墙拦截
检查DC上的DNS服务是否被防火墙拦截。要查看 DC 上的端口 53 是否可用,请使用以下 cmdlet:
test-netconnection 172.168.5.160 -port 53检查“TcpTestSucceeded”的值。如下所示的“True”值表示 DC 上的 DNS 服务正在运行。
检查您的计算机是否可以解析DC的域名
接下来检查工作站是否能够准确地将域名解析为DC的IP地址。使用您尝试通过 Resolve-DNSName cmdlet 加入工作站的域的完全限定域名,如下所示:
Resolve-DNSName fabrikam.local此命令应返回一个或多个 DNS 服务器记录。
检查工作站是否可以联系托管 DNS 区域的 DNS 服务器
接下来,检查是否:
- 计算机可以与托管 DNS 区域或解析域的 DNS 名称的 DNS 服务器进行通信。
- 客户端的 DNS 服务器配置正确并且已连接到该服务器。
- 您可以找到一个域并从您的计算机连接到 DC。
要获取域和 DC 信息以及 IP 地址,请使用以下 cmdlet:
nltest /dsgetdc:fabrikam.local如果命令成功完成,它将返回如下信息:
DC: \\FRGC1.fabrikam.local
Address: \\10.20.6.41
Dom Guid: c64586c9-2c18-4fc4-9fe1-18f2a262d90d
Dom Name: fabrikam.local
Forest Name: fabrikam.local
Dc Site Name: Default-First-Site-Name
Our Site Name: Default-First-Site-Name
Flags: PDC GC DS LDAP KDC TIMESERV WRITABLE DNS_DC DNS_DOMAIN DNS_FOREST CLOSE_SITE FULL_SECRET WS DS_8 DS_9 DS_10
The command completed successfully
重新启动域控制器上的 Netlogon 服务
使用以下命令重新启动 DC 上的 Netlogon 服务:
net stop netlogon && net start netlogon或者,只需重新启动 DC。
当服务器重新启动时,它将尝试在 DNS 服务器上注册必要的 SRV 记录。
重新注册 DC 的 DNS 记录
通过运行以下命令重新注册 DC 的 DNS 记录:
ipconfig /registerdns等待记录到达 DNS 并在域中传播。































