摘要

  • 公开路由分析将 2021 年 4 月 16 日的一组大规模异常起源通告与 Vodafone Idea AS55410 联系起来,但公开证据没有证明恶意意图。
  • Catchpoint 报告称,在格林尼治时间 13:48:58,AS55410 显示为超过 34,000 个网络的起源;这一数字及其“网络”计量单位必须保留在 Catchpoint 的观察口径内。
  • Catchpoint 对 RIPE RIS 的 rrc00 收集器进行分析,称在格林尼治时间 13:45 至 15:00 之间观察到约 225,000 条 BGP 更新消息;73 个对等观察点中有 64 个至少接收到一个受影响网络。
  • Catchpoint 还称,大多数异常路由在约一小时后被移除,事件涉及超过 3,500 家公司;这些是该发布者基于特定观测数据得出的结论,不代表所有网络、所有用户或所有路径具有相同结果。
  • MANRS 另行称,AS55410 平时通告 824 条路由,而在事件中额外通告超过 31,000 条路由。这个计数不能与 Catchpoint 的“超过 34,000 个网络”静默合并。
  • MANRS 将事件称为“劫持”,并在其分析中把所观察到的传播与 Bharti Airtel AS9498 联系起来,同时指出其他被识别的上游没有传播同一组路由。这不等于掌握所有上游的私有配置,也不证明所有传播路径都经过 AS9498。
  • The Register 以新闻报道方式将事件概括为超过 30,000 个虚假前缀;这一说法提供事件规模的新闻佐证,但不是逐前缀的路由取证证明。
  • 起源和出口控制首先属于源网络的责任范围,上游网络则控制客户路由是否被接受、是否受到前缀授权和最大前缀策略约束,以及是否继续向外传播。
  • RPKI 路由起源验证能够对受 ROA 覆盖且起源无效的路由提供拒绝依据,但它不验证完整 AS 路径,也无法保护没有 ROA 覆盖的前缀。
  • RIPE RIS 与 RouteViews 保存参与对等方的部分观测。它们能够显示某些观察点在某些时刻收到了什么,却不能授权路由,也不能证明所有网络选择了同一条路径。
  • 注册表、IRR 路由对象、ROA 和收集器数据都是证据层。它们不会自行配置边界路由器,更不能代替运营商实际执行的入口、出口和传播策略。
  • 配图仅是一幅通用的确定性编辑网络示意图,用于表达上游过滤边界与路由传播关系;它不是照片、设施图、地图,也不是对事件路径的还原。

事件范围:公开证据能回答什么

这起事件的可核实范围,是 2021 年 4 月 16 日围绕 AS55410 出现的大量异常 BGP 起源通告,以及这些通告如何被部分上游和观察网络接收、传播、记录和撤回。公开材料足以说明事件规模显著、传播范围广,并暴露了源网络出口控制和上游客户路由过滤之间的责任连接。

公开材料不能回答的内容同样重要。现有来源没有公开 Vodafone Idea、Bharti Airtel 或其他相关网络的完整路由器配置、会话策略、变更记录、告警时间线、值班响应记录或事后修复报告。它们也没有证明动机、疏忽、违法、隐瞒、法律责任、精确财务损失、完整受影响用户数量、每一条传播路径或长期整改结果。

因此,本文讨论的是基础设施控制责任,而不是对主观意图或法律结论作出裁判。问题不是简单地问“谁拥有这些地址”,而是逐层追踪:谁能够起源这些路由,谁能够阻止它们离开源网络,谁能够拒收客户未获授权的前缀,谁决定继续传播,谁最先看见异常,谁能够协调撤回,以及谁应保存足以证明修复确实完成的证据。

时间线:从异常起源到大规模撤回

Catchpoint 选取 RIPE RIS 的 rrc00 收集器观察事件,并以格林尼治时间 13:45 至 15:00 作为其分析区间。这个区间是特定来源对特定收集器数据的整理边界,不应被表述为全球事件在每个网络中的统一开始和结束时间。

据 Catchpoint 报告,在格林尼治时间 13:48:58,AS55410 显示为超过 34,000 个网络的起源。这里的数字是“超过 34,000 个网络”,而不是经独立核验的全球唯一路由前缀总数。不同分析可能因采样对等方、时间窗口、前缀聚合方式、重复更新去除方式以及“正常路由”基线不同而给出不同结果。

