路由安全
Sunoaki Network 在外部 BGP sessions 上使用保守的路由过滤。目标很简单:只有当 origin、前缀长度和会话角色都合理时,才接受路由。
下面的公开策略描述运营方可以期待的行为。关于路由被接受后的处理方式,请参阅路由策略文档。
导入验证
每条从 BGP 收到的路由在进入路由表前,都会经过共享的验证步骤。
当路由匹配以下任一条件时会被拒绝:
- 前缀过于具体:IPv4 长于
/24,或 IPv6 长于/48。 - 前缀属于 bogon、保留、文档、私有、多播或其他不可路由范围。
- AS path 包含 bogon 或保留 ASN。
- 路由为 RPKI
invalid。 - 路由是来自外部 BGP session 的默认路由。
RPKI 验证基于本地 ROA 表执行。Invalid 路由会被拒绝;valid 和 not-found 路由可继续进入后续策略检查。
Downstream 路由范围
Downstream sessions 的过滤比 peer 或 upstream sessions 更严格。Downstream 路由必须通过共享验证步骤,并且必须匹配预期 downstream 范围。
对 downstream 导入,Sunoaki 会检查:
- AS path 保持在 downstream AS set 内。
- 前缀被生成的 IPv4 或 IPv6 前缀列表覆盖。
- 前缀长度仍遵守公开上限
/24和/48。
生成的 downstream 列表来自 ARIN::AS-SUNOAKI,并通过 bgpq4 构建。更新流程会从公开 routing registry 数据和 RPKI-aware 来源拉取 ASN 与前缀,再生成 BIRD 使用的过滤器。
这意味着 downstream customers 应保持自己的 route-set 或 AS-SET 数据最新。PeeringDB 前缀上限也应保持准确,具体见 peering 策略。
Peer 和 upstream sessions
Peer 和 upstream sessions 使用同一组共享验证检查,包括 bogons、RPKI invalids、前缀长度和默认路由。
从外部 sessions 接受的路由会按来源类型打标签。Sunoaki 区分从 upstreams、downstreams 和 peers 学到的路由,并在导出策略中使用这些标签。
这让路由传播保持可预期。从某一类 session 学到的路由不会自动导出到所有地方;它必须匹配目标 session 类型的导出规则。
导出控制
导出策略结合路由来源标签和公开的 BGP communities。
Sunoaki 会添加 large communities,记录路由被导出到哪里,以及它在内部由哪个节点发起或传播。这些标签用于运维可见性,并用于在骨干网上应用一致策略。
运营方可以使用公开 communities 控制以下行为:
- Blackhole 信号。
- 导出控制。
- AS-path prepending。
- 按 upstream、peer 或节点进行流量工程。
完整公开列表见 BGP communities。
合作方需要维护什么
为避免路由被拒绝或需要手动清理,peers 和 downstreams 应保持以下数据准确:
- 源发前缀的 RPKI ROAs。
- Route-set 或 AS-SET 成员关系。
- PeeringDB 中的前缀上限。
- NOC 联系信息。
对于新的 sessions,route-set 或 AS-SET 以及 PeeringDB 条目应在会话建立前准备好。