深入解析AS-SET监控技术与BGP路由安全

本文详细介绍了AS-SET在BGP路由中的关键技术作用,包括路由过滤配置、路由泄露防护机制,以及Cloudflare Radar新推出的AS-SET监控功能,帮助网络运营商提升网络安全性。

监控AS-SET及其重要性

AS-SET简介

AS-SET(不要与最近已弃用的BGP AS_SET混淆)是一种互联网路由注册表(IRR)对象,允许网络运营商将相关网络分组在一起。AS-SET历史上用于多种目的,例如将特定网络提供商的下游客户列表分组。例如,Cloudflare使用AS13335:AS-CLOUDFLARE AS-SET将我们自己的自治系统号码(ASN)和下游自带IP(BYOIP)客户网络分组,这样我们最终可以与其他网络通信,告知他们应该从我们这里接受哪些前缀。换句话说,AS-SET是目前互联网上允许某人证明其作为提供商的网络的方式。这种提供商授权系统完全基于信任,意味着它根本不可靠,并且是尽力而为的。基于RPKI的提供商授权系统的未来将以ASPA(自治系统提供商授权)的形式出现,但标准化和采用需要时间。在此之前,我们只能使用AS-SET。

由于AS-SET对互联网上的BGP路由至关重要,网络运营商需要能够监控其网络的有效和无效AS-SET成员资格。Cloudflare Radar现在在每ASN的路由页面中引入了透明的公开列表,以帮助网络运营商。

AS-SET与构建BGP路由过滤器

AS-SET是BGP策略的关键组成部分,通常与表达性路由策略规范语言(RPSL)配对使用,后者描述了特定BGP ASN如何接受路由并将其传播到其他网络。大多数情况下,网络使用AS-SET来表达其他网络应该从他们那里接受什么,就下游客户而言。

回到AS13335:AS-CLOUDFLARE示例AS-SET,这在PeeringDB上明确发布,供其他对等网络参考并构建过滤器。

在启动新的传输提供商服务时,我们还要求提供商网络使用相同的AS-SET构建其路由过滤器。由于BGP前缀也使用route或route6对象在IRR注册表中创建,对等点和提供商现在知道他们应该从我们这里接受哪些BGP前缀,并拒绝其余部分。基于AS-SET和IRR数据库构建前缀列表的流行工具是bgpq4,您可以轻松尝试。

