资源公钥基础设施(Resource Public Key Infrastructure,RPKI)是一种旨在提升互联网路由安全性的加密框架。它允许 IP 地址资源持有者发布可验证的信息,说明哪个自治系统(Autonomous System,AS)被授权在边界网关协议(Border Gateway Protocol,BGP)中作为其 IP 前缀的路由起源。
目前 RPKI 最广泛部署的用途是路由起源验证(Route Origin Validation,ROV)。网络运营商可以将 BGP 公告与经过加密验证的路由起源授权(Route Origin Authorizations,ROAs)进行比较,并判断所公告的前缀和起源 ASN 是否与该地址空间已发布的授权信息一致。
RPKI 不会取代 BGP,不会决定数据包应经过的完整路由,也无法消除所有类型的路由事件。相反,它增加了一层可验证的授权机制,帮助运营商识别错误或未经授权的路由起源,并作出更有依据的路由决策。
核心要点:RPKI 帮助回答一个非常具体的路由安全问题:“这个自治系统是否被授权作为该 IP 前缀的路由起源?”它可以加强 BGP 路由起源验证,但不会验证完整的 AS 路径,也不能取代更广泛的路由安全和运营控制措施。
RPKI 是 Resource Public Key Infrastructure(资源公钥基础设施)的缩写。它是一种专门针对互联网号码资源设计的公钥基础设施,包括 IPv4 地址、IPv6 地址以及自治系统编号(Autonomous System Numbers)。
RPKI 架构使用数字证书和经过加密签名的对象,将互联网号码资源与授权信息关联起来。它最常见的路由应用,是允许资源持有者指定哪个 ASN 被授权作为某个特定 IP 前缀的路由起源。
这一点十分重要,因为传统 BGP 在设计时并没有内置机制,通过加密方式确认发布某个 IP 前缀的网络是否确实获得了相应授权。
相关阅读: 什么是边界网关协议(BGP)?
全球互联网由数以千计独立运营的自治系统组成,这些系统通过 BGP 交换路由信息。每个网络都会公告自己可以到达哪些 IP 前缀,而相邻网络则利用这些信息进行路由选择。
在没有额外验证机制的情况下,BGP 本身无法通过加密方式证明起源 AS 是否被授权公告某个特定前缀。错误公告可能由配置失误导致,也可能来自有意重定向流量的行为。
RPKI 增加了一层可验证的授权机制
没有 RPKI:接收到 BGP 公告的网络,并没有基于 RPKI 的加密声明可以确认起源 ASN 是否被授权发布该前缀。
使用 RPKI:接收网络可以将公告与经过验证的 ROA 数据进行比较,从而判断路由起源授权是否匹配。
因此,RPKI 可以改善网络运营商在评估 BGP 路由起源时所掌握的信息质量。
RPKI 遵循现有的互联网号码资源注册层级结构。资源证书描述该层级中与相关实体关联的 IP 地址或 ASN 资源,而经过签名的 RPKI 对象则可以被发布,并由 relying parties 进行加密验证。
对于路由起源验证,该流程可以简化为五个阶段:
RPKI 流程
1. 资源认证:互联网号码资源在 RPKI 认证层级中得到表示。
2. 创建 ROA:资源持有者创建 Route Origin Authorization,指定哪个 ASN 可以作为某个前缀的路由起源,并在适用情况下指定允许的最大前缀长度。
3. 发布:经过签名的 RPKI 对象通过 RPKI 存储库提供。
4. 验证:Relying Party 软件获取 RPKI 数据并执行加密验证,随后生成经过验证的授权信息。
5. 路由策略:网络运营商可以将经过验证的信息提供给路由器,并将 Route Origin Validation 结果纳入本地 BGP 路由策略。
路由起源授权(Route Origin Authorization,ROA)是一种经过加密签名的 RPKI 对象,用于说明哪个自治系统被授权作为该授权所覆盖的一个或多个 IP 前缀的路由起源。
一条 ROA 包含三个特别重要的元素:
IP 前缀:授权所覆盖的地址块。
起源 ASN:被授权作为该路由起源的自治系统。
最大前缀长度:一个可选值,用于定义被授权公告可以具体到什么程度。
例如,如果一个组织持有 203.0.113.0/24,并计划由 AS64500 精确地作为该 /24 的路由起源,那么相应授权可以将 AS64500 指定为允许的起源 ASN。
最大长度设置需要特别谨慎。如果确实需要发布合法的更具体前缀,就必须通过授权适当覆盖这些公告。同时,如果将最大长度设置得比实际需要更宽泛,就可能授权一些资源持有者在运营上原本并不打算发布的更具体前缀。
相关阅读: 什么是路由起源授权(ROA)?
当使用经过验证的 RPKI 数据评估一条 BGP 路由时,其路由起源验证状态通常被分类为 Valid、Invalid 或 NotFound。NotFound 有时也被称为 Unknown。
| RPKI 状态 | 含义 | 常见原因 |
| Valid | 该路由至少受到一条匹配且已经过验证的 ROA 授权。 | 起源 ASN 和前缀长度均受到 ROA 允许。 |
| Invalid | 存在覆盖该路由的授权,但该路由不符合被授权的起源 ASN 与前缀长度组合。 | 起源 ASN 错误、未经授权的更具体前缀,或 ROA 配置不正确。 |
| NotFound | 没有经过验证的 ROA 覆盖该路由公告。 | 资源持有者尚未发布相关 ROA,或者经过验证的数据中没有可用的相关 ROA。 |
Invalid 结果并不能自动证明存在恶意行为。合法网络也可能因为 ASN 错误、最大长度设置过于严格、迁移变化没有同步反映到 ROA,或其他配置错误而变成 Invalid。
这也是为什么在生产环境中使用 RPKI 时,变更管理和持续监控非常重要。
路由起源验证(Route Origin Validation,ROV)是将 BGP 公告与经过验证的 RPKI 授权数据进行比较和评估的过程。
Relying Party 验证器会获取经过签名的 RPKI 材料,并验证加密证书链及相关对象。随后,这些经过验证的信息可以提供给路由器,通常通过 RPKI-to-Router 协议传递,使路由起源状态可以被纳入路由策略。
最终的路由决策仍由网络运营商作出。RPKI 提供经过验证的信息,但它不会独立控制 BGP 路由器,也不会决定每一项路由策略。
重要:一条路由显示为 RPKI Valid,意味着其路由起源授权与经过验证的 ROA 数据一致。这并不意味着完整 AS 路径已经经过加密验证,也不能证明该路由的所有运营属性都是安全或正确的。
RPKI 部署包含两个互补方面:为自己的 IP 前缀发布授权信息,以及验证从其他网络接收到的路由起源。
资源持有者首先需要确定将要公告的前缀,以及应该作为这些前缀路由起源的 ASN。随后,可以使用相应资源认证环境中提供的 RPKI 服务创建必要的 ROA。
在发布 ROA 之前,请确认:
• 正确的 IP 前缀。
• 正确的起源 ASN。
• 任何合法的更具体前缀公告。
• 合适的最大前缀长度。
• 已计划的路由迁移或多起源安排。
执行 ROV 的网络通常使用 Relying Party 软件获取和验证 RPKI 存储库。这会生成经过验证的授权数据,可进一步提供给兼容的路由系统。
支持 RPKI 验证信息的路由器可以从本地验证器接收经过验证的数据。运营商随后可以将不同的路由起源验证状态纳入现有路由策略。
在修改 ROA、ASN、前缀公告或最大长度之前,应检查计划中的 BGP 状态与 RPKI 状态之间的关系。变更发布后,还应验证全球路由可见性和 RPKI 有效性。
BGP 前缀劫持是指某个网络作为其不应或未获授权的地址空间的路由起源。这可能因配置错误意外发生,也可能是故意行为。
如果资源持有者创建了适当的 ROA,另一个执行 ROV 的网络就可以判断某条公告的起源 ASN 和前缀长度是否符合授权。
示例
假设某条 ROA 授权 AS64500 作为 203.0.113.0/24 的路由起源。如果 AS64500 公告该授权前缀,则该公告可以被分类为 Valid。
如果另一个 ASN 在没有匹配授权的情况下作为同一受覆盖前缀的路由起源,则该公告可以被分类为 Invalid。使用 ROV 的网络随后可以根据自身本地路由策略处理该结果。
相关阅读: ROA 验证如何帮助防范 BGP 劫持
RPKI 是一种重要的路由安全机制,但不应夸大其能力。目前广泛部署、基于 RPKI 的 Route Origin Validation,主要关注是否由被授权的 ASN 作为某个前缀的路由起源。
| 安全问题 | RPKI ROV 是否处理该问题? |
| 这个 ASN 是否被授权作为该前缀的路由起源? | 是 — 这是基于 ROA 的路由起源验证的核心目的。 |
| 完整 BGP 路径中的每个 AS 是否都经过授权? | 否 — 普通 ROV 不会验证完整 AS 路径。 |
| RPKI 是否能防止所有路由泄漏? | 否 — 某些路由泄漏可能仍然使用合法的起源 ASN,因此在路由起源层面依然保持 Valid。 |
| RPKI 是否可以取代 BGP 过滤和监控? | 否 — 它应与更广泛的路由安全实践配合使用。 |
| RPKI 是否会自动决定路由器是否接受一条路由? | 否 — 运营商决定如何在本地路由策略中应用验证结果。 |
因此,应将 RPKI 视为路由安全的一层机制,而不是前缀过滤、路由监控、BGP 策略、运营协调以及其他安全机制的完整替代方案。
RPKI 是一种公钥基础设施,因此依赖证书验证链和信任锚(trust anchors)。其架构反映了现有互联网号码资源注册的层级结构。
在实际运营部署中,relying parties 通常会验证与五大区域互联网注册管理机构所运营信任锚相关的材料。Relying Party 软件使用 Trust Anchor Locators(TALs)定位并验证相关信任锚证书,以及其下层的签名对象。
运营注意事项:RPKI 可以增强路由起源验证,但同时也引入对证书数据、存储库、验证软件、授权准确性以及信任模型本身的依赖。网络运营商应理解这些依赖关系,而不能把 RPKI 视为自动或绝对不会出错的路由决策来源。
这并不会削弱 RPKI 的安全价值。它意味着运营商应该像管理其他关键路由基础设施一样,对 RPKI 保持相同的运营纪律:理解信任边界、监控变化、保持独立可见性,并针对故障情况制定计划。
关于 RPKI 最重要的实际经验之一,是授权数据必须与真实路由配置保持一致。如果运营变化没有正确反映在相应 ROA 中,一条合法路由也可能变成 RPKI Invalid。
如果某个前缀迁移到新的起源 ASN,但 ROA 仍然只授权原来的 ASN,那么新的合法公告就可能变成 Invalid。
如果最大前缀长度比 BGP 中实际合法公告的前缀更短,那么这些更具体的路由可能被分类为 Invalid。
供应商变更、ASN 迁移、anycast 部署、网络重组以及多起源配置,都可能需要修改 ROA。在可能的情况下,应在实际路由变更之前提前准备好新的授权。
设置不必要地宽泛的最大长度可能降低授权精度。运营商应授权实际计划采用的路由设计,而不是自动允许所有可能的更具体前缀。
Relying Party 软件、存储库、网络连接、证书生命周期以及数据同步,都属于整个运营链的一部分。监控系统应能够区分真正的授权冲突与数据可用性或验证过程的问题。
RPKI 运营检查清单
保持 ROA 准确:确保前缀、起源 ASN 以及允许的前缀长度与计划中的 BGP 公告一致。
实施变更控制:将 ROA 变更与 ASN 迁移、供应商切换、前缀拆分、anycast 变更以及其他路由调整协调进行。
监控全球有效性:定期从外部视角确认您的前缀在 BGP 中的表现,以及它们当前是 Valid、Invalid 还是 NotFound。
不要只依赖 RPKI:继续使用前缀过滤、BGP 监控、路由策略控制、事件响应以及其他路由安全措施。
正确理解 NotFound:没有覆盖该路由的 ROA,与 Invalid 授权状态是两种不同情况。
监控您的验证器:将 RPKI 验证基础设施视为生产网络基础设施,并监控其可用性、同步状态以及数据新鲜度。
建立连续性流程:明确当验证基础设施不可用,或授权数据出现意外变化时,路由策略应该如何处理。
相关阅读: RPKI 安全最佳实践
RPKI 说明了为什么公共 IP 资源管理远不只是能够使用一个地址块。IPv4 或 IPv6 前缀还必须在整个运营生命周期中得到正确记录、路由、授权、监控和维护。
在 IP 租赁、地址转移、网络迁移、ASN 变更、多宿主(multi-homing)以及基础设施扩展期间,这一点尤其重要。如果注册信息、路由配置与 RPKI 授权没有保持一致,即使技术上合法的部署也可能遇到可达性问题。
LARUS 观点:公共 IP 资源应围绕运营连续性进行管理。RPKI 可以加强路由起源安全,但有效的 IP 管理还需要准确的注册信息、路由准备、BGP 协调、信誉管理、监控以及应急规划。
对于跨多个供应商或地区管理 IPv4 资源的组织,将路由授权与运营连续性视为同一运营流程的一部分,可以减少原本可以避免的部署风险。
资源公钥基础设施(Resource Public Key Infrastructure)是现代互联网路由安全的重要组成部分。通过允许资源持有者发布可通过加密方式验证的 Route Origin Authorizations,RPKI 使网络运营商能够检查作为某个 IP 前缀路由起源的 ASN 是否与该资源对应的授权保持一致。
其目前最广泛部署的应用 Route Origin Validation,会将路由公告分类为 Valid、Invalid 或 NotFound,并向运营商提供额外信息,使其可以将这些结果纳入本地 BGP 策略。
不过,理解 RPKI 时应明确其真实的技术边界。它验证的是路由起源授权,而不是完整 BGP 路径;它无法防止所有路由事件,并且依赖准确的授权数据、验证基础设施以及明确的信任模型。
因此,对于网络运营商而言,最稳健的方式并不只是简单“启用 RPKI”,而是将 RPKI 与规范的 BGP 运营、持续监控、IP 资源管理和连续性规划整合在一起。
RPKI 是 Resource Public Key Infrastructure(资源公钥基础设施)的缩写。它是一种用于提升互联网号码资源和 BGP 路由安全性的加密框架。
目前其最广泛部署的用途,是让网络运营商验证某条 BGP 路由的起源 ASN 是否被授权发布相应 IP 前缀。
Route Origin Authorization 是一种经过签名的 RPKI 对象,用于指定哪个 ASN 被授权作为某个 IP 前缀的路由起源,并在配置时指定允许公告的最大前缀长度。
Invalid 表示存在覆盖该路由的 ROA,但该路由公告并不符合被授权的起源 ASN 与允许前缀长度组合。它可能表示未经授权的路由,也可能只是配置错误。
NotFound 表示没有经过验证的 ROA 覆盖该路由。它与 Invalid 并不相同。
当存在适当的 ROA 并部署 Route Origin Validation 时,RPKI 可以帮助网络检测并拒绝某些未经授权的路由起源公告。但它无法消除所有形式的 BGP 劫持或路由攻击。
不会。标准的基于 ROA 的 Route Origin Validation 检查起源 ASN 和前缀授权,但不会通过加密方式验证完整 AS_PATH。
错误的 ROA 可能导致合法 BGP 公告变成 RPKI Invalid。拒绝 Invalid 路由的网络随后可能不再接受这些公告,因此谨慎的变更管理和持续监控非常重要。
不是。RPKI 支持包括 IPv4 和 IPv6 地址空间在内的互联网号码资源。
是否部署 RPKI,以及如何将验证结果应用到路由策略中,通常属于网络运营商作出的运营决策,同时可能受到其环境中适用的合同、供应商、技术或监管要求影响。
2022-10-04 07:59:07
IPv4IPv4 地址分类 用于描述分配给特定实体的 IP 地址范围。此地址范围用于识别网络上的设备并与之通信。 IPv4 地址是必须小心管理的宝贵资源。
2023-04-18 08:28:52
IPv6IPv6 是互联网协议的更新版本,它变得越来越重要。 在这篇博文中,我们将深入探讨 IPv6 是什么、引入它的原因以及它的一些关键特性。
2023-03-28 08:27:16
IPv4如果您打算购买 IPv4 地址,则需要考虑一些关键事项。 随着互联网的不断发展和可用 IP 地址数量的迅速减少,了解购买 IP 地址的过程以及您的选择是什么非常重要。
2022-03-29 07:56:46
IPv4与2022年购买IPv4地址相比,价格便宜的IPv4出租正在成为IPv4用尽的有效解决方案。
请发送您的地址块大小、部署配置、ASN 背景、时间安排或卖方咨询。LARUS 将回复一条 直接的商业路径,而非通用 broker 话术。