摘要

  • 查询 190.147.255.0 时,LACNIC WHOIS 返回父级地址块 190.144.0.0/14,并列出 AS14080 与 AS10620。它们是投影值,不是对实时路由的直接观测。
  • 同期 RPKI 快照里有四条覆盖该 /24 的 VRP;RIPE RIS 实际观测到的源是 AS10620,因此这条具体路由的 ROV 状态为 Valid。源 ASN 投影回执应把这些状态分别记录。

政策解决了维护问题,也改变了字段的性质

现行 LACNIC 政策手册第 3.4 节规定:在信息可用时,LACNIC 应在 WHOIS 响应中加入被查询前缀的源 ASN;这个 ASN 可以从 RPKI 仓库提取,以 ROA 指定的源 ASN 为依据。该文字来自已经实施的 LAC-2021-1,实施日期是 2022 年 3 月 28 日。

提案当时针对的是一个真实的维护摩擦。若成员在资源管理系统里填写描述性源 ASN,ROA 改了而该字段没有同步,就会产生两套答案。允许从 RPKI 提取,减少了重复维护,也使 WHOIS 更接近当时有效的授权资料。

不过,字段的含义随之改变。它不再只是登记记录中的一个静态值,而可能是对某个时点、某个验证器所见授权集合的压缩投影。压缩并不等于错误;问题是读者能否从结果回到产生结果的授权边界。

两行 ASN 背后其实有四条 VRP

2026 年 9 月 19 日 21:59:47 UTC,直接向 whois.lacnic.net 查询 190.147.255.0,返回的是父级登记对象 190.144.0.0/14。其中有两行:

  • aut-num: AS14080
  • aut-num: AS10620

这个样本很重要,因为它直接否定了一种过度简化的描述:当前 WHOIS 并不总是只留下一个 ASN。顺序也不能解释为优先级,更不能把第一行或任何单独一行当成唯一获授权源。

在 21:52:52 UTC 生成的 LACNIC Routinator 结果里,查询到的 /24 由四条 VRP 覆盖:

VRP 前缀 maxLength 获授权源 ASN
190.147.0.0/16 24 AS10620
190.147.0.0/16 24 AS14080
190.144.0.0/14 24 AS10620
190.144.0.0/14 24 AS14080

这四条记录说明,WHOIS 中的两个 ASN 与当时的覆盖授权集合相容。但它们没有说明两层覆盖前缀,也没有说明四条记录的 maxLength 都是 24。Routinator 的扩展输出还给出了每条 ROA 的对象 URI、证书有效期与链有效期;这些证据都没有随两行 aut-num 一起出现。

因此,不能据此判定 LACNIC 的输出“错了”。更准确的结论是:结果保留了多值,却省略了多值成立的结构。读者只看到“谁可能被授权”,看不到“由哪个前缀、允许到多具体、在什么快照中被授权”。

获授权不等于正在宣告

ROV 的输入不是 ASN 列表,而是一条具体 BGP 路由和一个完整 VRP 集合。RFC 6811 把 VRP 描述为前缀、最大长度和源 ASN 的组合;一条路由至少与一条覆盖 VRP 同时满足长度与源 ASN 条件,才是 Valid。RFC 9582 还解释了多源授权的对象结构:一份 ROA 识别一个获授权 AS,同一组前缀要授权多个 AS,需要多份 ROA。

实时 BGP 观测补上了路由侧证据。紧接 WHOIS 查询取得的 RIPEstat BGP-state 响应,对 190.147.255.0/24 记录了 327 条观测路径,所有路径末端都是 AS10620。把这条实际观测到的路由放进同期 Routinator 快照,两个 AS10620 的 VRP 匹配;两个 AS14080 的 VRP 仍覆盖该前缀,但源 ASN 不匹配。最终状态是 Valid。

若在同一授权快照中,实际路由的源改为 AS14080,它同样会得到 Valid,匹配组与 unmatched_as 组互换即可。这并不表示当时两个 AS 都在宣告这个 /24。它只表示两个 AS 都有资格成为源,而 RIPE RIS 在该快照实际看到的是 AS10620。

由此可以把容易混淆的五个状态分开:

  1. WHOIS 登记对象上显示的字段;
  2. 所有覆盖该路由的 ROA/VRP 集合;
  3. 每条 VRP 的前缀、maxLength 与 ASN;
  4. BGP 观测中的实际源 ASN;
  5. 以该路由和该 VRP 快照计算出的最终 ROV 结果。

前一层可以帮助解释后一层,却不能代替后一层。

一张小回执就能补齐解释边界

WHOIS 不需要变成路由监测器。LACNIC 也不需要替运营商决定是否接收一条路由。缺少的是一张“源 ASN 投影回执”,说明平面字段由什么证据生成。

回执首先应记录原始查询、规范化后的查询前缀,以及最终返回的登记对象。然后逐项列出所有参与投影的 (VRP 前缀, maxLength, 源 ASN),而不是只留下去重后的 ASN。它还应绑定验证器身份、生成时间、可用时的缓存会话或等价快照标识,以及授权集合摘要。对可公开的对象,可附 ROA URI 或稳定摘要。

多值本身也需要类型。结果可以是空、单值、多值、部分或过期;每种状态都应明确。预计刷新时间或失效时间可以防止某次投影脱离其 RPKI 快照后被无限复制。后续回执通过 supersession 引用替代旧回执,而不是让旧值悄然改义。

最重要的一句话应直接写在回执上:这些 ASN 不是实时 BGP 观测,不证明每个获授权 AS 都在宣告,不表示路由偏好,也不代表本地接收策略。实际路由源与 ROV 结果应由另一项带时间的比较给出。

让正确的多值答案变得可复核

这个样本显示,LACNIC 当前输出具备一个值得肯定的能力:它保留了多个源 ASN。下一步不是从中选出一个“主 ASN”,而是保留使多值成立的证据。

目前要复原这次判断,需要把三种服务拼在一起:WHOIS 给投影值,Routinator 给覆盖授权,路由收集器给实际源。投影回执不应吞并这些服务,只需给它们共同的时间边界和连接键。

字段告诉读者 AS14080 与 AS10620;回执说明有 /16 和 /14 两层覆盖、共同的 maxLength 24、各自的 ROA 证据以及生成列表的规则;BGP 观测再说明实际出现的是 AS10620;ROV 最后回答这条具体路由是否匹配。只有保持这四层的距离,WHOIS 中那两行简短的 ASN 才不会被误读为比政策原意更强的权威声明。

来源