Catchpoint 称,在 13:45 至 15:00 的窗口内,rrc00 记录了约 225,000 条 BGP 更新消息。更新消息数量不等于唯一前缀数量,也不等于受影响用户数量。一条前缀可能经历多次通告和撤回;不同对等观察点也可能报告同一前缀的不同路径状态。消息量反映控制平面的剧烈变化,而不是对业务损失的直接计量。

在 Catchpoint 所查看的 73 个 rrc00 对等方中,64 个至少接收到了一个受影响网络。这个比例说明异常路由在该收集器的观察面中广泛可见,但不能外推为“全球所有网络中有同等比例受到影响”。收集器对等方不是整个互联网的统计抽样框,也不代表所有网络的路由选择。

Catchpoint 进一步描述,大多数异常路由在大约一小时后被移除,并称影响涉及超过 3,500 家公司。这里的“大约一小时”和“超过 3,500 家公司”都必须保留来源归属。不同前缀、不同自治系统和不同服务可能经历不同的开始时间、传播深度、撤回速度与业务结果。

MANRS 使用了另一套描述。其文章称,AS55410 通常通告 824 条路由,而事件期间额外通告超过 31,000 条路由。该数字为理解正常规模与异常规模之间的差距提供了另一条证据,但不能直接替换 Catchpoint 的数字,也不能把两者相加。

The Register 随后的新闻报道把事件概括为超过 30,000 个虚假前缀。这一概括与“异常规模达数万条”的总体判断一致,但新闻报道不是逐条路由记录。它可以帮助理解当时业界对事件的关注程度,不能单独证明每个前缀的起源状态、可达性或传播路径。

三个不能混为一谈的概念

“路由泄漏”通常强调一条路由违反了预期的业务关系或传播范围。例如,某网络把从一个提供商或对等方学到的路由错误地导出给另一个提供商,使本不应经过自己的流量路径被传播出去。RFC 7908 提供了多种路由泄漏类型,但把某次真实事件归入哪一类,仍需要可靠的关系和路径证据。

“起源误通告”强调某个自治系统把自己并未获授权起源的前缀作为本地起源通告出去。就此次事件而言,公开分析关注的核心正是 AS55410 被观察为大量网络的起源。这个描述可以成立,而无需先推断通告是手工误配、自动化故障、路由重分发错误还是有意行为。

“BGP 劫持”在技术文章和新闻报道中常被用来描述未经授权的前缀起源。MANRS 明确把此次事件称为劫持,因此在转述其分析时应保留该术语及其来源。但“劫持”一词本身不能自动证明恶意意图。没有配置记录、人员决策证据或其他直接材料,就不能从异常起源推导出攻击动机。

本文使用“路由泄漏”概括事件的基础设施责任问题,同时明确指出公开来源使用了不同术语。更稳妥的事实表述是:AS55410 在公开路由观察中被关联到数万条异常起源通告,这些通告经部分上游传播;公开证据没有确定其动机。

BGP 如何把局部错误变成跨网络事件

BGP 是自治系统之间交换可达性信息的协议。路由通告大致表达:“这个前缀可以通过某个路径到达。”接收网络会根据本地策略、路径属性、业务关系和其他条件决定是否接受,并在接受后决定是否选用以及是否继续导出。

一条异常路由要形成广泛影响,通常需要多个控制边界连续放行。源网络首先必须生成或导出该通告。直接上游必须在客户会话上接受它。上游还必须允许它进入自身的路由决策,并根据出口策略向其他邻居传播。后续网络再依照各自策略决定接受、选择或继续传播。

这意味着“起源者有责任”与“上游也有责任”不是相互排斥的命题。源网络控制最接近异常起点的设备和配置,因此对本地起源授权、路由重分发、出口前缀清单和变更安全负有首要控制责任。上游则控制自己的客户边界,能够决定一个客户究竟可以通告哪些前缀、多少前缀,以及哪些通告可以继续离开上游网络。