例如,要生成包含AS13335可能为Cloudflare及其客户传播的前缀的Juniper路由器IPv4前缀列表,您可以使用:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
% bgpq4 -4Jl CLOUDFLARE-PREFIXES -m24 AS13335:AS-CLOUDFLARE | head -n 10
policy-options {
replace:
 prefix-list CLOUDFLARE-PREFIXES {
    1.0.0.0/24;
    1.0.4.0/22;
    1.1.1.0/24;
    1.1.2.0/24;
    1.178.32.0/19;
    1.178.32.0/20;
    1.178.48.0/20;

限制为10行,前缀列表的实际输出会大得多。

此外,我们的提供商和对等点将在eBGP导入策略中应用此外缀列表,以确保AS13335仅能为我们自己和我们的客户传播通告。

准确的AS-SET如何防止路由泄露

让我们通过一个简单示例看看准确的AS-SET如何帮助防止路由泄露。在此示例中,AS64502有两个提供商——AS64501和AS64503。AS64502意外地搞乱了其向AS64503邻居的BGP导出策略配置,并导出所有路由,包括从其AS64501提供商接收的路由。这是典型的第一类发夹路由泄露。

幸运的是,AS64503实施了使用IRR数据(包括AS-SET和路由对象)生成的导入策略。通过这样做,他们将仅接受源自AS64502的AS锥的前缀,因为AS64502是他们的客户。由于AS64503提供商网络负责的过滤,这种路由泄露传播对互联网上许多前缀的主要可达性或延迟影响被阻止,而不是产生影响。再次值得记住,此策略的成功取决于虚构的AS64502:AS-CUSTOMERS AS-SET的数据准确性。

监控AS-SET滥用

除了使用AS-SET将一个人的下游客户分组外,AS-SET还可以代表其他类型的关系,例如对等点、传输或IXP参与。

例如,有76个AS-SET直接包含其中一个一级网络Telecom Italia / Sparkle(AS6762)。从AS-SET的名称判断,大多数代表某些ASN的对等点和传输,其中包括AS6762。您可以在https://radar.cloudflare.com/routing/as6762#irr-as-sets 自行查看此输出。

定义包含一个人对等点或上游的AS-SET没有问题,只要这些AS-SET未提交给上游用于客户->提供商BGP会话过滤。实际上,用于上游或点对点关系的AS-SET对于在RPSL中定义网络策略可能有用。

然而,AS6762成员列表中的一些AS-SET(如AS-10099)看起来证明了客户关系。

1
2
% whois -h rr.ntt.net AS-10099 | grep "descr"
descr:          CUHK Customer

我们知道AS6762是无传输的,此客户成员资格必须无效,因此它是AS-SET滥用的主要示例,理想情况下应清理。许多互联网服务提供商和网络运营商在被要求时非常乐意纠正无效的AS-SET条目。将每个AS-SET成员资格视为潜在风险是合理的,当路由泄露发生时,可能向主要网络和互联网传播更广泛的路由泄露。

Cloudflare Radar上的AS-SET信息

Cloudflare Radar是一个展示全球互联网流量、攻击和技术趋势与洞察的中心。今天,我们正在将IRR AS-SET信息添加到Radar的路由部分,通过网站和API访问免费向公众提供。要查看AS直接或间接通过其他AS-SET成为成员的所有AS-SET,用户可以访问相应AS的路由页面。例如,Cloudflare(AS13335)的AS-SET列表可在 https://radar.cloudflare.com/routing/as13335#irr-as-sets 获取。

IRR上的AS-SET数据仅包含有限信息,如AS成员和AS-SET成员。在Radar,我们还使用以下附加有用信息增强AS-SET表。

推断的ASN显示被推断为AS-SET创建者的AS号码。我们使用PeeringDB AS-SET信息匹配(如果可用)。否则,我们解析AS-SET名称以推断创建者。

IRR源显示我们在哪些IRR数据库中看到相应的AS-SET。我们目前使用以下数据库:AFRINIC、APNIC、ARIN、LACNIC、RIPE、RADB、ALTDB、NTTCOM和TC。

AS成员和AS-SET成员显示相应类型成员的计数。

AS锥是AS-SET直接或间接包含的唯一ASN的计数。

上游是包含相应AS-SET的唯一AS-SET的计数。

用户可以通过搜索特定AS-SET名称或ASN进一步过滤表格。还提供了一个切换开关以仅显示直接或间接AS-SET。

除了列出AS-SET外,我们还提供树状视图以显示AS-SET如何包含给定ASN。例如,以下截图显示as-delta如何通过7个其他AS-SET间接包含AS6762。用户可以以文本格式复制或下载此树状视图内容,便于与他人共享。

我们使用我们公开可用的API构建了此Radar功能,与其他Radar网站构建方式相同。我们还尝试使用此API构建其他功能,如完整的AS-SET树可视化。我们鼓励开发人员尝试此API(和其他Radar API),并告诉我们您的想法!

展望未来

我们知道AS-SET很难保持无错误或滥用,尽管Radar使它们更易于监控,但错误和滥用仍将继续。因此,我们作为一个社区需要推动RFC9234的采用及其主要供应商的实现。RFC9234将角色和仅对客户(OTC)属性直接嵌入BGP协议本身,有助于在线检测和防止路由泄露。除了通过RFC9234进行BGP错误配置保护外,自治系统提供商授权(ASPA)仍在IETF中推进,最终将有助于提供一种权威手段,以证明每个BGP自治系统(AS)的实际提供商是谁。

如果您是网络运营商并管理AS-SET,如果尚未这样做,您应认真考虑转向分层AS-SET。分层AS-SET看起来像AS13335:AS-CLOUDFLARE而不是AS-CLOUDFLARE,但区别非常重要。只有AS13335 ASN的适当维护者才能创建AS13335:AS-CLOUDFLARE,而任何人都可以在IRR数据库中创建AS-CLOUDFLARE,如果他们想这样做。换句话说,使用分层AS-SET有助于保证所有权并防止路由信息的恶意毒化。

虽然跟踪AS-SET成员资格看起来像是一件琐事,但它在防止BGP相关事件(如路由泄露)方面可以带来显著回报。我们鼓励所有网络运营商尽自己的一份力量,确保您提交给提供商和对等点以传达下游客户锥的AS-SET是准确的。AS-SET中的每一个小调整或清理工作都可能有助于减轻以后BGP事件的影响。

访问Cloudflare Radar以获取有关(互联网中断、路由问题、互联网流量趋势、攻击、互联网质量等)的更多洞察。在社交媒体上关注我们:@CloudflareRadar(X)、https://noc.social/@cloudflareradar(Mastodon)和radar.cloudflare.com(Bluesky),或通过电子邮件联系我们。

Cloudflare的连接云保护整个企业网络,帮助客户高效构建互联网规模应用程序,加速任何网站或互联网应用程序,抵御DDoS攻击,阻止黑客,并可以帮助您完成零信任之旅。

从任何设备访问1.1.1.1开始使用我们的免费应用程序,使您的互联网更快更安全。

要了解有关我们帮助构建更好互联网的使命的更多信息,请从此处开始。如果您正在寻找新的职业方向,请查看我们的空缺职位。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计