首页/网络/BGP 与广域网速查/RPKI 起源验证:valid / invalid / notfound
路由过滤与重分发66 条

RPKI 起源验证:valid / invalid / notfound

RPKI 起源验证基于 ROA 判断前缀与起源 AS 的授权关系:valid(匹配)、invalid(不匹配)、notfound(无覆盖);运营商据此过滤被劫持或误宣告的路由。

BGP 与广域网速查网络更新于 2026-10-13

起源验证判断路由是否被授权

RPKI 用签名的 ROA(Route Origin Authorization)声明「某前缀可以由某个 AS 始发」。路由器收到路由后,把更新里的起源 AS 与 ROA 比对,得到三种结果:valid(有覆盖且匹配)、invalid(有覆盖但不匹配)、notfound(没有覆盖)。运营商据此丢弃被劫持或误宣告的路由,是遏制前缀劫持的基础手段之一。

基本信息

依据ROA 声明前缀、最大长度与授权的起源 AS
数据链RPKI 校验器通过 RTR 协议(RFC 6810)把结果同步到路由器
判断标准RFC 6811 定义前缀起源验证算法
三种状态valid / invalid / notfound
常见策略丢弃 invalid,放行 valid 与 notfound

典型使用场景

  • 客户接入侧防护:阻断明显与授权不符的起源宣告
  • 自有前缀保护:先给自己的网段创建 ROA,再对入向路由启用校验
  • 观测阶段:只统计三种状态分布,不改变选路结果
  • 逐步加严:从仅告警到丢弃 invalid,分阶段推进并逐步扩大范围
  • 对等互联治理:把起源验证纳入互联规范,与安全基线一起执行

状态观察与策略引用

状态观察与策略引用
# FRR 示例:查看前缀的验证状态
show bgp ipv4 unicast 10.1.1.0/24
# 输出含 RPKI validation state 字段
!
# 按状态丢弃 invalid(示意,具体语法以平台为准)
route-map RM-RPKI deny 10
 match rpki invalid
route-map RM-RPKI permit 20
!
# 统计三种状态的分布
show bgp ipv4 unicast summary

三种状态与处理建议

状态含义处理建议
valid有 ROA 且起源与授权匹配正常放行,可提高优先级
invalid有 ROA 但起源或长度不符多数网络选择丢弃,需评估误伤
notfound没有 ROA 覆盖一般放行,避免影响尚未部署 ROA 的前缀

上线前的准备

上线前的准备
# 1) 核对自有前缀是否已创建 ROA
# 2) 确认校验器与路由器之间的 RTR 会话正常
show rpki cache-connection
# 3) 统计入向路由中三种状态的数量分布
show bgp ipv4 unicast
# 4) 先在观测模式运行一段时间,再决定是否启用丢弃策略
校验器不可用时策略如何降级需要提前确定:默认全放行会让防护失效,默认全丢弃则可能造成大面积中断。建议按业务重要性分级设定降级行为,并在变更记录中写明。

易错点

  • 未给自有前缀建 ROA 就启用丢弃:自家路由可能被判为异常状态,影响自身可达性
  • 把 RPKI 当成完整性校验:它只验证起源授权,不验证 AS_PATH 是否真实
  • 校验器故障时无明确降级策略:状态数据缺失导致路由全被放行或被错误丢弃
  • 一步到位直接丢弃 invalid:缺少观测期,误配置前缀被拒后才发现
  • 忽略 maxLength 设置:ROA 中未声明允许的更明细长度,子网宣告会被判 invalid

数据来源与参考

  • RFC 6811: BGP Prefix Origin Validation
  • RFC 6810: RPKI to Router Protocol
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