后续网络也不是完全被动的。每个网络都控制自身的入口策略、RPKI 起源验证处置、路由偏好、最大前缀保护、异常监测和撤回响应。责任的强弱应依据实际控制能力、已知风险、可部署防线以及观测到异常后能够采取的行动来判断。

BGP 的分布式性质使任何单一数据源都无法完整呈现全球状态。一个观察点看到 AS55410 为某前缀的起源,不等于每个自治系统都接受了该通告;接受也不必然等于选为最佳路径;选为最佳路径仍不必然意味着所有数据包都以相同方式转发或所有服务都发生中断。

源网络的第一道责任:起源与出口控制

AS55410 所在网络最接近异常通告的生成位置。无论事件由哪一种具体配置路径造成,源网络能够控制的事项至少包括本地起源列表、静态路由注入、内部协议向 BGP 的重分发、客户或内部会话的路由接收、出口前缀过滤以及配置变更权限。

最基本的防线是明确规定该自治系统被允许起源和导出的前缀集合。这个集合不应仅存在于文档或注册记录中,还应转化为设备可执行的策略。允许清单需要有版本控制、双人核验、自动差异检查和安全部署程序,避免一次宽泛匹配把大量外部前缀变成本地起源。

出口过滤的价值在于,即使内部某个环节错误地产生了路由,边界仍能阻止它离开网络。对于规模和业务相对稳定的网络,可以把正常通告基线、授权前缀集合和聚合边界结合起来。对动态性更高的网络,也可以通过自动生成过滤器、配置测试和变更前后差异审查降低误通告风险。

源网络还应监测“自身 ASN 正在起源什么”,而不仅仅监测链路是否可用。外部路由收集器、商业监测平台和多个地理位置的观察点可以发现内部监控看不到的出口结果。如果外部世界突然看到本 ASN 起源数万条新路由,即使内部设备没有触发接口故障,也应立即进入最高级别的路由事件响应。

上游的第二道责任:客户前缀授权

客户—上游边界是阻止局部错误向互联网扩散的关键位置。上游通常知道某条 BGP 会话属于哪个客户,也能够维护该客户被允许通告的前缀范围。客户前缀过滤可以基于合同和开通记录、可信路由对象、注册数据、ROA 以及经过核验的例外流程生成。

任何单一数据源都不足以成为机械真理。IRR 路由对象可能过期、缺失或受到维护权限问题影响;注册数据说明资源记录,却不直接证明实时路由意图;ROA 对前缀和最大长度提供起源授权证据,却不描述全部商业关系。稳健做法是把多种证据结合起来,并对冲突、缺失和紧急变更设置受控流程。

最大前缀策略是另一道独立防线。MANRS 所描述的正常基线为 824 条路由,而异常增量超过 31,000 条。即使上游无法在事发瞬间判断每条新路由的权属,数量级的突变本身也足以构成强烈异常信号。

最大前缀限制不应只是会话断开的单一阈值。更成熟的设计可以设置预警阈值、硬限制、增长速率告警和受控例外。阈值过低可能在正常扩容时造成不必要中断;阈值过高则失去保护意义。关键是根据客户正常规模设定,并要求扩大阈值经过明确授权,而不是长期使用近乎无限的默认值。

MANRS 将其观察到的传播与 Bharti Airtel AS9498 联系起来,同时称其他被识别的上游没有传播同一组路由。这种差异很重要,因为它说明传播不是不可避免的统一结果。不同上游可能有不同的客户过滤、会话状态、路由偏好或可见范围。

但公开观察不能单独证明 AS9498 的完整私有策略,也不能证明所有其他上游都因某一特定过滤器而拦截了路由。它只能支持一个受限结论:在 MANRS 的分析范围内,所观察到的异常路由通过 AS9498 传播,而其他被识别的上游没有呈现相同路由集的传播。

RPKI 起源验证:重要但不完整

RPKI 允许资源持有者创建 ROA,声明某个 ASN 可以起源某个前缀,并指定允许的最大前缀长度。路由器或验证基础设施可据此把路由归类为有效、无效或未找到覆盖授权。

如果某个受 ROA 覆盖的前缀被 AS55410 起源,而 ROA 授权的是另一个 ASN,那么该路由可能被判定为起源无效。执行“拒绝无效路由”策略的网络可以在自己的边界阻止它进入可用路由集合或继续传播。

