团队文章互联网怎样运作

RPKI 与 BGP 安全性比较

BGP 交换路由,RPKI 提供核对来源的证据。理解两者怎样配合、能防住什么,以及为什么维护记录不应变成支配网络的权力。

目录

微缩工程师在两台相连的网络设备旁,核对一张授权卡。
BGP 交换路由通告;来源验证利用另一套授权数据,核对通告所声称的起点。

一个网络说:“这些地址可以从我这里到达。”其他网络该不该相信?理解这个问题,就能分清 BGP 和 RPKI 的作用:前者传递路线信息,后者提供核对路线来源的证据。

路线是一回事,授权是另一回事

互联网由许多独立运营的网络组成。它们通过 BGP 交换路由通告,告诉彼此能到达哪些地址。一组地址叫作 IP 前缀;参与交换路由的自治系统,用 ASN,也就是自治系统编号来标识。运营者根据收到的通告和自己的规则选择路线。RFC 4271定义了这种交换方式。

但一条通告本身,并不能证明其中写明的起点网络,确实得到地址持有者的授权。有人配错了来源,也可能有人故意劫持,结果都是用户打不开原本运行正常的网站,或者流量被带到不该去的地方。

RPKI 提供证书和签名记录体系。其中的路由来源授权,简称 ROA,说明哪个 ASN 获准作为某些前缀的路由起点。验证软件先检查这些证据,把核验后的数据交给路由器,再用来比较收到的通告。这项比较叫路由来源验证,简称 ROV。

核对的是起点,不是沿途一切

检查主要看两件事:来源 ASN 是否获准,通告的前缀长度是否在允许范围内。它不检查通信内容,不给流量加密,也不证明通告里经过的每个网络都可靠。一条被错误传播的路由,仍可能保留正确的起点。

RFC 6811把结果分成三种:有匹配授权,是 Valid;有覆盖这个地址范围的授权,但没有一条允许这组来源与长度,是 Invalid;当前数据里没有覆盖授权,是 NotFound。没有找到证据,和找到了不相符的证据,不能混为一谈。

接下来怎样处理,由接收方的路由政策决定。它可以拒绝 Invalid 路由。但你发布了一条 ROA,并不代表所有网络都会检查它。BGP 仍然负责交换路线信息。

断网时,分清这几步很重要

假设业务换了一个起点网络,授权里却仍然只写着旧 ASN。新通告就可能变成 Invalid。此时要核对的是实际通告、对方手里的授权数据,以及哪条政策拒绝了它。只去检查机房网线,就找错了方向。

来源验证还需要准确记录、可靠的软件、过滤规则、监控和配合好的变更流程。把它看成一个包办所有安全问题的印章,反而会遮住剩下的风险。

掌握证据,不等于拥有支配权

在第 28 篇札记中,卢恒区分了维护记录与惩罚使用者。别人依赖你的记录,你就可能影响别人的网络。但这种影响力,不会自动赋予你代表跨洲用户作政治决定的资格。

他的第 64 篇札记(英文原作)提出:共同规则只应覆盖唯一性、互通和安全确实需要的部分;参与者能够自行核验;后续变化由真正运行系统的人自愿采用。目标是让可信的协调服务可以被替换,而不是让某个管理者永远不可或缺。

可以先追问一个具体问题:团队能否从一条授权记录,一直追到接收方接受或拒绝路由的决定?接着读运营者怎样准备和维护 ROA。趁业务正常时把这条链弄清楚,比断网后再找人容易得多。