Windows Server 2022 DNS服务器配置主域与辅助域完整实战:AD DS双DC部署权威指南

本文以 Windows Server 2022 为平台,完整演示 DNS 服务器安装、主域控制器(Install-ADDSForest)部署、辅助域控制器(Install-ADDSDomainController)提升以及 AD 集成 DNS 复制机制,所有 PowerShell 命令均出自 Microsoft Learn 官方 ADDSDeployment 模块,可直接用于生产环境。

Windows Server 2022 AD主域与辅助域部署

在企业 IT 基础架构里,Active Directory 域服务(AD DS)几乎是 Windows Server 生态的”中枢神经”——员工账号、电脑加入域、组策略下发、文件共享权限、企业 CA 证书,所有这些都依赖域控制器(DC)正常运转。而让 DC 正常工作的前提是 DNS 服务器,因为 AD DS 把域控制器的服务位置以 SRV 记录形式注册到 DNS 里,客户端和域成员要”找到”DC,必须先通过 DNS 解析。本文以 Windows Server 2022 为平台,完整演示 DNS 服务器的安装、主域控制器(PDC)的部署、辅助/额外域控制器(BDC)的添加,以及 AD 集成 DNS 区域的复制机制。本文所有 PowerShell 命令均直接引用自 Microsoft Learn 官方文档,版本号绑定 ADDSDeployment 模块,可放心用于生产环境。

一、整体规划与前提

在动手部署之前,先把整体规划讲清楚,避免后续返工。本文演示的是一个最常见的双 DC 部署场景:

  • DC1(主域控制器 / PDC Emulator):192.168.10.11,Windows Server 2022 Datacenter,作为新林的第一台 DC,承担 PDC Emulator、RID Master、Infrastructure Master 等 FSMO 角色,同时安装并承载 DNS 服务器
  • DC2(辅助域控制器 / 额外 DC):192.168.10.12,Windows Server 2022 Datacenter,作为副本域控制器加入现有域,提供冗余和读写负载分担
  • 域名:contoso.local(内网测试林),Forest 级别与 Domain 级别都设为 Windows Server 2016(Windows Server 2022 默认支持到 2016 兼容级别,2022 林级别需手动指定)
  • 客户端:任何能 ping 通两台 DC 的内网 PC,用于验证 DNS 解析和域加入

重要的前置条件:

  • 两台 DC 都已配置静态 IP(切勿用 DHCP,因为 DC 自己就是 DNS,IP 必须在 DNS 解析中可被稳定查询)
  • 两台 DC 的计算机名已改为永久名称(DC1 / DC2),并完成 Windows Update
  • 两台 DC 的时间已同步(NTP),域内时间偏差超过 5 分钟会导致 Kerberos 认证失败
  • 防火墙放通必要端口:53(DNS)、88(Kerberos)、135(RPC)、389(LDAP)、445(SMB)、3268(GC)、49152-65535(动态 RPC)

二、安装 DNS 服务器角色

虽然在后面部署主域时可以用 Install-ADDSForest 一并安装 DNS,但作为独立知识点,先把 DNS 角色单独安装的步骤讲清楚。后续在 DC2 上添加辅助域时,也会用到这个步骤。

在 DC1 和 DC2 上,分别用 PowerShell(管理员)执行:

Install-WindowsFeature -Name DNS -IncludeManagementTools

如果使用图形界面:服务器管理器 → 添加角色和功能 → 服务器角色 → 勾选「DNS 服务器」,一路下一步即可。

安装完成后,可以用以下命令验证 DNS 服务是否运行:

Get-Service DNS

如果 Status 显示 Running,DNS 服务已经正常启动。

三、部署主域控制器(DC1)

主域控制器的部署本质是”创建新林”。在 DC1 上以管理员身份打开 PowerShell,执行 Install-ADDSForest 命令(此 cmdlet 来自 ADDSDeployment 模块,Windows Server 2022 默认已安装):