然而,RPKI 起源验证只回答“这个起源 ASN 是否符合对应 ROA”。它不验证完整 AS 路径,不判断中间网络是否违反了客户、提供商或对等关系,也不能发现所有形式的路径操纵。一个拥有有效起源的路由仍可能沿不符合预期的路径传播。

对于没有 ROA 覆盖的前缀,验证结果通常是“未找到”。如果网络把所有未找到路由都视为可接受,那么这些前缀仍可能被异常起源和传播。若网络一律拒绝未找到路由,又可能切断尚未部署 ROA 的合法网络。因此,RPKI 的覆盖率、资源持有者维护质量和网络的本地处置政策共同决定实际保护效果。

ROA 还可能因前缀长度设置错误、迁移未同步或授权更新延迟而产生合法路由被判无效的风险。运营商需要监测自身路由验证状态,在变更起源 ASN、启用更具体前缀或迁移上游之前先更新授权,并保留可回滚的时间窗口。

因此,RPKI 是客户前缀授权的重要证据和强大过滤输入,但不能取代客户会话前缀清单、最大前缀限制、AS 关系策略、路径异常监测和人工事件响应。

注册表与 IRR:证据记录并不执行策略

ASN、IP 地址资源和路由对象的记录有助于建立“谁被登记为资源持有者”“谁声明允许某 ASN 起源某前缀”以及“应联系谁处理异常”等事实。它们对于前缀过滤器生成、事件核验、联系人查找和历史追踪都很重要。

但注册记录不会向路由器下发强制命令。IRR 中存在一条路由对象,不等于每个上游都会读取、验证和部署它;没有路由对象,也不自动证明当前通告必然非法。ROA 存在同样需要验证器、缓存、路由器策略和实际处置动作才能发挥作用。

这一区分是事件问责的核心。记录系统可以提高号码资源证据的唯一性、准确性和安全性,却不能保证实时可达性。真正决定异常通告能否离开客户边界并继续传播的,是正在运行的路由策略。

当前的 CAIDA ASRank、CIDR Report 和 RIPE Stat 数据可以提供 AS55410 的网络关系、注册概况或公开通告资源背景,却不能被当作 2021 年 4 月 16 日的完整快照。网络关系会改变,前缀会转移,数据源会更新,观察覆盖范围也会变化。

因此,当前数据最多用于补充背景或交叉检查。若要重建事发时状态,应优先使用带时间戳的路由档案、当时的 ROA 和 IRR 快照、运营商日志、变更记录以及多收集器观测,而不是把今天的 API 响应倒推成五年前的确定事实。

RIPE RIS 与 RouteViews:观察者不是授权者

RIPE RIS 和 RouteViews 从参与对等方接收 BGP 路由,并保存可供分析的历史数据。它们帮助研究者重建某些观察点在某些时刻收到的前缀、起源 ASN、AS 路径和撤回消息。

收集器不会决定哪条路由有权存在。它们不代表资源注册机构,也不向运营商发放路由许可。即使收集器记录了一条异常路由,这条记录也只是“某个对等观察点向收集器展示了这条路由”的证据。

收集器也无法证明每个网络选择了相同路径。其可见性受对等方位置、策略和路由出口方式限制。某条路由未出现在某个收集器中,可能是因为没有传播到相关对等方,也可能是因为该对等方没有向收集器导出最佳路径之外的信息。

相反,一条路由在多个收集器中可见,也不能直接证明所有终端用户的业务都受到了相同影响。控制平面可见性、最佳路径选择、数据平面转发和应用层可用性是不同证据层,必须分别验证。

Catchpoint 对 rrc00 的分析具有重要价值,因为它提供了具体时间和对等观察范围。但负责任的表述必须持续附带其观察边界:约 225,000 条更新消息、64 个接收至少一个受影响网络的对等方,以及约一小时后的大部分撤回,都是该来源基于所选数据得到的观察。

影响证据:传播广泛不等于结果完全相同

