JungleLabs Insights

RPKI中什么是ROA?路由起源授权如何工作

文章

一种路由起源授权是数字签名的 RPKI 用于标识哪个ASN被允许在BGP中宣告IP前缀的记录。该记录由拥有相关互联网号码资源的组织创建,或代表该组织创建。ROA通常包含三个基本要素:IP前缀、授权的起源ASN以及该ASN可以宣告的最大前缀长度。例如,一个组织可能控制IPv4前缀203.0.113.0/24,并使用AS64500进行宣告。相应的ROA可以授权AS64500宣告该/24前缀。简单来说,该记录向路由生态系统传达以下指令:“此ASN被允许宣告此前缀。”执行RPKI验证的网络随后可以将该记录与他们在BGP中观察到的内容进行比较。ROA不会转移IP地址块的所有权。它不会取代合同、注册条目、分配记录或IPv4转让协议。它仅发布有关路由起源的授权信息。法律控制和路由授权有关联,但它们不是同一回事。ROA可以为IPv4和IPv6资源创建。格式类似,尽管前缀长度和操作设计可能有所不同。IPv4网络通常处理如/24之类的前缀,而IPv6网络则通常宣告如/32、/36、/48或根据其分配和路由计划合适的其他长度的聚合前缀。

为什么需要ROA?

没有ROA,其他网络就没有基于RPKI的授权来确认BGP起源ASN是否被允许宣告一个前缀。该路由可能仍然合法,但在RPKI验证期间通常会因没有匹配的授权而产生“未找到”结果。“未找到”结果并不自动意味着路由问题。互联网上许多有效的路由都没有ROA。然而,当组织发布准确的ROA时,它会为其他网络提供更强的信号,可用于区分预期的起源与未经授权或配置错误的起源。当一个前缀具有价值、业务关键或被广泛宣告时,ROA变得特别有用。企业可能使用自己的地址空间提供公共服务,云平台可能宣告客户基础设施,或者托管提供商可能从多个地点宣告大地址范围。在这些情况下,错误的起源可能会影响许多用户和服务。ROA在事件响应期间也有帮助。如果一个前缀突然从一个意外的ASN出现,网络运营商可以检查RPKI状态,并快速确定该宣告是否与资源持有者发布的意图冲突。这并不能解释事件的所有细节,但它为调查提供了一个重要的起点。对于使用多个上游提供商的组织来说,ROA可以提供一致的授权,无论哪个提供商承载该路由。提供商可能会改变,但起源ASN可以保持不变。在这种情况下,仅仅因为传输路径发生了变化,ROA通常不需要更改。

ROA如何与BGP配合使用?

BGP在自治系统之间分发路由公告。通常,路由公告包括IP前缀和起源AS编号,以及其它路径和策略信息。起源AS编号是声称是该路由来源的自治系统。RPKI验证与BGP同时运行。验证器从RPKI系统获取已签名的授权数据,并检查这些记录是否真实且最新。然后,它会创建一个经过验证的数据集,可用于路由器、路由服务器或路由策略系统。当网络接收到BGP公告时,它会将公告的前缀和起源AS编号与经过验证的ROA信息进行比较。有三种主要结果。公告可能是有效的、无效的或未找到。有效结果意味着该公告被ROA覆盖,并且起源AS编号已被授权。无效结果意味着存在相关的ROA,但该公告与其冲突。未找到结果意味着没有找到适用的ROA。接收网络决定如何处理这些结果。一些运营商会拒绝无效路由。其他人则会将其优先级降低,生成警报,或根据来源应用不同的策略。并非所有网络都有单一的通用策略,但许多提供商将无效公告视为严重的路由安全问题。重要的是,ROA并不直接控制全球互联网。它发布授权信息。实际效果取决于其他网络是否获取、验证并将其用于路由决策中。

ROA的三个主要部分

