核心目标是确保域内客户端能准确快速发现域控制器,SRV记录须置于正向查找区域的特定路径:_msdcs.<Domain_Name>、dc._msdcs.<Domain_Name>及_sites/Default-First-Site-Name/_tcp.dc._msdcs.<Domain_Name>;手动添加时需严格按服务名(如_ldap)、协议(_tcp)、端口(389)、优先级(0)、权重(100)及完整FQDN主机名(如dc01.corp.example.com.)配置,并用nslookup -type=srv验证解析有效性。
在 windows 本地 dns 中添加 srv 记录,核心目标是让域内客户端能准确、快速地发现域控制器(dc),尤其在多站点、混合角色(如 gc、rodc)或非标准部署场景下。系统安装 active directory 后通常会自动注册这些记录,但手动添加适用于以下情况:dns 服务器非 windows、ad 安装后注册失败、需自定义权重/优先级、或排查定位异常时补全缺失项。
确认 SRV 记录应存放的位置
SRV 记录必须放在正向查找区域中特定的子域名路径下,不能随意创建在根域或任意文件夹。关键路径包括:
- _msdcs.<Domain_Name>:存放跨林、森林级服务(如 _gc、_kerberos._tcp)
- dc._msdcs.<Domain_Name>:存放域控制器核心定位记录(必加)
- _sites/Default-First-Site-Name/_tcp.dc._msdcs.<Domain_Name>:站点感知定位(推荐为每个实际站点单独配置)
例如,域名为 corp.example.com,则主 DC 定位路径应为:
dc._msdcs.corp.example.com
手动添加关键 SRV 记录(以 DNS 管理器为例)
打开 DNS 管理器(dnsmgmt.msc),依次展开「正向查找区域」→ 找到你的域名(如 corp.example.com)→ 右键 → 「其他新记录」→ 选择「服务位置(SRV)」。
按以下格式填写(以 LDAP 服务为例):
免费 DNS 与邮件安全分析(IntoDNS.ai):包括 DNSSEC、SPF、DKIM、DMARC、MTA-STS、BIMI、SMTP STARTTLS、FCrDNS、黑名单、发件人要求及报告。
- 服务:_ldap(不可带空格或下划线前缀以外字符)
- 协议:_tcp(Active Directory 默认使用 TCP)
-
名称:留空 或 输入
dc(表示该记录属于 dc._msdcs 子域) - 优先级:0(数值越小越优先;多 DC 时可设不同值做负载分层)
- 权重:100(同优先级下用于比例分配;单 DC 填 100 即可)
- 端口:389(LDAP)或 636(LDAPS)或 88(Kerberos)
-
主机提供此服务:填完整 FQDN,例如
dc01.corp.example.com.(注意末尾的点,代表绝对域名)
同样方式添加 _kerberos._tcp(端口 88)、_kpasswd._tcp(端口 464)、_gc._tcp(端口 3268,如需全局编录支持)。
验证记录是否生效且可被客户端解析
不要只看 DNS 管理器里有没有——要模拟客户端行为验证实际可用性:
- 在域内任意客户端(非 DC)上打开命令提示符,运行:
nslookup -type=srv _ldap._tcp.dc._msdcs.corp.example.com - 若返回类似:
_ldap._tcp.dc._msdcs.corp.example.com<br> SRV service location: priority=0, weight=100, port=389, svr hostname=dc01.corp.example.com.
并能进一步ping dc01.corp.example.com通,则说明记录已就绪 - 也可用
dcdiag /test:dns /v在 DC 上检查注册完整性,重点关注 “SRV record registration” 部分是否通过
注意事项与常见疏漏
手动添加 SRV 记录不是“一劳永逸”,以下几点直接影响定位效果:
- 确保 DNS 区域启用了安全动态更新(尤其 AD 集成区域),否则 Netlogon 服务无法自动刷新记录(如 IP 变更后)
- RODC 默认不注册跨站点 SRV 记录,如需它被远程客户端发现,须手动添加并明确指定其 FQDN 和端口
- 若客户端始终连到远端 DC,检查是否误删了 _sites 下的记录,或 DNS 服务器未将客户端所属站点信息正确传递给定位器
- 所有 SRV 主机名(svr hostname)必须对应真实、可解析、可达的 A 或 AAAA 记录,否则解析链断裂

















