ASPA是什么:与ROA区别及上线核对步骤
简答:ASPA面向自管ASN和BGP运营者,声明允许的provider,用于补充ROA验证路径关系;上线前核对上游、IXP类型、验证器支持和回滚方案,Unknown不宜直接丢弃。
定义:ASPA(Autonomous System Provider Authorization)是由ASN持有者创建的RPKI对象,用签名列表声明该ASN授权的上游或中转provider。
先看结论:ASPA上线前核对什么
本文编译整理自 APNIC Blog《Your most pressing questions about ASPA, answered》,适合自管ASN、维护BGP路由或负责RPKI验证的网络运营者。ASPA属于BGP控制面安全机制;如果你遇到的是网页打不开、DNS超时或TLS失败,仍应先按五层连接路线判断,不能仅凭业务连接现象推断ASPA有问题。
更新于2026年10月23日。ASPA对象由ASN持有者创建,并包含授权provider列表;验证器据此检查BGP路径中的provider关系。APNIC对ASPA的定义与用途说明,ASPA用于补充ROA无法覆盖的路径验证部分。
| 核对项 | 判断标准 | 处理建议 |
|---|---|---|
| 是否有自己的ASN | ASPA面向ASN持有者,一个对象只对应一个customer ASN | 先确认资源证书、ASN归属和注册机构入口 |
| provider名单 | 列出实际承担上游或中转角色的ASN | 包括备份中转、部分中转和指定地点提供中转的网络 |
| IXP类型 | 透明或非透明route server会影响AS_PATH中的关系判断 | 先确认route server是否把自身ASN加入路径 |
| 验证结果 | Valid、Invalid、Unknown含义不同 | Invalid应排查关系或对象,Unknown不应仅凭状态直接丢弃 |
| 上线后维护 | 上游变更会改变ASPA内容 | 将provider变更纳入变更单、监控和回滚流程 |
ASPA与ROA、IRR、BGP Roles有什么区别
ROA回答“哪个ASN可以宣布某个IP前缀”,重点是路由起源;ASPA回答“哪些ASN可以作为某个ASN的provider”,重点是路径中的提供商关系。APNIC官方说明明确指出,ROA不能验证路由经过的路径,而ASPA用于补充BGP路径验证。两者不是替代关系,通常需要分别维护。
| 对象或机制 | 主要回答的问题 | 运维关注点 |
|---|---|---|
| ROA | 某个前缀允许哪个origin ASN宣布 | 前缀、origin ASN、最大长度 |
| ASPA | 某个customer ASN允许哪些provider ASN | 完整provider名单、上游变更、复杂关系 |
| IRR | 路由策略和路由对象如何表达 | 过滤流程、对象维护和数据来源 |
| BGP Roles | 相邻eBGP会话双方约定的provider、customer、peer或route server角色 | 两端角色是否一致,以及是否影响路由传播 |
RFC 9234定义了BGP Roles和Only to Customer(OTC)属性,用于在BGP会话中表达关系并预防、检测route leak。BGP Roles依赖会话两端的角色协商,ASPA则通过RPKI对象表达provider授权,二者不是同一个字段或验证流程。
provider应按BGP路径中的实际中转能力判断,而不是只看合同名称或是否建立了BGP会话。一个邻居可能对部分前缀承担provider角色,对另一部分前缀承担peer或customer角色;这种按前缀区分的关系需要单独核对,不能把所有邻居自动加入ASPA。
按网络角色核对provider和IXP关系
企业多线接入
如果企业ASN从两家或多家网络获得互联网接入,应把实际提供中转的各个ASN列入provider。备份链路即使平时流量很少,只要故障切换时承担上游或中转角色,也不能因为平时不承载流量而省略。只交换自身或指定前缀、且不承担provider角色的邻居,不应仅因存在BGP会话就加入。
ISP、内容网络或区域网络
判断重点是“该网络能否把从你这里学到的路由继续传播到其他方向”。部分中转、指定地点中转和指定前缀中转都可能属于provider关系。ARIN官方指南说明,一个ASPA对象只能包含一个customer ASN;如果组织管理多个ASN,需要分别创建对象。
透明IXP route server
如果IXP route server不会把自己的ASN加入转发后的AS_PATH,参与者通常不把IXP ASN作为自己的provider。此时仍要根据参与者之间的真实关系判断:如果某参与者实际为另一参与者提供中转,customer一方仍需列出对方ASN。
非透明IXP或没有上游的网络
如果route server把自身ASN加入AS_PATH,参与者需要重点核对该ASN是否应作为路径中的provider。没有transit provider的网络可以进一步核对AS0 ASPA的实现和验证器支持;非透明route server自身如何发布,也应以当前ASPA验证文档和注册机构说明为准。IETF ASPA Profile草案仍可能更新,原文未说明所有注册机构和验证器都以相同方式处理该场景,因此不能只凭拓扑图直接上线。
发布前建议保存当前BGP路径、邻居关系和路由策略。可以先使用故障基线记录保存变更前状态;若发布后业务出现异常,再用三组对照定位设备、路由器与上游边界区分控制面变更和本地连接问题。
发布、验证与修正:按四步执行
- 整理关系表。记录customer ASN、所有上游ASN、备份上游、部分中转关系、复杂peering和IXP route server类型。不要把peer、customer或只提供对等互联的邻居自动填入。
- 在注册机构平台创建对象。APNIC用户应按APNIC ASPA页面进入MyAPNIC相关管理入口;ARIN用户可参考其官方步骤:进入Routing Security,选择Manage RPKI,再进入ASPAs并创建对象。界面名称或可用功能发生变化时,以所属注册机构当前页面为准。
- 确认对象进入仓库。ARIN文档说明,其RPKI仓库通常每几分钟更新一次;提交成功不等于所有验证器已经同步。应使用RPKI验证器获取对应仓库,检查对象是否存在、签名是否有效,再确认路由器是否通过RPKI to Router链路取得数据。
- 先观测再执行策略。验证结果通常分为Valid、Invalid和Unknown。依据RIPE NCC的ASPA说明,Invalid表示路径中的某个AS间关系与授权信息不一致;Unknown通常表示缺少足够的ASPA信息。由于对象覆盖不完整或验证链路异常都可能导致Unknown,不应仅因Unknown直接丢弃路由。
如果发现遗漏provider,优先修正ASPA对象并重新观察验证结果,不要立即把对象问题等同于BGP路由策略问题。若误填provider,先保存对象内容、受影响ASN、验证器状态和BGP路径,再按注册机构流程修改或删除对象,并观察仓库刷新与路由重新评估结果。
ASPA仍处于持续部署阶段。部署前应分别核对注册机构页面、IETF ASPA验证文档以及实际验证器和路由器的支持情况;无法从官方资料确认的实现细节,应标记为未核实。
ASPA能解决什么,不能解决什么
ASPA主要帮助验证BGP AS_PATH中的provider关系,可用于识别部分route leak和不符合授权关系的路径,也能提高伪造路径被识别的机会。它不等于加密BGP会话,不会自动修复错误的路由策略,也不能替代ROA、BGP会话安全、前缀过滤和运营变更管理。
ASPA也不是普通网站访问故障的直接诊断工具。假如用户反馈“某个网页打不开”,应先记录DNS结果、TCP连接、TLS握手、HTTP状态码和IPv4/IPv6差异;只有当多个上游或多条路径同时表现出路由异常,并且验证器输出指向AS_PATH或RPKI状态时,才把ASPA纳入控制面排查。
如果控制面变更后出现连接异常,先保留现象和时间线,再按DNS、TCP、TLS、HTTP和本地网络分层验证,避免把网页访问问题直接归因于ASPA。
常见问题
ASPA是什么,普通网站用户需要配置吗?
ASPA是面向ASN持有者和BGP网络运营者的RPKI对象。普通网站用户没有自管ASN或BGP路由时,通常不需要配置ASPA。
ASPA和ROA有什么区别?
ROA验证某个IP前缀允许哪个origin ASN宣布,ASPA验证BGP路径中的provider关系。两者关注点不同,不能互相替代。
备份上游需要加入ASPA吗?
如果备份上游在故障切换时实际承担provider或中转角色,应加入。是否经常承载流量不是唯一判断标准。
IXP的route server ASN要不要填进ASPA?
透明route server通常不直接作为provider填写;非透明route server需要根据其是否进入AS_PATH、当前验证规则和注册机构说明进一步核对。
ASPA验证结果是Unknown,要不要丢弃路由?
通常不要仅因Unknown丢弃。Unknown表示验证信息不足,可能与对象覆盖不完整或验证链路状态有关,应结合本地策略观察处理。
ASPA发布后如何排查路由异常?
先保存对象内容、验证器状态和BGP路径,再确认是否漏填provider、误填邻居或误判IXP类型,最后按注册机构流程修改并等待仓库同步。
相关阅读
参考资料
- APNIC Blog:Your most pressing questions about ASPA, answered
- APNIC:ASPA(Autonomous System Provider Authorization)
- ARIN:Autonomous System Provider Authorizations(ASPAs)
- RIPE NCC:Autonomous System Provider Authorization(ASPA)
- IETF:RFC 9234,BGP Roles与OTC属性
- IETF:A Profile for Autonomous System Provider Authorization
- IETF:BGP AS_PATH Verification Based on ASPA Objects