摘要

  • RFC 10037 为 RDAP 的域名和名称服务器对象定义了可选的 ttl0_data 成员。
  • 返回值必须是注册局数据库中配置的 TTL,而不是通过实时 DNS 查询看到的剩余生存时间。

同一个数字回答的是不同问题

RDAP 原本可以呈现域名相关的名称服务器、胶水地址和 DS 记录,却不能同时给出这些记录集的 TTL。TTL 不只是技术参数,它表达了一项运行意图:递归解析器在多久之内可以继续复用同一记录集,而不必再次查询。

RFC 10037 增加的 ttl0_data 对象,以 values 将 DNS 记录类型助记符映射到 TTL,并允许附带 RDAP 备注。注册局可以选择是否提供这一成员;一旦提供,响应就必须在 rdapConformance 中声明 ttl0。

规范最关键的限定是:这里的 TTL 必须反映注册局数据库中的配置值,不能写成实时 DNS 查询所观察到的剩余时间。看到 3,600,只能说明注册局为相应记录集表示了一小时 TTL。它不能证明所有权威服务器都已提供这一数值,不能证明各处缓存已收到变更,也不能证明某个缓存恰好还有 3,600 秒到期。

正因为没有混淆这些层次,RDAP 才能帮助排障。事故期间,运营人员可以分别比较注册局配置、权威服务器应答和递归解析器缓存。如果三者不一致,调查就能进一步定位到配置、发布、传播或缓存环节。RDAP 提供的是带外参照,不是 DNS 实时监控。

公布权仍在注册局,含义由标准约束

ttl0_data 是可选项,因此注册局保留是否公开的决定权。但一旦公开,数据格式就不能任意解释:记录类型必须已经在 IANA 登记并使用大写助记符;TTL 属于整个 RRset,而非单条记录;JSON 数值必须是不带小数和指数形式的整数,范围为零至 2,147,483,647。

这里的权力分配很清楚。标准规定词汇、格式和一致性标记;注册局决定是否披露以及数据库代表什么数值;客户端决定是否实现并如何使用。公开配置数据并不会让任何一方因此取得实时 DNS 的控制权。

注册商、注册人、DNS 服务商和事故响应团队都能从中受益,因为他们无需进入注册局内部配置系统,就能得到统一参照。不过,RFC 10037 并不担保数据库一定最新,也不证明某项变更经过授权,更不证明线上 DNS 与数据库一致。

可扩展性把部分成本交给客户端

实现该扩展的客户端必须接受所有有效 DNS 记录类型,包括未来才加入 IANA 登记表的类型。将 JSON 自动装配为固定对象的框架,可能把合法的新类型误判为错误。规范因此要求实现者单独处理动态的 values 映射,并定期跟进 IANA 的类型列表。

RDAP 公布与 EPP 配置也是两项独立决定。RFC 10037 与 RFC 9803 互为补充,但注册局无需实现后者,也可以实现前者。看到 TTL 并不能回答是谁选择了它、哪些政策限制了它,或谁有权修改它。RFC 10037 明确把确定、分配和修改 TTL 的安全问题留在范围之外。

证据、反事实与未知项

如果没有该扩展,RDAP 仍可展示相关 DNS 记录,却无法提供注册局配置的 TTL。运营人员只能依赖线上 DNS 或注册局专有渠道,缺少标准化的带外参照。这是根据规范功能推导的反事实,不是已经测量的结果。

一手来源没有说明目前有多少注册局部署 ttl0_data,也没有证明它能缩短事故处理时间、在不同对象上保持统一披露,或改变客户和注册局行为。任何具体实现于某一时点是否准确同样未知。这些结果必须另行观察,不能由标准文本推定。

来源