大规模异常起源可能把流量引向错误网络、形成不可达路径、造成绕行、触发拥塞,或在不同网络之间产生不一致的可达性。实际结果取决于哪些网络接受路由、路由是否胜出、数据流被送往何处以及源网络是否能够正确转发相关目的流量。

本文所依据的公开资料没有证明每一个被通告的前缀都在所有地方不可达。某些网络可能拒绝了路由;某些网络可能保留合法路径;某些异常通告可能未成为最佳路径;另一些路径可能确实改变了流量方向。

同样,不能从控制平面消息数量推导完整用户数量。一个前缀可能服务一家大型云平台,也可能只承载少量系统。某家公司被列入与受影响前缀相关的组织范围,也不意味着其全部服务、全部地区和全部用户都遭受相同持续时间的中断。

Catchpoint 所称“超过 3,500 家公司”应被理解为该分析中涉及的组织规模指标。它支持事件影响面广这一判断,但不是经过逐家公司核实的统一损失清单,也不能用于计算精确财务损失。

新闻中“互联网出现波动”之类的描述能够表达用户层面的不稳定体验,却不能替代逐服务遥测。可靠的影响评估需要应用可用性数据、流量变化、支持工单、网络路径测量、区域分布和业务恢复时间共同支撑。

预防:把授权事实转化为边界策略

源网络应维护机器可执行的起源与出口允许清单。每一项授权都应与资源记录、网络设计和业务目的对应,并在路由器变更前进行差异检查。宽泛的重分发规则、无边界的策略匹配和临时例外都应被视为高风险配置。

上游应为每个客户建立独立的前缀授权范围,而不是仅凭“这是客户会话”就接受任意路由。过滤器需要定期更新,但更新过程必须保留来源、审批时间、生成结果和部署版本,以便事件后证明当时执行了什么。

最大前缀保护应结合绝对数量和变化速率。客户从数百条路由突然增长到数万条,是一种不依赖逐前缀权属判断也能识别的异常。告警可以先触发人工核验,硬限制则应在超出安全边界时阻止继续接收或传播。

网络可以采用 RPKI 起源验证拒绝受覆盖的无效起源,并对未找到状态建立符合自身风险承受能力的政策。关键不只是“启用了验证”,还要证明验证数据新鲜、缓存可用、路由策略真正引用结果,而且故障时不会静默退回无保护状态。

明确的入口和出口策略同样重要。RFC 8212 所体现的安全方向,是在没有显式策略时不默认交换路由。这样可以减少新会话、模板错误或配置遗漏意外形成开放传播路径的风险。

BGP Roles 与 Only-to-Customer 属性提供了约束意外传播的另一类机制。它们有助于表达会话角色并限制某些路由超出客户方向传播,但实际保护取决于双方支持、正确配置和部署范围。标准的存在不能证明此次事件中的任何具名网络已经部署这些能力。

检测:从“链路在线”转向“路由行为正常”

有效监测需要建立每个客户、每个边界和每个起源 ASN 的正常行为基线,包括常见前缀数量、聚合层级、起源 ASN、路由验证状态、更新速率和典型传播范围。

异常指标不应只看会话是否断开。一条 BGP 会话可能始终保持正常连接,同时持续传送大量错误路由。监控系统需要识别突然出现的新起源、前缀数量爆发、无效路由增加、路径关系异常和更新消息风暴。

内部监测与外部观察必须结合。内部日志能够显示配置提交、会话接收和策略命中;外部收集器则能揭示路由离开本网络后实际呈现的结果。二者出现差异时,应优先调查策略是否未部署、仅在部分边界部署,或路由是否通过未纳入监控的路径传播。

检测还应覆盖监测系统自身。验证缓存过期、路由收集延迟、告警规则停用、时钟不一致或日志丢失,都可能让“没有告警”失去证明力。运营商需要定期进行可控测试,以证明异常路由能被识别并送达有权采取行动的值班人员。

遏制:停止继续传播比解释原因更紧迫

发现大规模异常通告后,第一目标是阻止新增传播。源网络可以撤销错误起源、关闭相关重分发、回滚配置或临时限制出口。上游可以暂停客户会话、应用紧急前缀过滤、拒绝无效起源或阻止相关路由继续向外导出。

