互联网依赖于一个全球路由系统,该系统允许网络、数据中心、云平台、互联网服务提供商和企业之间交换流量。该系统中最重要的协议之一是边界网关协议,通常称为BGP。BGP允许独立网络宣布它们可以到达哪些IP地址范围。没有BGP,现代互联网将无法连接不同国家和供应商的数百万个网络。然而,BGP最初是基于信任来交换路由信息的。当一个网络宣布一个IP前缀时,其他网络可能在没有强大加密方法确认该网络是否确实被授权使用该前缀的情况下接受该声明。这会带来安全问题。错误或恶意的路由声明可能会重新定向流量,中断服务,或使数据暴露在不受控制的路径上。
RPKI是为了提高互联网路由的安全性而开发的。名称代表资源公钥基础设施。它提供了一种将互联网数字资源(如IPv4和IPv6前缀)与授权发起它们的自治系统编号联系起来的方法。网络运营商可以使用此信息来确定BGP公告是否与记录的授权一致。
对于运营自己ASN的企业,管理IP资源,使用多个上游提供商,或计划宣告IPv4或IPv6地址空间的用户来说,了解RPKI变得越来越重要。RPKI不会取代BGP,也不会解决所有路由问题。相反,它提供了一个额外的验证层,有助于网络做出更安全的路由决策。
RPKIとは何ですか?
RPKI是一个安全框架,使用数字证书和加密记录来验证IP地址前缀与起始ASN之间的关系。IP前缀是一组地址,例如IPv4 /24 or an IPv6 /48. 一个ASN标识一个参与BGP路由的独立网络。
基本思路很简单。一个被授权使用IP前缀的组织会发布一份签名声明,指出哪个ASN可以在BGP中起始该前缀。接收到BGP公告的网络可以将公告与已发布的信息进行比较。如果公告匹配,则可以视为授权的。如果与信息冲突,则该公告可能被视为可疑或无效。
用于表达此授权的记录通常被称为路由起源授权(ROA)。一个ROA标识一个IP前缀、一个授权的起源ASN,并且在适用的情况下,标识该ASN被允许宣告的最大前缀长度。尽管ROA是RPKI的重要组成部分,但本文重点在于RPKI的更广泛目的及其如何提高路由安全性。
RPKI通常通过区域互联网注册机构进行操作,包括RIPE NCC、ARIN、APNIC、LACNIC和AFRINIC。根据地区和资源类型,资源持有者或资助组织可以通过注册机构的系统创建和管理相关的授权记录。
BGP为什么需要RPKI?
BGP是在互联网较小且参与网络数量有限的时代创建的。其主要目的是在自治系统之间交换可达性信息。BGP可以根据策略、路径长度、本地优先级和其他属性选择路径,但该协议本身不会自动验证某个ASN是否被授权发起特定的IP前缀。
这意味着配置错误有时可能看起来类似于恶意公告。如果一个网络意外地宣告了属于其他组织的前缀,其他网络可能会最初接受该路由。结果可能导致流量被发送到错误的目的地、连接丢失或路由不稳定。
一个著名的例子是路由泄露或前缀劫持。在劫持中,一个ASN宣布它不控制或不应该发起的前缀。该宣告可能比合法路由更具体,或者可能到达足够多的网络以影响流量。即使事件是意外发生的,其操作影响也可能很大。
RPKI通过为网络运营商提供外部授权信息来源来发挥作用。路由器或路由安全系统可以检查起源ASN是否已由地址空间的持有者授权,而不是仅依赖BGP公告的内容。这不能防止每一起路由事件,但它使一类重要的路由错误更容易被识别和过滤。
RPKIはどのように動作しますか?
RPKI通过信任链工作。互联网号码资源由区域互联网注册机构管理,这些注册机构为相关数字证书提供了基础。IP资源的持有者可以创建授权记录,说明哪个ASN可以发起前缀。
已签名的记录被收集到可由路由安全软件访问的存储库中。网络运营商运行一个RPKI验证器,或使用为其执行验证的服务。验证器下载可用的记录,验证其签名,检查它们是否最新,并生成经过验证的数据集。
经过验证的数据集然后连接到网络的路由基础设施。当接收到BGP路由时,路由器或路由策略系统会将宣布的前缀和来源ASN与经过验证的RPKI信息进行比较。结果通常被分类为有效、无效或未找到。
此过程与BGP会话本身是分开进行的。BGP继续交换路由信息,而RPKI提供额外的授权数据,可用于路由策略。网络可以决定如何处理每个验证结果。例如,它可以拒绝无效路由,将其优先级设为较低,或生成警报以供进一步审查。
该过程设计为分布式和可扩展的。大型网络可以在不需要每个组织与每个其他网络建立直接关系的情况下验证数千个前缀。这一点很重要,因为互联网包含大量具有不同政策和技术环境的独立运营商。
什么是路由起源授权?
一种路由起源授权是一份经过签名的记录,说明哪个ASN被授权发起特定的IP前缀。它是RPKI部署中最明显和实用的部分之一。
例如,一个组织可能控制IPv4前缀 192.0.2.0/24 并使用ASN AS64500 宣布它。该组织可以创建一个授权,允许 AS64500 起源 192.0.2.0/24如果另一个ASN之后宣布相同的前缀,执行RPKI验证的网络可以检测到起源与授权不匹配。
授权还可以指定最大前缀长度。这一点很重要,因为网络可能希望允许来源ASN宣告精确的聚合前缀,但不允许更小的、更具体的前缀。精心选择的最大长度可以降低意外公告被当作授权处理的风险。
ROA配置需要关注,因为错误的记录可能导致合法路由显示为无效。如果组织更改其传输提供商、将前缀移动到不同的ASN、将宣告拆分为更具体的前缀,或将其资源转移到其他持有者,授权记录可能需要更新。过时的记录即使BGP配置本身正确,也可能导致中断。
未来的一篇文章可以解释如何创建ROA,如何选择最大长度,以及如何在ASN或IP资源迁移期间更新授权。
有效、无效和未找到是什么意思?
有效的结果意味着BGP公告被适用的RPKI授权所覆盖,并且起源ASN被允许公告该前缀。这通常表明公告的前缀、前缀长度和起源ASN与发布的授权一致。
无效的结果意味着存在授权,但BGP公告不符合该授权。这可能是因为起始ASN未被授权,因为公告的前缀长度超过允许的最大长度,或者因为前缀与不同起始点的授权重叠。无效路由需要立即关注,因为它们可能代表劫持、意外配置或不完整的迁移。
未找到结果意味着公告没有找到适用的授权。这并不意味着该路由一定是恶意或错误的。这只是表示RPKI无法通过当前发布的记录确认来源。许多合法的路由仍显示为“未找到”,因为资源持有者尚未创建授权。
无效和未找到之间的区别很重要。无效表示与现有的授权数据冲突,而未找到表示缺乏授权数据。网络运营商通常更重视无效路由,但它们的精确路由策略取决于他们的风险承受能力、服务需求和操作程序。
Why RPKI Matters for IPv4 Networks
IPv4地址空间是有限的,许多IPv4前缀现在涉及运营商、数据中心、云平台、租赁公司和传输交易等复杂安排。这些安排使得路由准确性尤为重要。
当IPv4前缀在组织之间转移或移动时,BGP起源也可能发生变化。如果前所有者的授权在新所有者从不同ASN宣布前缀时仍然有效,该路由可能会变为RPKI无效。这是应在IPv4转移和迁移工作中包括RPKI规划的原因之一。
在接受或宣布IPv4前缀之前,组织应确认哪个实体控制该资源,预期的ASN是什么,以及相关授权记录是否反映了计划的路由设计。应一起审查公共注册记录、BGP公告和RPKI信息。当公司使用多个传输提供商时,RPKI尤其有用。一致的起源授权可以在无论哪个上游提供商承载该路由的情况下保护该前缀。然而,组织仍需确保所有提供商都使用正确的ASN和前缀长度。
企业评估一个IPv4块时,也可以使用公共工具来查看当前的注册数据、来源ASN信息、RPKI状态和BGP可见性。这些检查不能替代合同尽职调查或声誉筛选,但在交易或部署之前可以揭示明显的路由不一致之处。
Why RPKI Matters for IPv6 Networks
IPv6网络与IPv4网络一样,受益于相同的起源验证原则。IPv6前缀通过BGP进行宣告,错误的起源可能会造成类似的威胁,包括流量中断、路由泄露和未经授权的宣告。
IPv6的部署通常涉及更大的地址块和更结构化的地址规划。一个组织可能会获得一个广泛的分配,并宣布一个汇总路由,同时在站点、数据中心或服务中使用较小的内部子网。RPKI授权应与实际用于公共路由的前缀相匹配。
一个常见的错误是认为IPv6路由自动更安全,因为IPv6具有更大的地址空间。地址空间的大小并不能消除验证路由来源的需要。如果一个IPv6前缀由错误的ASN宣布,且没有授权存在,其他网络可能很难将该宣布与合法路由区分开来。部署IPv6的组织应在初始路由设计中包含RPKI,而不是等到网络完全运行后再进行。这使得在生产流量依赖于该宣布之前,更容易协调地址计划、ASN使用、上游供应商和授权记录。
RPKI的主要好处是什么?
RPKI的主要好处是它提供了一种广泛认可的方法来验证BGP路由的来源。这为网络运营商提供了比仅依靠BGP信息更有力的过滤和监控公告的基础。
RPKI可以降低接受与资源持有者声明的授权明显不一致的路由的风险。它还可以在网络迁移、供应商变更、ASN赞助变更以及IPv4或IPv6资源转移过程中帮助识别操作错误。
对于IP资源持有者,RPKI证明该组织正在积极管理其地址空间的路由安全。这可以改善与传输提供商的协调,并在多个方参与宣布同一前缀时减少混淆。
对于中转提供商和托管公司,RPKI验证可以成为更广泛的路由安全计划的一部分。提供商可以将验证结果与前缀过滤器、IRR数据、BGP监控和内部路由策略结合使用。没有单一的数据源是完美的,但结合多个信号可以提供更好的操作可见性。
RPKI还可以提高事件响应能力。当出现意外的BGP公告时,网络团队可以快速检查起源是否被授权。这有助于区分潜在的劫持与合法但未记录的路由变更。
RPKI 无法做到的事情
RPKI是有价值的,但它不是路由安全的完整替代方案。它验证前缀和起始ASN之间的关系。它不能证明BGP路径中的每一跳都是可信的,也不能保证流量会遵循最佳或最安全的物理路径。
RPKI不会对应用流量进行加密。它不会保护网络会话、DNS查询、电子邮件或私有数据免受拦截。对于这些用途,仍然需要使用TLS、VPN和安全应用协议等加密技术。
RPKI也不能自动防止每一条路由泄露。一条路由可能由正确的ASN发起,但仍会被传播到不应该出现的地方。起源验证可能会将这样的路由归类为有效,因为起源是被授权的,尽管更广泛的路径在操作上是错误的。
RPKI本身不能证明合法所有权。注册记录、合同、转让文件和组织授权仍然很重要。有效结果表明该路由与已发布的授权相匹配;它不确认是否满足所有商业或法律要求。
最后,只有在维护记录的情况下,RPKI才能有效工作。一个创建了授权但随后在供应商或ASN更改后忘记更新的组织,可能会导致自己的路由中断。
企业如何开始使用RPKI?
第一步是创建组织拥有的、租赁的、赞助的或预期宣布的所有IPv4和IPv6前缀的清单。对于每个前缀,记录预期的起源ASN、宣布的提供商、前缀长度以及该前缀是否当前在BGP中可见。
下一步是确认注册表和资源记录。组织应核实地址空间是否与正确的账户、组织、资助的LIR或资源持有者相关联。如果公共注册数据过时,应在创建新的路由授权之前进行更正。在确认资源清单后,组织可以通过其区域互联网注册机构或资助提供商创建适当的授权记录。起始ASN和最大前缀长度应反映实际的路由计划。如果合法使用多个ASN,设计应仔细记录,而不是在没有明确原因的情况下添加广泛的授权。
组织随后应使用RPKI验证器或已建立的监控服务来验证记录。在对客户或生产流量应用严格的过滤策略之前,确认预期的公告返回“有效”结果非常重要。
部署应被视为一个操作流程,而不是一次性配置任务。对上游供应商的更改、ASN赞助、前缀聚合、数据中心位置和IPv4转移安排都可能影响RPKI记录。监控和变更管理应成为正常网络工作流程的一部分。
常见的RPKI部署错误
一个常见的错误是为错误的来源ASN创建了授权。这通常发生在供应商迁移期间,当旧的ASN仍保留在记录中,而网络开始从新的ASN宣告时。
另一个错误是错误地设置最大前缀长度。如果一个组织仅授权了一个聚合路由,但宣布了一个更具体的路由,那么更具体的宣告可能会变得无效。如果最大长度设置得太宽,授权可能会允许组织无意中允许的宣告。
过时的记录也是主要问题之一。几年前正确的授权可能不再符合组织当前的网络设计。在IPv4转移、合并、赞助LIR变更或ASN重新编号后,定期审查尤其重要。
一些组织还假设“未找到”结果意味着应拒绝该路由。在大多数情况下,“未找到”意味着没有授权。应根据网络的策略和风险模型进行处理,而不是被当作自动恶意行为。
RPKI、IRR 和 BGP 监控
RPKI是更广泛的路由安全方法的一部分。IRR数据库包含路由策略对象,网络运营商可以使用这些对象生成过滤器。这些对象可以描述预期起源前缀的ASN,但它们使用的信任和验证模型与RPKI不同。
BGP监控显示实际宣布的内容以及公告的可见位置。它可以揭示路由变更、意外的起源地、路径变更和不稳定时期。RPKI显示起源是否被授权,但它不提供路由的完整操作历史。
因此,RPKI、IRR和BGP监控通常会一起使用。强有力的路由审查可能将注册记录、预期的ASN、IRR对象、RPKI授权和实时BGP观察进行比较。当这些来源一致时,路由位置更容易理解。当它们不一致时,在完成迁移或转移之前应调查差异。
RPKI应该如何维护?
RPKI维护应与网络变更管理相连接。当组织计划更改其起始ASN、上游提供商、前缀长度或公告位置时,应在更改之前审查对授权记录的预期影响。
监控应在预期的前缀变为无效时、授权被移除时或出现以前未见过的来源时向网络团队发出警报。当警报包含受影响的前缀、来源ASN、当前验证状态和更改时间时,它们最有用。
组织还应记录谁负责管理RPKI。在一些公司中,网络工程团队负责管理这些记录。在其他公司中,则由资助的LIR、托管服务提供商或安全团队负责管理。明确的所有权有助于防止事件和供应商迁移期间出现延误。
定期审查可以每月、每季度或在发生重大路由更改时安排。适当的频率取决于网络的大小和复杂性。重要的是,RPKI应被视为路由系统的一个活跃部分。
关于RPKI的常见问题
RPKI是否是使用BGP的必要条件?
不。网络可以使用BGP而不发布RPKI授权记录。然而,由于RPKI为其他网络提供了验证该组织发布的路由来源的方法,因此现在越来越推荐使用RPKI。
RPKI能否防止BGP劫持?
RPKI并不能物理上阻止其他网络发送未经授权的BGP公告。它允许接收网络识别与已发布的授权不匹配的公告。然后,网络可以根据其策略拒绝、降低优先级或监控这些路由。
RPKI仅适用于IPv4吗?
No. RPKI supports both IPv4 and IPv6 prefixes. The same basic origin validation concept applies to both address families.
RPKI未找到结果是否危险?
不一定。未找到意味着未找到适用的授权。这并不证明路线错误。然而,资源持有者应考虑发布准确的授权,以便其他网络可以验证其声明。
RPKI可以替代IRR路由对象吗?
不。RPKI和IRR有不同的用途,通常一起使用。一些提供商在构建路由过滤器和审查宣告时会同时使用这两个系统。
如果RPKI记录错误会发生什么?
错误的记录可能导致合法的BGP公告被归类为无效。组织应审查起源ASN、前缀长度和最大长度,然后在应用严格的路由过滤之前更新授权。
RPKI is an important improvement to the security of Internet routing. It gives IP resource holders a way to publish cryptographic authorization for the ASNs that are allowed to originate their IPv4 and IPv6 prefixes. It also gives network operators a practical method for checking whether BGP announcements match that authorization.
该概念很简单:IP前缀的持有者公布其预期来源,其他网络则根据该信息验证公告。结果有助于识别授权路由、冲突路由以及未发布授权的路由。RPKI不会取代谨慎的网络工程、注册管理、IRR记录、BGP监控或合同尽职调查。它也不能保证每条路由都安全,或能防止所有路由事件。它的价值在于为路由过程添加一个可靠的授权信号。
对于管理ASN、IPv4地址空间、IPv6地址空间或多个上游提供商的组织来说,应将RPKI包含在正常的路由设计中。在宣布前缀、更换提供商、完成IPv4转移或部署新的IPv6网络之前,应一起审查注册数据、起源ASN、授权记录和实时BGP状态。这个简单的流程可以防止可避免的错误,并提高互联网连接的整体可靠性。