3.1. Handling Resolution Failures (处理解析失败)
如果 DNS 响应受到加密保护 (例如, 使用 DNSSEC 或 TLS [DoT] [DoH]), 并且 SVCB 解析因身份验证错误、SERVFAIL 响应、传输错误或超时而失败, 客户端应该 (SHOULD) 放弃其到达服务的尝试, 即使客户端是 SVCB-optional 的。否则, 主动攻击者可以通过拒绝用户访问 SvcParams 来发起降级攻击。
如果域名是 DNSSEC 签名的、递归解析器正在进行 DNSSEC 验证, 并且攻击者位于递归解析器和权威 DNS 服务器之间, 则可能发生 SERVFAIL 错误。如果客户端和递归解析器之间的主动攻击者根据大小或其他可观察模式选择性地丢弃 SVCB 查询或响应, 则可能发生传输错误或超时。
如果客户端对 A/AAAA 响应强制执行 DNSSEC 验证, 它应该 (SHOULD) 对 SVCB 应用相同的验证策略。否则, 攻击者可以通过伪造将客户端定向到其他 IP 地址的 SVCB 响应来破坏 A/AAAA 保护。
如果 DNS 响应没有受到加密保护, 客户端可以 (MAY) 将 SVCB 解析失败视为致命或非致命。
如果客户端由于其链长度限制而无法完成 SVCB 解析, 客户端必须 (MUST) 回退到权威端点, 就好像服务的 SVCB 记录不存在一样。