摘要

  • Hugo Salgado、Mauricio Vergara Ereche 与 Duane Wessels 共同署名的 RFC 9660 于 2024 年 10 月发布,定义了可向权威 DNS 服务器询问回答所用区域版本的 ZONEVERSION 选项。
  • IANA 将它登记为 EDNS 选项 19。Salgado 在 LACNIC 的亲笔文章中讲述,这个运维问题如何经过邮件列表、线下游说和多年修订变成标准。

DNS 的 SOA 序列号早就公开,为什么还要增加一个选项?因为运维人员排查的是眼前这条回答。如果区域文件分发到多台权威服务器,有的加载了新版,有的还在旧版,单看查询结果只能发现冲突,无法直接知道是哪份数据发了声。RFC 9660给回答附上一个可请求的版本线索。

客户端在发给权威服务器的查询里放入空的 ZONEVERSION 选项。服务器若支持并决定回应,就返回相关区域的类型和值。规范还写明某些 NXDOMAIN、NODATA 和转介回应可如何携带它。调查者于是能把服务器、问题、回应和版本摆在同一行,而不必事后再用一次 SOA 查询猜测先前究竟是哪份副本作答。

Salgado 在 LACNIC 刊发的第一人称回顾中说,想法约在文章发表五年前萌生,起因是 DNS 运行中的实际需要。他把邮件列表和会议走廊里的推动工作归功于 Mauricio Vergara Ereche,也提到 Duane Wessels 后来加入,帮助最终编辑与 IANA 审核。2022 年初版工作组草案列出前两位作者;2024 年的 RFC列出三位。一个小字段的诞生,靠的不是某个人关起门来给协议添一行。

这套机制没有把递归解析器变成透明传话筒。RFC 要求它不能自动把 ZONEVERSION 请求往上游照搬;权威服务器也可以选择是否应答。因此排查时要直接问目标权威服务器,并记录时间、查询和结果。版本标签告诉人哪一份区域参与了这次回答。整份区域文件是否完整,RFC 把读者引向 ZONEMD 等其他检验办法。

IANA DNS 参数登记表已经列出选项 19 和相应类型登记。这证明标准进入了公开号码体系。要知道哪些权威服务已经部署,还需要对具名服务器做有日期的查询,并取得运营者记录。Salgado 至少把一件事变成了可问的问题:当两份区域副本说话不一致,协议现在允许追问每一句出自哪一版。