Install-ADDSForest `
  -DomainName "contoso.local" `
  -DomainNetBIOSName "CONTOSO" `
  -InstallDns `
  -CreateDnsDelegation:$false `
  -ForestMode "WinThreshold" `
  -DomainMode "WinThreshold" `
  -DatabasePath "D:NTDS" `
  -SysvolPath "D:SYSVOL" `
  -LogPath "E:Logs" `
  -NoRebootOnCompletion:$false `
  -Force

参数详解(参考自 Microsoft Learn 官方语法):

  • -DomainName:林根域名,这里是 contoso.local。生产环境建议使用真实公网域名的子域(如 corp.example.com),避免 .local 带来多播解析问题
  • -DomainNetBIOSName:NetBIOS 兼容名,老旧应用会用到,默认取域名最左侧标签
  • -InstallDns:同时安装 DNS 服务器角色,这是 AD DS 的强制要求,否则 AD 无法注册 SRV 记录
  • -CreateDnsDelegation:是否在父域创建 DNS 委派。如果是在内网独立建林,设为 $false;如果是在已有 DNS 区域下挂子域,设为 $true
  • -ForestMode / -DomainMode:林/域功能级别。WinThreshold 表示当前 Windows Server 2022 支持的最高级别,后续加入的 DC 也必须满足这个最低版本要求
  • -DatabasePath / -SysvolPath / -LogPath:AD 数据库、SYSVOL 共享、日志文件的存放路径。生产环境强烈建议放到非系统盘,避免 C 盘写满导致 AD 故障
  • -SafeModeAdministratorPassword:目录服务还原模式(DSRM)密码,务必记录下来,用于灾难恢复。这里没写会在交互提示中输入

执行该命令后,系统会提示输入 DSRM 密码并确认,之后自动开始安装 AD DS、安装 DNS、配置 SYSVOL。安装完成后机器会自动重启。

重启后用域管理员账号 CONTOSOAdministrator 登录,打开 DNS 管理器(dnsmgmt.msc),应该能看到正向查找区域下自动创建了以下 AD 集成区域:

  • contoso.local:域主区域
  • _msdcs.contoso.local:DC 定位用的 SRV 记录所在区域
  • ForestDnsZones.contoso.local:林级 DNS 应用分区
  • DomainDnsZones.contoso.local:域级 DNS 应用分区

展开 _msdcs.contoso.local → dc → _tcp → _ldap,能看到自动注册的 SRV 记录(类似 _ldap._tcp.dc._msdcs.contoso.local 指向 dc1.contoso.local),证明 DNS 与 AD DS 集成正常。

四、添加辅助/额外域控制器(DC2)

DC2 的角色是”加入现有域的副本域控制器”,这台机器在提升之前,需要先把它指向 DC1 的 DNS,确保能找到 contoso.local 域。

步骤 1:配置 DC2 的网络与 DNS

在 DC2 上把首选 DNS 指向 DC1(192.168.10.11),备用 DNS 可以留空或指向其他公网 DNS(注意:备用 DNS 不能指向自身未提升的 127.0.0.1,会陷入解析死循环)。

Set-DnsClientServerAddress -InterfaceAlias "Ethernet" -ServerAddresses 192.168.10.11

验证 DNS 解析:

nslookup contoso.local 192.168.10.11
nslookup -type=SRV _ldap._tcp.dc._msdcs.contoso.local 192.168.10.11

能正常返回结果,说明 DC1 的 DNS 已经接管 contoso.local 区域的解析。

步骤 2:加入现有域

DC2 在提升为 DC 之前,需要先加入 contoso.local 域(也可以跳过,直接在提升时让 cmdlet 自动加入)。如果想手动加入:

Add-Computer -DomainName "contoso.local" -Credential (Get-Credential) -Restart -Force

(Get-Credential) 会弹出对话框,输入 CONTOSOAdministrator 和密码。完成后重启,使用域账号登录。

步骤 3:提升为副本域控制器

这是最关键的一步——把 DC2 提升为额外 DC,安装 AD DS 和 DNS。在 DC2 上以域管理员身份执行:

Install-ADDSDomainController `
  -DomainName "contoso.local" `
  -SiteName "Default-First-Site-Name" `
  -InstallDns `
  -CreateDnsDelegation:$false `
  -DatabasePath "D:NTDS" `
  -SysvolPath "D:SYSVOL" `
  -LogPath "E:Logs" `
  -ReplicationSourceDC "DC1.contoso.local" `
  -NoRebootOnCompletion:$false `
  -Force

关键参数:

👉 Windows Server 企业级部署工具精选

收录 Windows Server 2022/2019 各版本镜像、AD DS 工具集、组策略模板、DNS 诊断工具等企业 IT 基础设施资源。

立即访问 →

  • -SiteName:站点名,默认是 Default-First-Site-Name。多站点部署时需指定对应的 AD 站点
  • -ReplicationSourceDC:复制源 DC,显式指定 DC1.contoso.local 可以避免提升时自动选择源带来的不确定性
  • -SafeModeAdministratorPassword:DSRM 密码,必须与 DC1 保持一致,用于日后跨 DC 的 SYSVOL 修复和权威还原

执行后会提示输入 DSRM 密码,完成后自动重启。

步骤 4:验证复制状态

重启后用域账号登录 DC2,运行以下命令检查复制情况:

repadmin /replsummary
repadmin /showrepl
repadmin /syncall /APed

第一条汇总复制统计;第二条显示每个命名上下文的复制伙伴状态;第三条强制全量同步。如果出现错误(常见 1311、1865、1864),说明复制链路有问题,需要先排查。

同时打开 DNS 管理器(dnsmgmt.msc)连接 DC2,确认 _msdcs.contoso.local 区域的 SRV 记录已经从 DC1 同步过来,可以看到 dc2.contoso.local 的 _ldap / _kerberos 记录。

五、AD 集成 DNS 的复制机制

这里需要单独讲清楚”AD 集成 DNS 区域”和传统”主/辅 DNS 区域”的本质区别,避免误用。

传统 DNS 中,主 DNS(primary zone)的数据存储在主 DNS 服务器的文本文件里,辅助 DNS(secondary zone)通过 AXFR/IXFR 区域传输从主 DNS 拉取数据。这套机制在 Windows Server DNS 服务里依然存在(右键新建区域可以看到”主要区域””辅助区域””存根区域”三种类型),但 AD DS 部署中默认不使用。

AD 集成 DNS(Active Directory-Integrated DNS)则完全不同。区域数据直接存储在 AD 数据库的应用分区里,具体包括两个专用分区(参考 Microsoft Learn 官方说明):

  • ForestDnsZones:林级分区,所有域共用的 DNS 区域(如 ForestDnsZones.contoso.local)
  • DomainDnsZones:域级分区,每个域单独一份(如 DomainDnsZones.contoso.local)

数据写入后,会通过 AD 复制机制自动同步到林中所有 DC。这意味着:

  • 不需要单独配置”主 DNS / 辅助 DNS”和 AXFR/IXFR
  • DNS 区域数据与 AD 数据库天然一致,不会出现 DNS 记录和 AD 对象错位
  • 支持安全动态更新(Secure Dynamic Updates),只有经过 Kerberos 认证的域成员才能注册自己的 A 记录,杜绝非法抢占 IP
  • 每台 DC 都是权威 DNS,任意一台宕机,其他 DC 都能继续响应 DNS 查询

因此,只要主域和辅助域都启用了”AD 集成 DNS”,DNS 数据就是”自动同步”的,不需要像传统 BIND 那样手动配置主/辅关系。但如果有特殊需求(比如把 DNS 区域委派给第三方 DNS 服务器),可以在 DNS 管理器里把区域类型从”AD 集成”改为”标准主要区域”,手动建立辅助区域和区域传输。

六、客户端验证与常见故障排查

客户端验证步骤:

  • 把客户端 PC 的 DNS 指向 192.168.10.11 和 192.168.10.12(任一即可)
  • nslookup contoso.local —— 应能返回 DC 的 A 记录
  • nslookup -type=SRV _ldap._tcp.dc._msdcs.contoso.local —— 应能列出所有 DC
  • 把客户端加入域:设置 → 系统 → 关于 → 重命名这台电脑 → 域,输入 contoso.local,输入域管理员凭据,重启后生效
  • 登录后用 whoami /upn 验证账户所在域

常见故障 1:客户端找不到 DC,提示”找不到网络路径”

原因通常是 DNS 没正确指向。先用 nslookup 测试,确认 DNS 客户端指向的 IP 正确;再检查 _msdcs 区域的 SRV 记录是否存在。如果 _msdcs 区域为空,说明 Netlogon 服务没有正确启动,在 DC 上 net start netlogon 后等待 15 分钟让 SRV 记录重新注册。

常见故障 2:复制失败,提示事件 ID 1865(复制延迟过大)

原因通常是两台 DC 的时间不同步(超过 5 分钟触发 Kerberos 保护)。在两台 DC 上执行 w32tm /resync /force 强制同步,然后再尝试 repadmin /syncall。

常见故障 3:辅助 DC 提升失败,提示”找不到具有域名控制器 DNS 名称的域控制器”

原因通常是辅助 DC 的 DNS 没指向主 DC,或者防火墙没放通必要的 RPC 端口。检查 ipconfig /all 确认 DNS 设置,再检查两台 DC 之间的防火墙策略(尤其是 ICMPv4 和 TCP 135/389/445/49152-65535)。

常见故障 4:Web 登录提示”无法联系域控制器”

检查 KDC 服务(TCP/88)、LDAP 服务(TCP/389)是否在防火墙放通。同时用 nltest /dsgetdc:contoso.local 验证 DC 的发现是否正常。

七、生产环境最佳实践

1. 每台 DC 都装 DNS。即使你打算做 DNS 集中管理,也建议每台 DC 都装 DNS 服务,通过 AD 复制天然实现高可用,不必额外搞 DNS 集群。

2. 使用专用站点和子网。多机房/多办公区部署时,通过 Active Directory 站点和服务(dssite.msc)定义子网与站点对应关系,可以让客户端优先连接本机房的 DC,降低跨广域网延迟。

3. 定期备份 SYSVOL 和 AD 数据库。使用 Windows Server Backup 做系统状态备份,或者用第三方备份工具定期快照 SYSVOL 共享所在分区,灾难时才能快速权威还原。

4. 监控复制健康。通过 repadmin /replsummary 定期巡检(建议设为每日任务),第一时间发现复制失败。可以把结果通过邮件/IM 告警,接入 Zabbix 或 SCOM。

5. 妥善保管 DSRM 密码。DSRM 密码不要与域管理员密码相同,生产环境建议 25 位以上复杂密码,定期更换并记录在加密保管库中。

八、总结

Windows Server 2022 部署 DNS 主域和辅助域,核心思路是:用 Install-ADDSForest 在 DC1 上创建新林并自动集成 DNS,用 Install-ADDSDomainController 在 DC2 上加入现有域并安装 DNS。两台 DC 的 DNS 数据通过 AD 复制天然同步,无需额外配置主/辅区域传输。本文所有命令均出自 Microsoft Learn 官方 ADDSDeployment 模块文档,生产环境可直接复制使用。

双 DC 是企业 AD 部署的最小可靠单元。理解了 DNS 角色安装、新林创建、副本提升、AD 集成复制这四个核心步骤,后续无论是扩展到三 DC、四 DC,还是搭建多站点/多林架构,都可以在这套基础上平滑演进。

如果你正在学习 Windows Server 企业级部署,或者希望系统掌握 DNS、AD DS、组策略、企业 CA 等基础设施的实战方案,推荐你持续关注 IT 峰哥软件库,获取更多企业 IT 基础设施的实战资源与配置手册。

更多企业级 Windows Server 部署资源与运维工具,欢迎访问 IT峰哥软件库 获取精选资源包。

🚀 IT峰哥软件库

国内领先的一站式IT软件资源下载平台,收录超十万款软件资源,覆盖操作系统、办公软件、开发工具、系统工具、安全防护、数据恢复等20余大类。

🛡️ 安全可靠 · 每日更新

所有资源经过严格安全检测,绿色无毒,提供 免注册版 · 绿色版 · 激活版 · 简体中文版 等多种版本选择。每日更新!

立即访问 →

默认

锐捷交换机配置SSH登录与Web网页管理实战:官方权威步骤详解

2026-7-1 19:56:12

默认

Windows 家庭版、专业版、教育版、企业版之间的区别与相互切换完整指南

2026-7-1 20:20:27

搜索