1. 引言与概述 (Introduction and Overview)
1.1 概述与基本原理 (Overview and Rationale)
目前,要联系服务器,必须满足以下条件之一:
- 知道服务器的确切地址 (exact address)
- 广播查询 (broadcast a question)
SRV 资源记录 (SRV RR) 为管理员提供了以下能力:
- 多服务器支持 (Multiple Server Support): 为单个域 (domain) 使用多个服务器
- 灵活迁移 (Flexible Migration): 轻松地将服务从一台主机迁移到另一台主机
- 主备机制 (Primary-Backup Mechanism): 将某些主机指定为服务的主服务器 (primary servers),其他主机作为备份服务器 (backup servers)
工作原理 (Working Mechanism)
客户端 (clients) 请求特定域的特定服务/协议 (specific service/protocol for a specific domain),DNS 返回任何可用服务器的名称。
note
本文档中的"域 (domain)"一词按照 RFC 1034 的严格定义使用。
地址记录说明
本文档中提到的"地址记录 (address records)"是指:
- A RR (IPv4 地址记录)
- AAAA RR (IPv6 地址记录)
- 或其最现代的等效记录
1.2 定义 (Definitions)
本文档中使用的关键词应按照 [BCP 14] 中的规定进行解释:
- MUST: 必须
- MUST NOT: 必须不
- SHOULD: 应该
- SHOULD NOT: 不应该
- MAY: 可以
本文档中使用的其他术语在 DNS 规范 RFC 1034 中定义。
1.3 适用性声明 (Applicability Statement)
重要规范要求
一般来说,预期客户端将在相关协议规范明确指示的应用程序中使用 SRV 记录。
规范要求 (Specification Requirements)
使用 SRV 记录的协议规范必须 (MUST) 定义:
- Service 字段符号名称: 在 SRV 记录的 Service 字段中使用的符号名称
- 安全考虑: 包含完整的安全考虑 (security considerations)
使用限制
在没有明确协议规范的情况下,不应该 (SHOULD NOT) 使用服务 SRV 记录。
1.4 介绍性示例 (Introductory Example)
LDAP 服务发现示例
假设一个支持 SRV 的 LDAP 客户端想要发现满足以下条件的 LDAP 服务器:
- 支持 TCP 协议 (TCP protocol)
- 为域 example.com 提供 LDAP 服务
查询方式:
_ldap._tcp.example.com
查询解析:
_ldap: 服务标识符 (service identifier)_tcp: 协议标识符 (protocol identifier)example.com: 目标域 (target domain)
示例说明
本备忘录末尾附近的示例区域文件 (example zone file) 包含对 SRV 查询的应答资源记录,详见 [ARM] 文档。
LDAP 示例的免责声明
选择 LDAP 作为示例仅用于说明目的。本文档中使用的 LDAP 示例不应被视为 LDAP 使用 SRV 记录的推荐方式的权威声明。
如前面的适用性部分所述,请查阅相应的 LDAP 文档 以了解推荐的程序。
本章小结 (Chapter Summary)
本章介绍了 SRV 记录的基本概念和应用场景:
- 问题背景: 传统 DNS 无法有效支持服务发现和负载均衡
- 解决方案: SRV 记录提供了服务位置、优先级和权重信息
- 适用范围: 需要明确的协议规范支持
- 典型应用: LDAP、Kerberos 等分布式服务