路由起源授权(Route Origin Authorization,ROA)是资源公钥基础设施(Resource Public Key Infrastructure,RPKI)中的一种加密签名对象,允许 IP 地址资源持有者指定哪个自治系统(Autonomous System,AS)被授权为特定 IP 前缀发起路由。ROA 为网络运营商提供可验证的信息,可用于评估边界网关协议(Border Gateway Protocol,BGP)公告的路由起源。
ROA 是现代路由安全的重要组成部分,因为 BGP 本身并不会通过加密机制验证发布某个 IP 前缀的自治系统是否已获得该资源持有者的授权。当 ROA 数据与路由起源验证(Route Origin Validation,ROV)结合使用时,可以帮助网络识别其起源信息与已发布路由授权不一致的公告。
不过,ROA 并不会验证完整的 BGP 路径,也无法防止所有类型的路由泄漏或路由事件。因此,准确理解 ROA 授权的具体内容,以及如何正确配置 ROA,对于维护路由安全和网络连续性都非常重要。
核心要点:ROA 回答的是一个非常具体的路由安全问题:哪个自治系统被授权作为该 IP 前缀的路由起源?它为路由起源验证提供可通过加密方式验证的授权信息,但不会验证完整的 BGP 路径,也不能取代更广泛的路由安全控制措施。
路由起源授权(Route Origin Authorization,ROA)是一种经过数字签名的 RPKI 对象,IP 地址资源持有者可以通过它授权某个特定的自治系统编号(Autonomous System Number,ASN),作为一个或多个 IP 前缀的路由起源。
ROA 是资源公钥基础设施的一部分。它的目的并不是告诉路由器哪条路径最佳,而是提供可验证的授权信息,让网络运营商能够将其与 BGP 公告进行比较。
例如,一个控制某个 IPv4 前缀的组织可以创建一条 ROA,声明 AS64500 被授权作为该前缀的路由起源。执行路由起源验证的网络随后可以将实际观察到的 BGP 公告与该授权进行比较。
目前定义 ROA 配置文件的 IETF 标准是 RFC 9582,该标准于 2024 年发布,并取代了此前的 RFC 6482 规范。
边界网关协议(Border Gateway Protocol,BGP)负责在互联网不同自治系统之间交换路由信息。BGP 允许网络公布自己能够到达哪些 IP 前缀,但传统 BGP 并没有内置的加密机制来证明路由起源 ASN 是否获得该地址空间持有者的授权。
因此,无论是由于配置错误还是恶意行为,都存在错误 ASN 发布其他网络前缀的可能性。
ROA 为什么重要
起源授权:ROA 提供可验证的信息,说明哪个 ASN 被允许作为某个 IP 前缀的路由起源。
BGP 劫持检测:使用 ROV 的网络可以识别与已发布 ROA 信息相冲突的公告。
路由准确性:正确配置的 ROA 可以为运营商评估传入的 BGP 路由提供额外参考信号。
运营保护:准确的路由授权可以降低受到某些意外或未经授权的路由起源公告影响的风险。
基于 ROA 的路由验证涉及多个独立组件。资源持有者发布授权,RPKI 验证软件对经过加密签名的数据进行验证,而网络运营商则决定最终的验证结果应如何影响其 BGP 路由策略。
ROA 验证流程
1. 确定预期的 BGP 公告:资源持有者需要确定 IP 前缀、起源 ASN,以及计划合法发布的任何更具体前缀。
2. 创建 ROA:资源持有者发布授权,指定允许的起源 ASN 和相关前缀信息。
3. 发布签名对象:ROA 通过 RPKI 存储库系统变得可用。
4. 验证 RPKI 数据:Relying Party 软件获取 RPKI 对象并执行加密验证。
5. 生成经过验证的授权信息:经过验证的 ROA 数据会转换为路由系统可用于 Route Origin Validation 的信息。
6. 应用本地路由策略:网络运营商决定如何处理 Valid、Invalid 和 NotFound 路由。
重要:BGP 路由器通常不会针对每一条收到的路由直接查询 RPKI 存储库。Relying Party 验证软件负责获取并验证 RPKI 数据,然后将经过验证的授权信息提供给路由器,用于执行路由策略。
从路由角度理解 ROA 时,有三类信息尤其重要:
| ROA 元素 | 作用 |
| 起源 ASN | 标识被授权作为该路由起源的自治系统。 |
| IP 前缀 | 定义该授权所覆盖的 IPv4 或 IPv6 地址空间。 |
| 最大长度 | 当使用该可选值时,它定义被授权 AS 可以发布的最具体前缀长度。 |
单个 ROA 对象只授权一个起源 ASN。如果同一地址空间需要由多个自治系统合法作为路由起源,则可以创建多条 ROA 来表示这些不同的授权。
ROA 与 RPKI 密切相关,但两者并不是同一个概念。RPKI 是针对互联网号码资源的更广泛加密框架,而 ROA 则是在这一框架内创建的一种签名对象。
| 术语 | 含义 |
| RPKI | 用于创建和验证与互联网号码资源相关的加密签名信息的公钥基础设施。 |
| ROA | 一种经过签名的 RPKI 对象,用于授权某个 ASN 作为一个或多个 IP 前缀的路由起源。 |
| ROV | Route Origin Validation,即将 BGP 公告与经过验证的 RPKI 授权数据进行比较的过程。 |
相关阅读:什么是 RPKI?它如何工作?
当 BGP 公告与经过验证的 RPKI 授权信息进行比较时,路由起源验证结果通常会被分类为 Valid、Invalid 或 NotFound。部分界面可能会使用 Unknown 来表示第三种状态。
| 状态 | 含义 |
| Valid | 至少存在一条经过验证的授权覆盖该路由,并允许其起源 ASN 和前缀长度。 |
| Invalid | 存在覆盖该路由的授权,但公告使用了未授权的起源 ASN,或其前缀长度超过允许范围。 |
| NotFound | 没有经过验证的 ROA payload 覆盖该公告。 |
Invalid 路由不应自动被视为遭到攻击的证据。由于 ROA 已过期、ASN 配置错误、网络迁移或最大长度配置不正确,合法路由也可能变成 Invalid。
可选的 maxLength 字段决定一个公告在仍然受到该 ROA 授权的情况下,可以具体到什么程度。
假设某组织控制 203.0.113.0/24。如果它只授权 AS64500 发布该精确的 /24,那么就不需要额外允许更具体的前缀。
如果该组织确实需要 AS64500 在此 /24 内合法发布 /25 前缀,则授权可以允许最具体到 /25 的公告。
最佳实践:不要自动将 maxLength 设置为可能的最大值。只应授权实际路由设计所需的前缀长度。过度宽泛的授权可能降低 ROA 原本希望提供的保护精度。
当某个自治系统发布其无权或不应作为路由起源的地址空间时,就可能发生 BGP 前缀劫持。错误公告可能来自配置失误,也可能来自恶意活动。
发布准确的 ROA,可以让执行 ROV 的网络区分合法授权的路由起源与违反资源持有者已发布授权的公告。
示例
某资源持有者授权 AS64500 作为 203.0.113.0/24 的路由起源。
如果 AS64500 发布该授权路由,则该公告可以获得 Valid 的起源验证状态。
如果 AS64501 在没有相应授权的情况下发布该受覆盖前缀,则该公告可能变为 Invalid。执行 ROV 的网络随后可以根据自身路由策略决定如何处理这一结果。
ROA 是一种重要的安全机制,但不应夸大其功能。标准的基于 ROA 的 Route Origin Validation 主要聚焦于路由起源授权。
| 问题 | ROA / ROV 覆盖范围 |
| 该起源 ASN 是否被授权发布这个前缀? | 是 — 这是基于 ROA 验证的核心目的。 |
| 完整的 AS_PATH 是否合法? | 否 — 普通的 ROA-based ROV 不会验证完整 BGP 路径。 |
| 它能否防止所有路由泄漏? | 否 — 路由泄漏仍可能使用经过授权的起源 ASN,因此在起源验证层面依然可能显示为 Valid。 |
| 它能否取代路由过滤? | 否 — 运营商仍需要 BGP 过滤、监控、路由策略以及事件响应控制。 |
这一点尤其重要,因为如果将 ROA 描述为解决路由泄漏的通用方案,就可能让人对其保护范围产生不准确的预期。
创建 ROA 的具体流程取决于组织如何管理其 RPKI 认证环境。互联网号码资源持有者通常会使用相应区域互联网注册管理机构(Regional Internet Registry)提供或关联的 RPKI 服务,或者在适用情况下运行委托式 RPKI 基础设施。
在创建授权之前,网络团队应首先确定实际生产环境计划采用的路由配置。
创建 ROA 前,请确认:
• 将发布哪些 IPv4 或 IPv6 前缀。
• 哪个 ASN 将作为每个前缀的路由起源。
• 是否会发布更具体的前缀。
• 合适的最大前缀长度。
• 是否存在多个起源 ASN,并需要分别进行授权。
• 是否计划进行 ASN 迁移、供应商变更或其他路由过渡。
ROA 发布后,应将其与组织实际的 BGP 公告进行核对。部署完成后也应持续监控,而不是把创建 ROA 当作一次性的配置工作。
如果 ROA 中指定的 ASN 与实际作为路由起源的 ASN 不一致,合法的 BGP 公告可能会变成 Invalid。
某个网络可能会合法发布更具体的前缀,但如果授权没有允许这些前缀长度,这些公告就可能被分类为 Invalid。
如果允许的前缀比网络实际计划发布的前缀具体得多,就可能不必要地扩大授权范围。
如果网络更换上游供应商,或将某个前缀迁移到新的起源 ASN,则其路由授权应与迁移过程同步协调。否则,新的合法路由可能会变成 Invalid。
在路由迁移过程中,如果在流量尚未完全迁移之前删除旧授权,就可能造成暂时性的路由起源验证问题。授权变更与 BGP 变更应按照受控顺序执行。
ROA 运营检查清单
确保 ROA 与实际 BGP 一致:授权内容应反映真实的生产环境公告。
保持 maxLength 的限制性:只允许实际路由设计需要的更具体前缀。
协调路由变更:在更改 ASN、上游供应商、anycast 架构或前缀结构时同步更新授权。
从外部监控有效性:变更后,应从本地网络之外检查该前缀的实际状态。
及时调查 Invalid 路由:Invalid 并不一定意味着恶意行为,应尽快排除配置错误。
保持独立的路由可见性:ROA 状态应结合 BGP 监控和实际网络运营数据一起评估。
明确并记录责任:定义当路由架构发生变化时,由哪个团队负责修改 ROA。
ROA 管理说明了为什么公共 IP 地址管理不仅仅是拥有或能够使用一个地址块。用于生产环境的 IPv4 或 IPv6 资源还必须得到正确的路由、登记、授权、监控和维护。
这一点在 IPv4 租赁、网络迁移、供应商变更、多宿主(multihoming)以及基础设施扩展期间尤为重要。在整个运营生命周期中,路由授权都必须与实际起源 ASN 保持一致。
LARUS 观点:一个真正可用的 IP 资源远不只是一个地址记录。生产环境的连续性取决于地址块、路由配置、授权记录、地址信誉、运营文档以及网络部署始终保持一致。ROA 是这一更广泛管理流程中的重要组成部分。
因此,管理公共 IPv4 资源的组织应将 ROA 和 RPKI 检查纳入路由变更流程,而不是把它们当作独立的行政管理任务。
路由起源授权(Route Origin Authorization)是基于 RPKI 的路由安全体系中最重要的组成部分之一。ROA 允许 IP 地址资源持有者发布可通过加密方式验证的授权信息,明确指定哪个自治系统可以作为特定 IP 前缀的路由起源。
执行 Route Origin Validation 的网络可以将 BGP 公告与这些授权信息进行比较,并将路由起源分类为 Valid、Invalid 或 NotFound。这为网络提供了额外的安全信号,可以帮助识别部分未经授权或配置错误的路由起源公告。
不过,ROA 必须得到谨慎管理。错误的起源 ASN、过于严格或过于宽泛的最大长度,或者协调不当的路由迁移,都可能影响合法路由的验证。ROA 同样不会验证完整 BGP 路径,也无法消除所有形式的路由泄漏。
因此,对于网络运营商而言,ROA 应被视为更广泛的路由和 IP 资源管理策略的一部分,与准确授权、BGP 监控、路由过滤、变更控制以及运营连续性结合使用。
ROA 是 Route Origin Authorization(路由起源授权)的缩写。它是一种经过签名的 RPKI 对象,用于授权某个自治系统作为特定 IP 前缀的路由起源。
RPKI 是面向互联网号码资源的更广泛加密基础设施。ROA 则是 RPKI 中的一类签名对象,用于描述路由起源授权。
从路由角度来看,ROA 会标识一个被授权的起源 ASN 以及一个或多个 IP 前缀。每个前缀还可以包含一个可选的最大长度,用于定义被授权的 BGP 公告可以具体到什么程度。
Valid 路由起源状态表示该 BGP 公告至少被一条经过验证的授权覆盖,并且其起源 ASN 和前缀长度都受到允许。
Invalid 表示存在覆盖该路由的授权,但 BGP 公告的起源 ASN 或前缀长度与授权内容不匹配。
NotFound 表示没有经过验证的 ROA 覆盖所公告的前缀。它与 Invalid 不同,本身并不意味着存在未经授权的路由。
当存在适当 ROA 时,基于 ROA 的 Route Origin Validation 可以帮助网络识别某些未经授权的路由起源。它可以降低风险,但无法阻止所有形式的 BGP 劫持。
不一定。路由泄漏仍可能来自正确且已授权的 ASN,因此在 Route Origin Validation 中仍然显示为 Valid。ROA 不会验证完整的 AS 路径。
会。错误的 ASN 或前缀长度授权可能导致合法 BGP 公告变成 Invalid。拒绝 Invalid 路由的网络随后可能停止接受这些公告。
每当起源 ASN、前缀结构、更具体前缀公告、上游架构或其他相关路由配置发生变化时,都应重新检查并更新 ROA。
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 话术。