BGP角色模型:追踪RFC 9234的采用情况

💡 原文英文,约4200词,阅读约需16分钟。
📝

内容提要

Cloudflare对RFC 9234(BGP角色与OTC属性)的部署情况进行了研究,发现仅36个自治系统可能符合规范,67个对等方设置了OTC属性。实验表明,两个一级网络(GTT和Arelion)剥离了OTC属性,影响了96.6%的IPv4路径。经沟通,Arelion已修复问题,但GTT仍存在。文章建议运营商配置BGP角色以增强路由泄漏防护。

🔎

延伸解读

OTC属性剥离的影响

实验发现,两个一级网络(GTT和Arelion)会剥离OTC属性,导致96.6%的IPv4路径和92.9%的IPv6路径失去该属性。这严重削弱了RFC 9234的防泄漏效果,因为OTC属性是下游网络检测路由泄漏的关键。虽然Arelion已修复,但GTT仍未解决,运营商在依赖OTC时应考虑这些网络的路径。

采用率与部署现状

通过分析公共BGP数据和Cloudflare的直连观测,仅36个自治系统可能符合RFC 9234规范,其中67个对等方设置了OTC属性。采用者多为路由服务器和个人运营者,而大型网络部署缓慢。这反映了新BGP安全机制的早期采用阶段,运营商应评估自身部署时机。

配置BGP角色的注意事项

配置BGP角色时,需注意会话重置和兼容性。RFC 9234要求会话双方角色匹配,否则会拒绝会话。目前仅部分BGP实现支持该标准,如BIRD、FRR等,而Cisco IOS XR即将支持。运营商应在维护窗口内逐步部署,并确认邻居是否支持,避免影响现有路由。

Q&A

RFC 9234 是什么?它如何帮助防止 BGP 路由泄漏?

RFC 9234 定义了 BGP 角色(BGP Role)和 Only to Customer (OTC) 属性。BGP 角色要求邻居在会话建立时明确双方关系(如提供商、客户、对等),而 OTC 属性标记路由只能向下游客户传播。当路由器收到带有 OTC 的路由时,可以自动拒绝将其通告给提供商或对等体,从而无需手动配置策略即可防止路由泄漏。

Cloudflare 如何追踪 RFC 9234 的采用情况?

Cloudflare 利用其全球对等网络,通过 BMP 监控从对等体收到的 OTC 属性,并检查 OTC 值是否等于对等体的 ASN。如果相等,则表明该对等体设置了 OTC,可能符合 RFC 9234。此外,他们还分析了公共 BGP 数据(如 RouteViews 和 RIPE RIS)来估计采用情况。

根据 Cloudflare 的研究,目前有多少自治系统可能符合 RFC 9234?

根据 Cloudflare 的研究,通过公共 BGP 数据分析,他们发现只有 36 个自治系统可能符合 RFC 9234。此外,通过直接对等观察,他们发现 67 个对等体设置了 OTC 属性。

Cloudflare 在实验中发现了哪些网络剥离 OTC 属性?这对路由泄漏防护有何影响?

Cloudflare 发现两个一级网络(Tier-1)GTT (AS3257) 和 Arelion (AS1299) 会剥离 OTC 属性。这两个网络出现在 96.6% 的 IPv4 和 92.9% 的 IPv6 缺失 OTC 的路径中。这导致通过它们传播的路由无法被下游网络识别为需要限制传播,从而削弱了 RFC 9234 的防泄漏效果。

Arelion 和 GTT 对剥离 OTC 属性有何回应?

Cloudflare 联系了 Arelion 和 GTT,他们确认剥离 OTC 是出于防御目的,源于过去 BGP 错误处理事件。Arelion 在沟通后很快部署了配置以保留 OTC 属性,而 GTT 目前仍会剥离 OTC,继续影响 RFC 9234 的有效性。

如何在自己的网络中配置 BGP 角色?

首先,确认你的路由器软件支持 RFC 9234(如 BIRD、OpenBGPD、FRR、RouterOS 等)。然后,在 eBGP 会话上配置本地角色(如 provider、customer、peer 等),并确保邻居也配置了相应的角色。配置后需要重置 BGP 会话。Cloudflare 建议在维护窗口内进行,并已开始在其全球网络中逐步部署。

RFC 9234 中的 BGP 角色有哪些选项?哪些角色组合是有效的?

BGP 角色有五种:Provider、Customer、Peer、RS(路由服务器)和 RS-Client。有效的角色组合只有五种:Provider-Customer、Customer-Provider、RS-RS-Client、RS-Client-RS、Peer-Peer。如果双方配置的角色不匹配,会话将被拒绝。

OTC 属性是如何设置的?

OTC 属性在路由首次停止严格向上传播时设置。具体规则:当向客户、对等体或 RS-Client 通告路由且无 OTC 时,附加 OTC 并携带自己的 ASN;当从提供商、对等体或 RS 接收路由且无 OTC 时,附加 OTC 并携带对方的 ASN。

🏷️

标签

➡️

继续阅读