ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

主域控与辅助域控搭建及迁移实战:FSMO角色转移与DNS集成

主域控与辅助域控搭建及迁移实战:FSMO角色转移与DNS集成 简介这份资源面向Windows Server系统管理员与运维初学者聚焦主域控、辅助域控的搭建以及主域控制器的迁移这一典型企业级场景帮助读者掌握活动目录部署与FSMO角色转移的完整流程。资源包内含1个docx文档约566KB以图文步骤形式记录了从dcpromo安装向导、DNS与NETBIOS命名到辅助域控额外域控制器配置、RID/PDC/基础结构主机等五大角色迁移以及ntdsutil命令行转移与强行夺取的对比操作。内容覆盖主辅域控IP与DNS设置、全局编录迁移、系统状态备份等关键环节并附有transfer与seize命令对照表便于在实际环境中对照排错。目前已有2060人学习下载适合需要搭建域环境或演练域控迁移的读者参考。1. 主域控与辅助域控从一台机器到一套能扛事的 AD 架构很多团队第一次搭 AD都是被文件共享权限或者内部系统统一登录逼出来的。一台 Windows Server 装完 AD DS 角色dcpromo一路下一步域是通了但所有账号、所有认证、所有组策略全压在这一台上。这台机器一关机全公司登录全挂这就是典型的单点。主域控和辅助域控要解决的核心问题就一个让域控本身不再是单点。主域控承担 FSMO 五种操作主机角色和全局编录辅助域控额外域控复制目录数据、分担认证和查询压力主域控宕了还能把角色抢过来继续干活。再往后一步就是主域控制器的迁移——老硬件要退役、系统要换版本、机房要搬迁怎么把 FSMO 角色、全局编录、DNS 这些身份干净地交到新机器上而不是硬关机赌运气。这篇按「先搭主域控 → 再搭辅助域控 → 最后做角色迁移」的顺序讲命令和参数都能直接抄坑也一并标出来。适合手里有 Windows Server、正在被单域控折磨、或者准备做域控硬件替换的运维。2. 主域控搭建从装角色到 dcpromo 的完整链路2.1 先定 DNS 和主机名别等装完再改AD DS 和 DNS 是绑死的域控找不到 DNS 或者 DNS 指向了外网装到一半就会报「无法联系域」这类玄学错误。所以装角色之前先把静态 IP、主机名、DNS 指向自己定下来。主机名建议用DC01这种一眼能看出角色的命名别用WIN-XXXX默认名后面加辅助域控和做迁移时机器名混乱会让你怀疑人生。# 设置静态 IP示例网段按自己环境改 New-NetIPAddress -InterfaceAlias Ethernet -IPAddress 192.168.10.10 -PrefixLength 24 -DefaultGateway 192.168.10.1 # DNS 先指向自己装完 AD 后本机就是 DNS Set-DnsClientServerAddress -InterfaceAlias Ethernet -ServerAddresses 192.168.10.10 # 改主机名改完必须重启 Rename-Computer -NewName DC01 -Restart逻辑说明New-NetIPAddress把网卡从 DHCP 切成静态域控的 IP 不能漂Set-DnsClientServerAddress把 DNS 指向本机因为 AD DS 安装时会顺带装 DNS 角色本机既是 DNS 服务器也是客户端Rename-Computer改完必须重启才生效。参数上-PrefixLength 24对应 255.255.255.0-DefaultGateway填真实网关别填成域控自己。2.2 装 AD DS 角色并提升为域控角色安装和域控提升是两步。装角色只是把二进制文件放上去提升promotion才是真正建林、建域、写数据库。图形界面走「服务器管理器 → 添加角色和功能 → Active Directory 域服务」命令行更干净也方便后面写脚本。# 第一步安装 AD DS 和 DNS 角色 Install-WindowsFeature -Name AD-Domain-Services,DNS -IncludeManagementTools # 第二步提升为新林的第一台域控 Install-ADDSForest -DomainName corp.example.com -DomainNetbiosName CORP -ForestMode WinThreshold -DomainMode WinThreshold -InstallDns:$true -SafeModeAdministratorPassword (Read-Host -AsSecureString DSRM密码)逻辑说明Install-WindowsFeature装角色-IncludeManagementTools把 AD 模块和 DNS 管理工具一起装上否则后面连Get-ADDomain都跑不了。Install-ADDSForest是建新林-DomainName用完整 FQDN-DomainNetbiosName是登录时看到的短名一般取域名前缀大写。-ForestMode和-DomainMode用WinThreshold对应 Windows Server 2016 及以上功能级别如果环境里还有 2012 R2 的老域控功能级别要往下调否则加不进来。-SafeModeAdministratorPassword是目录服务还原模式密码做备份恢复和迁移时要用必须记牢这是没有后悔药的东西。执行完会自动重启重启后这台就是主域控默认持有全部五种 FSMO 角色。2.3 验证主域控是否真的立住了装完别急着往下走先确认林、域、FSMO、DNS 四条线都正常。很多「辅助域控加不进来」的问题根子都在主域控本身没立稳。# 看林和域的基本信息 Get-ADForest Get-ADDomain # 看五种 FSMO 角色分别在哪台机器上 netdom query fsmo # 看 DNS 里域对应的区域是否自动建好 Get-DnsServerZone逻辑说明Get-ADForest和Get-ADDomain能看出功能级别、域命名主机、架构主机等关键属性netdom query fsmo是最直观的角色归属查询五条全指向 DC01 才算正常Get-DnsServerZone里应该能看到corp.example.com的正向区域和_msdcs子域如果 DNS 区域没建后面辅助域控复制会直接失败。参数上没什么可调的重点看输出里IsGlobalCatalog是否为 True主域控默认就是全局编录。3. 辅助域控搭建复制、全局编录与 DNS 集成3.1 辅助域控的前置条件比主域控更挑辅助域控额外域控不是随便找台机器就能加它对网络和 DNS 的依赖比主域控还敏感。核心就三条能解析到主域控的 FQDN、能访问主域控的 53/88/135/389/445/3268 等端口、本机 DNS 指向主域控。DNS 指向错了提升时会报「找不到域 corp.example.com」这个报错九成是 DNS 问题不是域控问题。# 辅助域控上先设静态 IP 和 DNSDNS 指向主域控 New-NetIPAddress -InterfaceAlias Ethernet -IPAddress 192.168.10.11 -PrefixLength 24 -DefaultGateway 192.168.10.1 Set-DnsClientServerAddress -InterfaceAlias Ethernet -ServerAddresses 192.168.10.10 Rename-Computer -NewName DC02 -Restart # 重启后验证能否解析主域控和域 Resolve-DnsName dc01.corp.example.com Resolve-DnsName corp.example.com逻辑说明辅助域控的 DNS 必须指向主域控不能指向外网 DNS也不能指向自己此时自己还不是 DNS。Resolve-DnsName两条都要能返回主域控的 A 记录和域的 SOA/NS 记录解析不通就别往下做做了也是白做。参数上-ServerAddresses只填主域控 IP多网卡环境要确认走的是同一张网卡。3.2 用 Install-ADDSDomainController 加入现有域辅助域控的提升命令和主域控不同用的是Install-ADDSDomainController关键是-DomainName指向已有域并显式声明是否做全局编录、DNS 怎么处理。# 安装角色 Install-WindowsFeature -Name AD-Domain-Services,DNS -IncludeManagementTools # 提升为现有域的额外域控 Install-ADDSDomainController -DomainName corp.example.com -Credential (Get-Credential CORP\Administrator) -InstallDns:$true -SiteName Default-First-Site-Name -SafeModeAdministratorPassword (Read-Host -AsSecureString DSRM密码)逻辑说明-Credential要有建域控权限的账号一般用域管理员-InstallDns:$true表示这台也装 DNS配合 AD 集成区域实现 DNS 复制-SiteName填主域控所在的站点单站点环境就是Default-First-Site-Name多站点环境填错会导致复制走错链路。执行过程会从主域控复制目录数据数据量大时耗时较长别中途断电。重启后这台就是辅助域控默认也是全局编录但 FSMO 角色还在主域控上。3.3 全局编录和 DNS 集成区域怎么确认辅助域控默认会勾选全局编录但有些环境为了省资源会取消取消后跨域查询和登录会受影响。DNS 方面如果主域控的 DNS 区域是 AD 集成且允许安全动态更新辅助域控装完 DNS 后区域会自动复制过来。# 确认本机是否全局编录 Get-ADDomainController -Identity DC02 | Select-Object Name,IsGlobalCatalog,Site # 确认 DNS 区域是否复制过来 Get-DnsServerZone # 看区域复制范围 Get-DnsServerDirectoryPartition逻辑说明Get-ADDomainController直接看IsGlobalCatalog是否为 TrueFalse 的话要用Set-ADDomainController补开Get-DnsServerZone在辅助域控上应该能看到和主域控一样的区域列表Get-DnsServerDirectoryPartition看区域存在哪个应用分区默认DomainDnsZones和ForestDnsZones都要有。参数上重点确认区域类型是ADIntegrated而不是Primary主文件型区域不会自动复制。3.4 复制健康检查别等出问题才看两台域控搭完复制是否正常决定了它们是不是「真的一家人」。复制断了账号密码不同步用户今天在这台登录成功、明天在那台失败这种问题最难查。# 查看复制状态 repadmin /replsummary repadmin /showrepl # 强制立即复制一次 repadmin /syncall /AdeP # 看域控之间的连接对象 Get-ADReplicationConnection -Filter *逻辑说明repadmin /replsummary给出整体复制健康度失败数不为 0 就要查repadmin /showrepl看每台域控的入站邻居和上次复制结果repadmin /syncall /AdeP强制所有分区立即复制/A所有命名上下文、/d按 DN 标识、/e企业级、/P跨站点推送做迁移前手动同步一次很实用。参数上/syncall后面跟的字母组合含义不同日常排查用/AdeP就够。4. 主域控制器迁移FSMO、全局编录与 DNS 的交接4.1 迁移前先想清楚是换硬件还是换角色主域控迁移分两种场景。一种是老机器退役新机器已经作为辅助域控加进来了只需要把 FSMO 角色和全局编录交过去再把老机器降级另一种是直接在新机器上重建把角色硬抢过来。前者干净、可回退后者风险高除非老机器已经彻底起不来。常见做法是先把新机器加成辅助域控复制稳定后再做角色转移这样任何一步出问题都能退回去。迁移前必须确认新机器复制正常、DNS 区域已同步、有系统状态备份、知道 DSRM 密码。# 迁移前检查复制、FSMO 当前位置、全局编录分布 repadmin /replsummary netdom query fsmo Get-ADDomainController -Filter * | Select-Object Name,IsGlobalCatalog,Site逻辑说明这三条是迁移前的基线快照。repadmin /replsummary确认没有复制错误有错误先修再迁netdom query fsmo记录迁移前角色在哪Get-ADDomainController确认新机器已经是全局编录。参数上没什么可调重点是留一份输出存档迁移后对比。4.2 用 Move-ADDirectoryServerOperationMasterRole 转移 FSMOFSMO 五种角色Schema Master、Domain Naming Master、PDC Emulator、RID Master、Infrastructure Master。前两个是林级别后三个是域级别。转移用 PowerShell 一条命令搞定比ntdsutil图形操作更可控。# 把五种 FSMO 角色全部转移到 DC02 Move-ADDirectoryServerOperationMasterRole -Identity DC02 -OperationMasterRole SchemaMaster,DomainNamingMaster,PDCEmulator,RIDMaster,InfrastructureMaster -Confirm:$false逻辑说明-Identity是目标域控-OperationMasterRole列出要转移的角色-Confirm:$false跳过逐条确认。这条命令是「转移」不是「抢占」前提是原角色持有者在线且复制正常转移过程会走正常复制通道安全可回退。如果原主域控已经彻底宕机只能用-Force做抢占抢占后原机器不能再以域控身份上线否则会出现角色冲突这是血泪经验。参数上角色名必须写全写错会报参数无效。4.3 全局编录和 DNS 的收尾FSMO 转移完还要确认新机器的全局编录状态和 DNS 是否正常。如果老机器要退役得先把它的全局编录取消、DNS 区域确认已复制再降级。# 确认 FSMO 已在新机器 netdom query fsmo # 确认新机器全局编录 Get-ADDomainController -Identity DC02 | Select-Object Name,IsGlobalCatalog # 老机器降级确认角色已全部转移后执行 Uninstall-ADDSDomainController -DemoteOperationMasterRole -RemoveApplicationPartition逻辑说明netdom query fsmo五条全指向 DC02 才算转移完成Get-ADDomainController确认IsGlobalCatalog为 TrueUninstall-ADDSDomainController把老机器降级为成员服务器-DemoteOperationMasterRole表示如果还有角色没转走就一并处理-RemoveApplicationPartition清理 DNS 应用分区。降级前务必确认 DNS 区域已经在 DC02 上正常否则降级后 DNS 解析会断。参数上降级会要求输入本地管理员密码和 DSRM 密码提前准备好。4.4 迁移后的验证清单迁移做完不是看命令返回成功就完事要按清单逐项验证否则问题会在几天后以「用户登录慢」「组策略不生效」的形式冒出来。验证项命令期望结果FSMO 归属netdom query fsmo全部指向新域控复制状态repadmin /replsummary失败数为 0全局编录Get-ADDomainController -Filter *新域控 IsGlobalCatalog 为 TrueDNS 解析Resolve-DnsName corp.example.com返回新域控 IP认证测试用域账号在新机器登录登录成功、组策略生效时间同步w32tm /query /statusPDC 模拟器时间源正常逻辑说明这张表是迁移后的验收标准逐项过一遍。重点说时间同步PDC 模拟器是域内时间权威迁移后新 PDC 要配好外部时间源否则域内时间漂移会导致 Kerberos 认证失败表现为「密码明明对却登录不了」。参数上w32tm配置时间源用w32tm /config /manualpeerlist:ntp.aliyun.com /syncfromflags:manual /reliable:yes /update配完重启时间服务。5. 避坑与排查域控搭建迁移里最容易翻车的五件事5.1 辅助域控加不进来报「找不到域」现象在辅助域控上执行提升命令报「无法联系域 corp.example.com 的域控制器」。原因九成是 DNS 问题辅助域控的 DNS 指向了外网或者自己解析不到主域控的 SRV 记录。解决把辅助域控 DNS 改回主域控 IP用Resolve-DnsName -Type SRV _ldap._tcp.corp.example.com确认 SRV 记录能解析出来再重新提升。别去改 hosts 文件硬指那是掩盖问题。5.2 FSMO 抢占后原域控又上线角色冲突现象主域控宕机后用-Force抢占角色到新机器过几天老机器修好开机域内出现两个 PDC 模拟器复制报错。原因抢占是单向的老机器不知道自己已经失去角色上线后继续以角色持有者自居。解决老机器修好后不要直接接入生产网先断网开机用ntdsutil做元数据清理或者直接重装降级确认角色清理干净再接入。这是最典型的翻车场景抢占前一定要确认老机器真的回不来了。5.3 迁移后用户登录变慢现象FSMO 转移后部分用户登录要等一两分钟。原因客户端还缓存着老域控的 DC 定位信息或者 DNS 里老域控的记录没清干净客户端反复尝试联系已降级的老机器。解决清理 DNS 里老域控的 A 记录和 SRV 记录客户端执行ipconfig /flushdns和nltest /dsgetdc:corp.example.com重新定位必要时重启客户端。参数上nltest /sc_reset:corp.example.com可以强制重置安全通道。5.4 DSRM 密码丢失恢复模式进不去现象域控出问题需要进目录服务还原模式发现 DSRM 密码没人记得。原因搭建时随手设的密码没归档或者交接时没传下来。解决DSRM 密码可以在线重置用ntdsutil的set dsrm password命令但重置后要同步到所有域控。预防办法是搭建时就把 DSRM 密码存进密码管理工具这是没有后悔药的东西别偷懒。5.5 全局编录取消后跨域查询失败现象为了省资源把辅助域控的全局编录取消结果跨域登录和 Exchange 查询报错。原因全局编录提供跨域的对象查询取消后本机只能查本域对象多域环境或依赖 GC 的应用会失败。解决用Set-ADDomainController -Identity DC02 -IsGlobalCatalog $true重新开启等复制完成后验证。单域环境影响小但多域环境别随便关。6. 迁移的进阶玩法用备份做离线验证和快速回退前面讲的都是在线迁移但真正让我睡得着觉的是迁移前用系统状态备份做一次离线验证。域控的备份不是普通文件备份要用 Windows Server Backup 的「系统状态」功能它包含 AD 数据库、SYSVOL、注册表、DNS 区域这些关键组件。备份完可以还原到一台隔离的虚拟机里验证 FSMO 角色、DNS、组策略是否完整相当于给迁移买了一份后悔药。# 安装 Windows Server Backup 功能 Install-WindowsFeature -Name Windows-Server-Backup # 命令行做一次系统状态备份到指定盘 wbadmin start systemstatebackup -backupTarget:E: -quiet逻辑说明Install-WindowsFeature装备份功能wbadmin start systemstatebackup做系统状态备份-backupTarget指定备份盘-quiet不交互。备份完成后在隔离环境用wbadmin start systemstaterecovery还原还原后域控会进入 DSRM 模式需要手动启动 AD 服务再验证。参数上备份盘不能是系统盘容量至少留出 AD 数据库加 SYSVOL 的两倍空间。离线验证的重点是看三样netdom query fsmo角色是否完整、Get-DnsServerZone区域是否齐全、gpresult /h组策略是否正常应用。这三样过了在线迁移基本不会出大问题。另一个进阶技巧是迁移窗口选择尽量选业务低峰期并且提前通知用户「可能短暂登录异常」别在周一早上做迁移那是给自己找麻烦。我自己的习惯是任何一次域控迁移先做备份、再做离线验证、然后在线转移、最后按验证清单逐项过。四步里少任何一步都是在赌运气。域控这东西平时不出事一出事就是全公司登录不了所以宁可迁移前多花两小时也别迁移后花两天救火。希望帮到你。本文还有配套的精品资源点击获取
返回列表