ROA的第一部分是被授权的IP前缀,这标识了起源ASN可以宣告的地址范围。对于IPv4,前缀可能是198.51.100.0/24;对于IPv6,可能是2001:db8:1234::/48。前缀必须对应组织通过相关注册机构或赞助关系被授权管理的资源。必须准确输入前缀,因为拼写错误、错误的网络边界或错误的前缀长度会使ROA无效,或授权与原意不同的地址范围。

第二部分是被授权发起该前缀的起源ASN,与BGP公告中显示的起源ASN相匹配。如果一家公司拥有一个地址块但通过传输提供商的ASN进行宣告,则正确的起源取决于实际的路由设计。ROA中的ASN通常应为发起路由的ASN,而不仅仅是上游运营商的ASN。这种区别很重要,因为传输提供商可能承载一条路由而不作为起源;如果客户的ASN发起该前缀,而提供商仅负责传输,则通常需要授权的值是客户的ASN。

第三部分是最大前缀长度,通常称为maxLength,它定义了公告可以有多具体,同时仍受ROA覆盖。假设一个ROA授权198.51.100.0/24,最大长度为/24:授权的ASN可以宣布精确的/24,但不允许宣布更小的子前缀,如/25或/26。如果同一前缀以最大长度/26被授权,那么/24、/25和/26的公告可能根据具体的路由和验证规则被视作受覆盖。这提供了灵活性,但也允许更具体的公告。因此,最大长度应反映实际的路由计划,因为设置得太短会导致合法的更具体路由变为无效,而设置得太长可能会授权组织从未意图允许的公告。

为什么maxLength很重要?

最大前缀长度是ROA设置中最重要的之一,也是最容易被误解的设置之一,它控制着授权的ASN在宣布资源时可以使用的具体程度。许多网络运营商会宣布一个聚合前缀以减少路由表的增长;例如,一个组织可能拥有一个/20的地址块,但将其作为单一聚合进行宣布。在某些情况下,该组织可能还需要宣布更小的前缀用于流量工程、区域连接或服务隔离。如果ROA仅覆盖聚合前缀,而网络宣布了更具体的路由,则这些路由可能会被归类为无效。从组织的角度来看,BGP公告在技术上是正确的,但它与RPKI中发布的授权不匹配。另一方面,授权每一种可能的更具体路由会削弱策略的精确性,因为一个被授权的/20具有非常宽泛的最大长度,允许一个更小的子前缀被授权,即使它不在预期的设计范围内。一个实际的方法是仅授权网络根据其地址计划、供应商要求、故障转移设计和流量工程策略真正期望宣布的前缀长度。对最大长度的更改应仔细测试,在应用严格的过滤之前确认所有生产中的公告返回预期的验证结果。

ROAs for IPv4 and IPv6

ROA可以为IPv4和IPv6网络创建,其基本安全原则相同:将前缀与授权的起始AS编号(ASN)关联。主要的操作差异在于地址结构。IPv4资源稀缺,通常以相对较小的前缀进行宣告,在公共互联网上/24是一个常见的最小宣告大小。IPv6网络通常获得较大的分配空间,并可能将其划分为站点、服务或地理段,宣告一个聚合前缀,同时使用多个内部前缀。ROA必须与公开宣告的前缀一致。IPv6运营商不应认为较大的地址空间消除了路由风险,因为未经授权的IPv6宣告仍可能导致可达性问题、流量重定向或不一致的全局路由。RPKI为IPv6运营商提供了与IPv4运营商相同的发布起源授权的机会。在创建IPv6 ROA之前,网络团队应记录将要宣告的聚合前缀,是否预期有更具体的宣告,以及哪个ASN将作为起源,避免过于严格或不必要的广泛记录。

何时应该创建ROA?

