2. SRV RR 的格式
2.1 RR 数据字段
SRV RR 包含以下字段:
优先级(Priority)
权重(Weight)
端口(Port)
目标(Target)
2.2 字段说明
2.2.1 优先级字段
用途
优先级(Priority)是一个 16 位无符号整数,用于指定目标主机的优先级。较低的值表示较高的优先级。
客户端必须按优先级升序尝试记录。
2.2.2 权重字段
用途
权重(Weight)是一个 16 位无符号整数,用于在相同优先级的记录之间进行负载分配。
当多条记录具有相同优先级时,权重越大被选中的概率越高。
2.2.3 端口字段
用途
端口(Port)是一个 16 位无符号整数,给出服务所监听的端口号。
2.2.4 目标字段
用途
目标(Target)是指向提供该服务的目标主机的域名。目标主机必须能够在该域名下被地址记录(A 或 AAAA)解析。
2.3 目标字段约束
强制约束
当某服务不可用时,目标字段必须为一个单独的点(".",即根域),且优先级与权重字段应当为零。
目标字段不得为别名(CNAME)。如需使用别名,应在目标处放置真实主机名,并为该主机名另行发布 CNAME。
2.4 记录命名约定
SRV RR 的拥有名(owner name)格式为:
_service._protocol.target
其中 _service 与 _protocol 均以下划线开头,以避免与常规主机名发生意外冲突。