摘要

  • AFRINIC存档中名为2026年9月10日、11日、12日的标准委派统计文件,字节完全相同,内部序号和覆盖期末日均为20260910;扩展文件也呈现同一模式。
  • 内容相同不能区分正常的“新一天无变化”、有意再次发布旧结果与资料源停滞。精简的版本化发布回执可以说明这一区别,而不泄露会员记录。

每天下载成功,并不等于每天获得了一次新的观察。在9月14日亚洲上海时区的抓取中,AFRINIC的三个连续日期存档返回了同一份数据:名为9月10日、11日、12日的标准文件均为491,382字节,SHA-256均为54b0cfb6c962fe41815728ef9bff5950cece5fcdd7ab17b94cc3875e68378e07。文件头内的序号是20260910,记录数是9,947,覆盖期末日也是9月10日。

这里有一个清楚的事实,也有一个必须留下的问题。事实是三个访问路径对应同一份公开内容。问题是AFRINIC为何在后续日期名称下继续提供这个版本。公开文件没有回答;“发生故障”和“新一天确认没有变化”都不能从相同字节中直接推出。

文件名、版本号与服务器时间各管一件事

AFRINIC目录发布的RIR统计交换规范对日期用途有明确规定:文件应每天产生;delegated-<registry>-yyyymmdd中的日期,是登记机构当地生成文件的日期;文件头中的serial则是该机构文件序列内的序号。覆盖期末日又是另一字段。latest可以是指向日期文件的链接,但更新时须指向最新文件。

这些字段不能相互替代。2026年目录给9月10日文件标出的修改时间在9月11日,给11日文件标在12日,给12日文件标在13日。HTTP响应也提供不同的修改时间。这说明服务器交付的对象有不同元数据,并不能证明内部生成任务分别在何时运行、检查了什么资料。

根目录更能显示这几层身份并未同步:它列出delegated-afrinic-20260913,修改时间却是9月10日。下载该对象以及latest别名,得到的仍是同一份9月10日标准数据。日期名称往前走,不代表内部序号、覆盖期或底层观察窗口跟着往前走。

校验通过,也不能说明复用原因

这不是仅有一行文件头未改。9月10日至12日扩展文件与当前扩展别名,均为992,722字节,SHA-256为66f1d06b8f272cbb3f2da3260b73a63cb7b1cd132ad770851dc2e2864ac9eb75,内部序号与覆盖期末日同为20260910,声明19,651条记录。扩展格式能呈现更多资源状态与持有者信息,却没有给这次发布行为增加解释。

三个日期的MD5伴随文件也完全相同。独立计算所得568a689f01216f94af0b174514fd3903与其公布值一致。三个分离式OpenPGP签名对象同样字节相同;本文不声称已经在本地验证这些签名。

这些检查并非无用。MD5吻合支持“本次抓取没有相对于公布校验值发生传输损坏”这一有限结论。签名对象相同,则说明公开的签名材料也被重复提供。但即使签名数学验证通过,它连接的仍是字节与密钥,不是生成任务与新观察日期。签名不能替发布者解释复用。

9月9日标准文件提供了一个对照:字节数与声明记录数相同,SHA-256却不同,内部序号为9月9日。因此,计数相同、版本相同与内容相同是三件事。总数不变不代表每行不变;完整字节相同才证明抓取的行内容相同。

“没有变化”也需要一个检查截止点

一个登记机构某天没有新内容可报告,完全可能是正常结果。有意重发经过复核的旧版本,也不必然有问题。需要公开的是过程区别:是否针对新一天的底层状态做过检查,随后确认不必改数据;还是只再次交付之前的输出?

当前文件没有生成任务号、资料源截止点、复用理由或等待更正状态。既不能据此指控AFRINIC隐瞒分配,也不能拿较新的文件名证明所有资料源都已重新检查。

这会把歧义转交给消费者。仅按URL归档的采集器,会把同一份数据保存为三个“每日观察”;仅按内部序号去重的采集器,则可能把后续发布路径出现这一事实也删掉。前者夸大独立观察次数,后者丢失发布历史。重新数行或再次验MD5,都无法补上这条过程记录。

消费者可以先保留请求URL、抓取时间、响应元数据、内部序号、覆盖期与摘要。将这次观察标成“后续日期路径返回相同内容”,而不是“9月10日后没有分配”或“确认故障三天”。AFRINIC再用一条发布回执说明任务、截止点和复用类别,两个半边才能连起来。

证据边界与来源

本文分析的是冻结的公开对象,不是内部运行报告。它能证明抓取内容相同、说明规范中的字段定义以及服务器返回的元数据;不能证明数据库错误、分配遗漏、故障、倒填日期、操纵或实际伤害。日后若对象被更正,旧版比较依然需要可恢复。