在资源持有者有明确路由计划的情况下,应在前缀正式发布到生产环境之前创建ROA,这样验证网络就有时间在路由变得广为人知之前获取相关信息。当组织获得新的分配、购置IPv4块、完成地址转移、更改起始ASN或开始使用新的IPv6分配时,也应审查ROA,因为这些事件会改变前缀与起始网络之间的关系。提供商用的迁移是另一个常见触发因素:如果组织保持相同的起始ASN,仅更换上游运营商,则ROA可能仍然有效;如果迁移改变了起始ASN,则必须在路由变更前或同时更新记录。在合并、收购、数据中心迁移、ASN赞助变更和重大网络重构期间应审查ROA,以确保公共授权与实际操作相符。即使没有已知的变更,定期审查也是有用的,因为网络文档会过时,员工职责会发生变化,旧的授权可能在原始路由设计已被替换后仍长期有效。

常见的ROA配置错误

最常见的错误之一是输入了错误的源ASN,这通常发生在工程师将客户ASN与传输提供商的ASN混淆,或者在迁移后旧的ASN仍保留在配置中。另一个常见错误是忘记在IPv4转移后更新ROA,此时新持有者从自己的ASN宣布前缀,而旧授权仍指向之前的源,导致路由变为无效。当组织仅授权一个/24但后来为流量工程宣布一个/25时,不正确的最大长度也会产生类似的问题。一些组织创建多个重叠的ROA但没有记录其用途;虽然在某些设计中是有效的,但它们可能会产生意外结果并增加故障排除的复杂性。未能删除过时的记录会导致一个ASN在网络设计改变很久之后仍然宣告前缀。最后,组织有时会启用对无效路由的严格拒绝,但未先测试自身的宣告;生产前缀、最大长度和源ASN在依赖自动过滤之前必须始终进行验证。

ROA and IPv4 Transfer Planning

IPv4转移需要特别注意,因为管理持有者、赞助安排和路由来源可能在流程的不同阶段发生变化。在进行转移之前,当前持有者应记录现有的ROA,并确认哪个ASN目前起始该前缀,而买方则需准备预期的起始信息并与传输提供商协调。在转换期间,双方需要有一个明确的计划来更新或替换授权记录:让之前的ROA保持过长时间会授权转移后的旧来源,而过早删除它会导致现有路由在新路由准备就绪前变得无效。确切的流程取决于注册机构、资源类型、转移协议和操作设计,使RPKI成为与注册验证、合同审查、BGP公告、路由对象、反向DNS和声誉筛选并列的重要检查清单项目。一个公开的准备情况检查器有助于识别当前的起源ASN、RPKI状态、注册信息和前缀的BGP可见性,用于技术预检查,尽管它不确认法律所有权或保证转移资格。

ROA 和 ASN 更改

ASN的更改会直接影响RPKI验证。如果之前由AS64500发布的前缀现在将由AS64510发布,则ROA必须授权新的来源,否则BGP公告将不会被接受为有效。当组织从提供方管理的ASN转移到自己的ASN,或更改其赞助LIR安排时,这一点尤为重要,需要同时审查注册关系和路由授权。经过仔细计划的过渡可能涉及临时授权旧的和新的来源,以创建一个受控的迁移窗口,前提是已进行文档记录,并在完成后删除过时的授权。网络团队应在进行生产变更前测试操作顺序,确保新授权已发布并验证,然后再宣布新的BGP路由。

如何检查ROA是否正常工作?

第一个检查是通过相关的RIR门户、赞助LIR接口或RPKI管理系统确认ROA包含预期的前缀、来源ASN和最大前缀长度。接下来,将授权与实际的BGP公告进行比较,验证公告的前缀长度是否被覆盖,并且来源ASN是否与ROA匹配。然后,外部RPKI验证器可以确认公共状态,其中正确配置的公告会返回有效。如果结果为无效,请首先检查来源ASN和前缀长度;如果为未找到,请确认ROA已发布,并且验证器已有时间检索它。由于存储库、验证器和路由系统依赖刷新间隔,结果不会立即更新,因此在传播期间出现短暂延迟是正常的。比较多个公共来源——包括注册数据、验证器结果和当前BGP观察结果——可以避免依赖缓存信息,并提供完整的画面。

