跳到主要内容

3. 域管理员建议 (Domain Administrator Advice)

3.1 向后兼容性考虑 (Backward Compatibility Considerations)​

指望在第一台服务器发布 SRV RR 时所有人都会更新其客户端应用程序,是不切实际的(即便这种更新值得期待)。因此,对于既有的协议,SRV 必须与地址记录查找共存,DNS 管理员应当尽量提供地址记录以支持旧客户端:


3.2 配置策略 (Configuration Strategies)​

3.2.1 多主机分布式服务 (Multi-Host Distributed Services)​

当单个域的服务分散在多台主机上时,建议在与 SRV RR 相同的 DNS 节点上维护一份地址记录列表,列出用于 Telnet、NNTP 以及其他可能配合此名称使用的协议的合理(即便可能并非最优的)后备主机。

客户端行为警告 (Client Behavior Warning)

某些程序只会尝试它们从 gethostbyname() 等接口取回的第一个地址,而我们还无法确知这种行为有多普遍。


3.2.2 单一服务、多台主机 (Single Service, Multiple Hosts)​

当某项服务由多台主机提供时,可以任选以下一种做法:

  • 为所有主机都提供地址记录(此时轮询机制——若可用——将均等地分摊负载)
  • 仅为其中一台( presumably 最快的那台)提供地址记录

3.2.3 备份服务器 (Backup Servers)​

如果某台主机仅打算在主服务器停机时提供服务,那么它大概不应被列入地址记录。


3.2.4 备份记录的端口要求 (Port Requirements for Backup Records)​

强制性要求 (Mandatory Requirement)

被备份地址记录所引用的主机必须 (MUST) 使用该服务在 Assigned Numbers 中规定的端口号。


3.2.5 未来协议设计 (Future Protocol Design)​

对于那些"辅助服务器"概念并无用处(或并无意义)的未来协议,其设计者可以选择不使用 SRV 对辅助服务器的支持。此类协议的客户端可以使用或忽略那些优先级高于该域中最低优先级 RR 的 SRV RR。


3.3 DNS 应答大小限制 (DNS Reply Size Limitations)​

3.3.1 实际限制 (Practical Limit)​

目前 DNS 应答存在一个 512 字节的实际限制。在所有解析器都能处理更大的响应之前,强烈建议域管理员将其 SRV 应答保持在 512 字节以下。


3.3.2 大小估算 (Size Estimation)​

约翰逊博士说过,所有整数都是不实的,而下面这些数字就非常"整":

应答包的构成:

  • 30 字节:一般性开销
  • 可变:服务的名称(例如 "_ldap._tcp.example.com")
  • 20 字节 + 目标名称:每个 SRV RR
  • 15 字节 + NS 名称:NS 段中的每个 NS RR
  • 约 20 字节:附加数据段中的每个 A RR

这一大小估算极为粗略,但对实际应答大小的低估不应超出太多。

验证 (Verification)

如果某个应答可能接近该限制,建议使用 DNS 查询工具(如 "dig")查看实际的应答。


导航​