给自己的前缀签名只是容易的那一半
关于 RPKI 的采用情况,报道通常只给一个数字,而那个数字看上去令人鼓舞。2025 年内,路由源授权(ROA)从 280,692 条增长到 344,209 条,增幅 23%;出现在 ROA 中的唯一源 ASN 数量上升 11%,达到 52,661 个。 1
真正要紧的是它下面那个数字。在路径一侧,全球路由表中大约只有 0.5% 的自治系统发布了 ASPA 记录。 1
这两个数字描述了 2026 年路由安全的真实状态:源签名已经成为主流,而源之上的一切才刚刚起步。
签名和验证是两件不同的工作
签名,是发布一条 ROA,声明 AS64500 有权源发 203.0.113.0/24。它保护的是你,而且只有在别人去检查时才生效。本质上,它是你在自己的区域注册管理机构填的一张表。
验证,是运行一个 RPKI 验证器,并丢弃无效路由或降低其优先级。它保护你的流量不被劫持走,而且是实打实的运维工作:维护验证器、持续喂数据、决定你对无效路由的策略,并接受你偶尔会因为别人把 ROA 写错而丢弃一条路由。
签名是一个合规勾选框,验证是工程。第一个数字的增长,几乎说明不了第二个。
落差比标题更大
最清楚的例证来自 ARIN 最近一次会员大会。在涵盖约 1100 家美国科研与教育网络的 Internet2 社区中,部署了 ASPA 的恰好是两家。而作为泛欧科研网络、也是全球最勤勉的运营者之一的 GÉANT,其地址空间覆盖率约为 33%。 2
如果资源充足、安全意识强的科研网络是 1100 家里只有两家,那商业互联网并不会悄悄地走在它们前面。
同一场会议还说明了这件事为什么难,而不只是被忽视:会上提到的某个商用地址段,要完全覆盖需要一千多条独立的 ROA。 2 RPKI 描述起来容易,规模化运维却琐碎,而错误恰恰住在这份琐碎里。
大多数无效路由是你自己造成的
最后这一点,应该改变你看待无效路由的方式。日常的成因并不是攻击者。
重新编号之后遗留的过期 ROA。maxLength 值设得马虎,授权了比预期更多的更具体前缀。为某个 AS 建了 ROA,而前缀却由另一个 AS 宣告。地址空间早已转让,授权却被遗忘。
这一点之所以重要,有两个原因。如果你因为担心打断合法流量而迟迟不丢弃无效路由,谨慎是对的,但解药是清理你自己的 ROA,而不是继续照单全收。另外,RPKI 的日常价值,至少有一半在于防止差错,而不只是防止攻击。它拦下的是一位疲惫工程师在凌晨两点即将造成的路由泄漏,而这比蓄意劫持更可能让你丢掉前缀。
RPKI 不做的事
这一点值得说白,因为 RPKI 常被过度推销。它不验证 AS 路径,只验证谁源发了前缀。它不消除路由泄漏,因为当源是合法的、只有传播出了错时,一次泄漏在 RPKI 看来完全有效。它也不会替你修好过期的 ROA 或设错的 maxLength,那是你的活。
路径层面的保护需要 ASPA 和 BGP Roles,而上面那个 0.5% 就是这项工作今天的样子。RPKI 是地板,不是天花板。
AS210464,以及我们验证什么
我们运营 AS210464,并且站在这道落差的验证一侧。
我们对接受的路由执行 RPKI 验证。如果你通过 BGP 会话向我们宣告一个前缀而你的 ROA 并未授权它,那会先变成一次对话,而不是先变成一次中断。
我们公布完整的 BGP community 集合,让你自己控制自己的宣告,而不必开工单。这涵盖选择性宣告——不要宣告给某个特定 AS、不要给客户、不要给直连对等方、不要给 IXP 对等方、不要给 route server、不要给上游——以及区域控制、一到三次 prepend、为备份路由控制 local-preference,还有当你被攻击、需要在边缘而不是在你服务器上丢弃前缀时的远程触发黑洞路由。
BGP 会话起价 €5/月。每台虚拟机本就附带一个可路由的 IPv6 /48,但这与“可供你宣告的地址空间”不是一回事:那需要你自带,或向我们租用 IPv6 空间。会话与本地网关地址建立对等,IPv4 是 10.0.0.1,IPv6 是 fd10::1,正是这一点让你的寻址可以在我们的节点之间迁移,细到单个 /32 或 /128。该方案要求你这一侧启用 multihop 并把 TTL 设为 255,无论你跑的是 BIRD 还是别的。
在买任何东西之前,你都可以验证我们的路由。looking glass 可以从地拉那、斯科普里、阿姆斯特丹和都柏林实时执行 BGP 路由查询、ping 和 traceroute,无需账号。如果一家服务商不让你看它的路由表,请问问自己为什么。
如果这周只做一件事
审计你自己的 ROA。你未来最可能遇到的路由事故,是你自己造成的那一次。请检查:你宣告的每个前缀是否都有 ROA,源 AS 是否正确,maxLength 是否与你实际宣告的一致(而不是“以防万一”设得过于宽松),以及是否还留着你早已不再持有的地址空间的残余记录。
然后,如果你完全没有做验证,就开始做。先用一个月只记录无效路由而不丢弃,看看你本来会打断什么,把属于你自己的问题清理干净,然后再打开强制执行。