遏制动作必须考虑副作用。直接关闭整个客户会话可能同时撤回合法路由,扩大中断范围。逐前缀过滤可能更精确,但在数万条异常路由和信息不完整的情况下需要更长准备时间。因此,预先设计的应急阈值、分级动作和授权边界至关重要。

协调渠道也是控制面的一部分。网络运行中心需要能够快速联系源网络、上游、资源持有者、路由监测服务和关键受影响网络。注册联系人若过期、无人响应或缺少全天候升级路径,会把技术上可快速完成的撤回变成漫长协调问题。

撤回消息发出并不意味着事件立即结束。不同网络可能以不同速度处理更新,路由反射器、会话状态和路径探索都可能延迟收敛。遏制阶段需要持续监测多个外部观察点,直到异常起源和传播显著消退。

RFC 7999 描述的广为人知的黑洞社区为一般性的流量处置提供背景,但没有任何所列来源证明此次事件使用了该机制。不能把标准中存在的选项写成事件中的实际响应动作。

恢复:撤回只是开始,不是完成

恢复首先要求确认合法路由重新成为可见且可用的路径。运营商需要检查多个收集器、主要上游、关键区域和实际数据平面测量,不能只看本地路由器显示“配置已回滚”。

其次,应确认异常路由不再从其他边界或备份路径继续传播。大型网络往往存在多个出口、路由反射器和配置模板。一处修复成功不代表所有设备、地址族和会话都已经同步。

第三,应核实恢复是否引入新的验证问题。例如,重新发布合法前缀时可能触发 ROA 最大长度不匹配,紧急过滤器可能误伤合法更具体前缀,或最大前缀限制仍处于临时放宽状态。

第四,应保留可复现证据。至少包括配置变更记录、策略版本、BGP 邻居日志、接收与通告路由快照、验证状态、告警时间、人员决策、撤回时间和外部观测。没有这些证据,组织很难区分一次暂时回滚与持久修复。

持久整改应通过演练验证。运营商可以在隔离环境或受控会话中测试未授权前缀、无效起源、前缀数量突增和关系违反是否会被阻止,并检查告警是否到达正确团队。书面承诺只有在运行策略中得到验证,才构成可靠修复。

问责矩阵:按控制能力分配责任

阶段 主要控制者 可执行控制 应保留的证据
起源 源网络 起源允许清单、重分发限制、配置审批、变更测试 起源配置、提交记录、策略差异、设备日志
出口 源网络 出口前缀过滤、路由数量基线、异常出口告警 出口策略版本、命中日志、外部可见性记录
客户接收 直接上游 客户前缀授权、IRR/注册/ROA 交叉核验、最大前缀限制 客户授权清单、过滤器生成记录、阈值与例外
起源验证 上游及其他接收网络 RPKI 起源验证、无效路由处置、缓存健康监控 验证结果、策略引用、缓存状态、故障行为
继续传播 上游及后续网络 明确出口策略、会话角色、关系约束、传播限制 出口决策、路径记录、角色配置、策略命中
检测 各运营商与监测方 路由数量、起源变化、更新速率、外部观察 告警时间线、收集器记录、值班确认
遏制 源网络、上游及协调方 撤回、临时过滤、会话限制、紧急升级 撤回消息、过滤变更、协调记录、观察确认
恢复 所有受控边界的运营商 合法路径验证、误伤检查、临时措施清理 多点路由快照、数据平面测试、关闭记录
持久修复 源网络与传播网络 根因修复、策略强化、演练与独立验证 根因报告、测试结果、长期监测和复发检查

这个矩阵表明,责任不应被压缩成“源网络出错”或“上游本应拦截”中的单一选择。源网络对错误起源和出口负有最直接的责任;上游对自身客户边界的接受与传播负有独立责任;其他网络对自己的验证和导入政策负责;资源持有者对授权数据质量负责;收集器则负责保存可解释的观察证据,而不是替任何运营商执行策略。

问责强度应与实际控制相匹配。能够配置路由器、设定过滤器、调整阈值、停止传播或确认撤回的一方,比只能事后观察路由的一方拥有更强的直接控制。反过来,拥有控制权却没有保留策略和响应证据,也会使其难以证明防线当时确实存在。