RPKI 路由验证
对照我们从五个 RIR 信任锚验证的 ROA 数据副本,进行路由来源验证(RFC 6811)。
9.9.9.0/24 · AS19281
有效
有 ROA 授权此来源 AS 宣告此前缀。
覆盖的 ROA
1
| 前缀 | 最大长度 | 来源 AS | 信任锚 | 匹配 |
|---|---|---|---|---|
| 9.9.9.0/24 | /24 | AS19281 | ARIN | ✓ |
指定 AS19281 的 ROA
有 12 个 ROA 指定了此 AS。
- 9.9.9.0/24
- 68.65.126.0/23–24
- 147.72.242.0/24
- 149.112.112.0/24
- 149.112.149.0/24
- 160.0.0.0/17–24
- 199.249.255.0/24
- 207.34.5.0/24
- 216.21.3.0/24
- 2602:807:e000::/40–48
- 2620:fe::/48
- 2a14:af00::/29–48
资源公钥基础设施(RPKI) 让 IP 地址块的持有者可以发布经签名的 路由起源授权(ROA):声明某个 AS 可以起源该地址块,直至规定的最大前缀长度。执行路由起源验证(Route Origin Validation)的网络会据此丢弃与之矛盾的路由。
起源验证(RFC 6811)有三种结果。如果某个 ROA 覆盖该前缀、指明其起源 AS 并允许其长度,路由为有效。如果有 ROA 覆盖该前缀但没有一个匹配,路由为无效:要么是其他 AS 在起源它,要么前缀比允许的更具体。如果没有任何 ROA 覆盖它,则为无 ROA(not found),此时 RPKI 对它不作任何判断。
我们使用自己保存的已验证 ROA 数据进行验证。这些数据由 rpki-client 项目根据五个 RIR 的信任锚生成,我们每隔几小时更新一次。将 AS 栏留空,即可验证我们的 BGP 路由表中当前看到的起源。
常见问题
我的路由无效,该怎么办?
通常是 ROA 过时了:前缀已转到另一个 AS,或者宣告了更具体的前缀却没有提高最大长度。地址块持有者可以在其 RIR 的 RPKI 门户中修正。
“无 ROA”说明有问题吗?
没有。这只表示持有者没有创建 ROA。路由照常被接受,只是没有受到保护。
什么是 AS0 ROA?
针对 AS 0 的 ROA 表示任何人都不应起源该前缀。它所覆盖的路由均为无效,除非另有 ROA 使其有效。