完整操作步骤表,目的是彻底清理 S-DNS6 的残留 SRV 记录,并让 S-DNS1 全权承管 SYSVOL/NETLOGON
好的,我帮你整理一个 完整操作步骤表,目的是彻底清理 S-DNS6 的残留 SRV 记录,并让 S-DNS1 全权承管 SYSVOL/NETLOGON,同时保证 DFSR、Netlogon 和 DNS 正常。整个流程分为 准备阶段、清理阶段、确认阶段、修复阶段 四大步骤。
一、准备阶段(确认环境)
-
确认 S-DNS1 和 S-DNS6 的状态
-
在 S-DNS1 上:
nltest /dsgetdc:shuncom.local /pdc repadmin /replsummary dfsrdiag /getglobalstate -
在 S-DNS6 上:
net stop netlogon dfsrdiag /getglobalstate repadmin /replsummary -
确认 DFSR 全局状态和复制状态。S-DNS6 停止 Netlogon,不参与注册 SRV。
-
-
备份 DNS 和 SYSVOL
-
DNS:导出
shuncom.local区域。 -
SYSVOL:复制
C:\Windows\SYSVOL\sysvol和C:\Windows\SYSVOL\domain\scripts到安全位置。
-
二、清理 S-DNS6 残留 SRV 记录
目标:让 S-DNS6 不再出现在 _ldap、_kerberos、_gc 等 SRV 记录中,但不删除其他 DC 信息。
-
在 S-DNS1 上打开 DNS 管理器:
-
打开
DNS -> shuncom.local -> _msdcs.shuncom.local -
查找涉及
s-dns6.shuncom.local的 SRV 记录:-
_ldap._tcp.dc._msdcs.shuncom.local -
_kerberos._tcp.dc._msdcs.shuncom.local -
_gc._tcp.shuncom.local -
_ldap._tcp.gc._msdcs.shuncom.local
-
-
修改记录的优先级为高或权重为 0(Windows DNS 不支持“禁用”,可以手动降低优先级,使 S-DNS1 优先)。
-
可考虑 将 S-DNS6 SRV 移至其他备用站点 或在 DNS 上设置 禁止注册 DC 记录(在 S-DNS6 上注册表:
HKLM\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters\DnsAvoidRegisterRecords)。
-
-
在 S-DNS6 上禁止注册 SRV:
reg add "HKLM\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters" /v DnsAvoidRegisterRecords /t REG_MULTI_SZ /d "_ldap._tcp._sites._tcp._gc" /f net stop netlogon net start netlogon-
可指定多条记录防止注册。
-
-
清理 DNS 缓存并强制刷新:
-
在 S-DNS1:
dnscmd /clearcache ipconfig /flushdns -
强制注册 DNS:
nltest /dsregdns /server:s-dns1.shuncom.local -
检查 SRV:
nslookup -type=SRV _ldap._tcp.dc._msdcs.shuncom.local nslookup -type=SRV _kerberos._tcp.dc._msdcs.shuncom.local nslookup -type=SRV _gc._tcp.shuncom.local
-
三、确保 S-DNS1 承管 SYSVOL/NETLOGON
-
检查 DFSR 状态(S-DNS1 上):
dfsrdiag /getglobalstate dfsrdiag backlog /rgname:"Domain System Volume" /rfname:"SYSVOL Share" /smem:s-dns1 /rmem:s-dns1-
确认无 backlog,状态为
已消除或开始。
-
-
启动 Netlogon 并注册共享:
net start netlogon nltest /dsregdns /server:s-dns1.shuncom.local-
确认 SYSVOL/NETLOGON 共享:
net share dir \\s-dns1\SYSVOL dir \\s-dns1\NETLOGON -
如果共享消失,手动创建:
net share SYSVOL=C:\Windows\SYSVOL\sysvol /GRANT:"Domain Admins",FULL net share NETLOGON=C:\Windows\SYSVOL\domain\scripts /GRANT:"Domain Admins",FULL
-
-
强制 DFSR AD 同步(S-DNS1 → S-DNS6):
repadmin /syncall /AdeP repadmin /showrepl
四、验证阶段
-
检查 AD 健康:
dcdiag /test:advertising /test:netlogons /test:sysvol-
确认 S-DNS1 通过所有测试。
-
确认 S-DNS6 不再出现在主要 SRV 记录列表中。
-
-
检查 SRV 注册:
nslookup -type=SRV _ldap._tcp.dc._msdcs.shuncom.local nslookup -type=SRV _kerberos._tcp.dc._msdcs.shuncom.local nslookup -type=SRV _gc._tcp.shuncom.local-
S-DNS1 应为主注册 DC。
-
S-DNS6 可保留,但权重最低或不注册。
-
-
确认 SYSVOL/NETLOGON 可用:
-
从其他 DC 或客户端访问:
\\s-dns1\SYSVOL \\s-dns1\netlogon
-
✅ 注意事项
-
S-DNS6 停止 Netlogon 并不删除 AD 内对象,只是避免注册 SRV。
-
手动共享可作为临时补救,但长期依赖 Netlogon。
-
所有 DNS 改动建议在业务低峰进行。
-
完成后可在 S-DNS1 上强制刷新 AD 和 DNS:
repadmin /syncall /AdeP nltest /dsregdns /server:s-dns1.shuncom.local ipconfig /registerdns
明白了,你现在遇到的状况是:
-
DFSRDIAG 无法联系 S-DNS1 和 S-DNS6,报错 1355 / 1717,这说明 域控制器定位失败或者 Netlogon 注册异常。
-
Netlogon 服务已经启动,但 SYSVOL/NETLOGON 共享不稳定,ipconfig /registerdns 之后共享会消失。
这说明 DFSR、DNS 和 Netlogon 三者之间的关系尚未彻底理顺,S-DNS1 还未完全“接管” PDC/SYSVOL/NETLOGON。
🔹 原因分析
-
S-DNS6 已停用 Netlogon → 但 AD、DNS 中可能仍有它的 SRV 记录残留。
-
S-DNS1 DFSR 配置未完全激活 →
ReplicationState和Backlog无法访问。 -
DNS SRV 记录混乱 → DsGetDcName 可能仍返回 S-DNS6,导致 DFSR/Netlogon 定位失败。
-
Netlogon 注册顺序问题 → 如果 S-DNS1 注册 DNS 时,AD 中仍存在 S-DNS6 信息,SYSVOL/NETLOGON 共享可能被 DFSR 冻结或删除。
🔹 建议解决方案(彻底清理 + 全权承管)
步骤 1:完全停止 S-DNS6 Netlogon
# S-DNS6 上执行
net stop netlogon
sc config netlogon start= disabled
-
禁止自动启动,避免残留 SRV 注册。
步骤 2:清理 DNS 中 S-DNS6 SRV
-
打开 DNS 管理器 → 正向查找区 → _msdcs.shuncom.local
-
删除所有指向 S-DNS6 的 SRV 记录:
-
_ldap._tcp.dc._msdcs.shuncom.local -
_kerberos._tcp.dc._msdcs.shuncom.local -
_gc._tcp.shuncom.local
-
-
可使用 PowerShell 批量删除:
Import-Module DNSServer
Remove-DnsServerResourceRecord -ZoneName "_msdcs.shuncom.local" -Name "_ldap._tcp.dc._msdcs.shuncom.local" -RRType "SRV" -ComputerName S-DNS1
步骤 3:在 S-DNS1 强制注册 Netlogon / SYSVOL
# 停止再启动 Netlogon
net stop netlogon
net start netlogon
# 强制注册 DC SRV
nltest /dsregdns /server:S-DNS1.shuncom.local
-
验证 SYSVOL / NETLOGON 共享:
net share
dir \\S-DNS1\SYSVOL
dir \\S-DNS1\netlogon
-
如果缺失,手动创建:
net share SYSVOL=C:\Windows\SYSVOL\sysvol /GRANT:"Domain Admins",FULL
net share NETLOGON=C:\Windows\SYSVOL\domain\scripts /GRANT:"Domain Admins",FULL
步骤 4:检查 DFSR 状态
-
由于 DFSRDIAG 无法联系 DC,你必须先确保 S-DNS1 DNS 注册正常且可以解析自己:
nslookup s-dns1.shuncom.local
ping s-dns1.shuncom.local
-
然后触发 AD 与 DFSR 同步:
dfsrdiag PollAD
-
若仍无法访问 DFSRDIAG,可考虑 强制重建 DFSR SYSVOL(在 PDC 上执行):
# 强制 S-DNS1 成为 SYSVOL 主
dfsrdiag PollAD
# 若必要,使用 PDC FSMO 角色的系统状态备份/恢复
步骤 5:验证 AD / DNS / SYSVOL 健康
# 检查 AD 同步
repadmin /showrepl
repadmin /replsummary
# 检查 DC 健康
dcdiag /test:advertising /test:netlogons /test:sysvol
# 验证 DNS SRV
nslookup -type=SRV _ldap._tcp.dc._msdcs.shuncom.local
nslookup -type=SRV _kerberos._tcp.dc._msdcs.shuncom.local
-
确认返回均为 S-DNS1,S-DNS6 不再出现。
💡 关键点:
-
彻底禁用 S-DNS6 Netlogon 并清理 DNS SRV。
-
S-DNS1 必须注册自身 DC SRV 并启动 SYSVOL/NETLOGON 共享。
-
DNS SRV 清理顺序在 Netlogon 注册之前,避免 DFSR/SYSVOL 被覆盖。
-
DFSRDIAG 和 repadmin 操作依赖 DNS 正确解析和 Netlogon 注册。
如果你同意,我可以帮你整理一个 可直接执行的命令顺序表(包含 S-DNS6 停用、DNS SRV 清理、S-DNS1 注册 SYSVOL/NETLOGON、DFSR 验证、健康检查),保证一步到位不报错。
你希望我直接帮你整理吗?
No Comments