无效的ROA会发生什么?

当BGP公告与现有的ROA冲突时,RPKI验证器会将其归类为无效。该路由不会从全球互联网中自动删除,但实施基于RPKI策略的网络可能会拒绝该路由或为其分配较低的优先级。操作影响取决于执行范围:一些网络严格过滤,而其他网络则将该状态用于监控,这意味着无效路由可能在互联网的部分区域仍然可见,但在其他区域变得不可达。如果合法路由变为无效,组织应将其视为紧急配置问题,优先审查起源ASN、宣布的前缀长度和ROA最大长度。不应假设该路由是恶意的,因为大多数无效结果源于常规错误,如迁移不完整、过时记录、错误的供应商信息或意外的更具体公告。一旦更正,系统需要时间进行刷新,网络团队应在所有观察点稳定之前监控该路由。

组织应如何管理ROA?

ROA管理需要明确的所有者,无论是网络工程团队、安全团队、资助的LIR、托管服务提供商,还是负责互联网号码资源的其他组。该组织应维护一份清单,详细列出每个前缀、起源ASN、最大长度、宣告位置和负责联系人,以简化变更审查和事件响应。ROA更改必须纳入标准网络变更流程,在ASN迁移、供应商切换、IPv4转移或IPv6部署期间,将RPKI视为明确的要求。应为无效结果、意外来源、移除的授权或BGP可见性的变化配置监控和警报。至关重要的是,组织应避免过于宽泛的授权:精确的ROA更容易理解,更易于审计,并且远 less 可能允许意外的宣告。

常见问题

ROA是否与IP所有权文件相同?

不。ROA 是一种路由授权,说明哪个 ASN 可以在 BGP 中生成前缀。它不会取代注册记录、合同、转移文件或法律所有权证明。

一个前缀可以有多个ROA吗?

是的。当一个前缀由多个ASN有意发起时,或者当受控迁移需要临时授权多个来源时,可能适用多个ROA。不过,重叠的记录应仔细记录。

ROA是否会在我自己的BGP中宣告前缀?

不。创建ROA不会生成BGP公告;网络仍必须通过其路由器和上游提供商配置BGP。

转运提供商是否需要列在ROA中?

通常,ROA应识别发起该路由的ASN。仅传输该路由的提供商不一定是起源ASN,正确值取决于实际的路由架构。

ROA需要多长时间才能变得可见?

时间取决于RIR系统、发布仓库、验证器刷新间隔和缓存。更新通常会很快可见,但生产环境的更改应留出足够的时间进行验证。

每个IPv4和IPv6前缀都应有ROA吗?

发布准确的ROA对于在BGP中宣布的前缀是强烈建议的。组织应首先确认其路由设计,以确保授权不会意外使合法的宣告无效。

ROA能防止所有BGP攻击吗?

不。ROA主要支持起源验证。它不会验证BGP路径的每个部分,防止所有路由泄露,加密流量,或保证流量遵循安全的物理路径。

路由起源授权是RPKI的核心组成部分,它在IP前缀和被授权在BGP中宣告该前缀的ASN之间建立了一种加密签名的关系。该记录通常包括前缀、起源ASN以及最大前缀长度——每项都在识别资源、允许起源和定义宣告具体程度方面起着决定性作用。准确的ROA有助于网络识别未经授权或配置错误的宣告,在IPv4转移、ASN变更、供应商迁移、IPv6部署和多归属网络操作期间至关重要。同时,ROA既不是法律所有权的证明,也不是独立的路由安全解决方案;它最好与准确的注册记录、有纪律的BGP配置、IRR数据、路由监控和文档化的变更流程一起使用。对于任何宣告公共IPv4或IPv6空间的组织,实用规则很简单:仅发布您打算使用的起源,仅授权您实际计划宣告的前缀长度,并在网络发生变化时审查记录。这将使RPKI数据与真实的路由环境保持一致,并减少合法路由被归类为无效的可能性。