BGP 传播的是可达信息和路径属性。公开路由数据来自特定观测点,不能直接等同于每个用户的实际访问路径。
先交换路线信息,再转发数据
BGP 的全称是 Border Gateway Protocol,中文通常叫边界网关协议。它是互联网网络之间交换路由信息的主要协议。一个网络向邻居宣告某些 IP 前缀可达,邻居根据自己的策略决定是否接受,以及是否继续向其他网络传播。
BGP 本身并不运输网页、视频或聊天内容。它帮助路由器形成到达目的地址的选择,数据包再按照转发表向下一跳前进。把路由信息的传播与实际数据的转发分开理解,就能避免把一条 BGP 记录当成完整的访问记录。
AS_PATH 记录了什么
路由宣告包含多种属性,其中 AS_PATH 用 ASN 描述路由信息经过的自治系统。假设一条普通路径显示为 64496 64497 64498,可以把它读成:从这个观测方向看,路由信息经由这些自治系统传来,最右侧的 AS64498 是这条示例路由的起源。
这里的 ASN 来自文档保留范围,只用于解释。实际读取时还要注意特殊路径结构、重复出现的 ASN 和数据平台的处理规则。AS_PATH 描述的是路由信息传播过程,并不是逐台路由器的清单,也不是网络之间商业合同的证明。
网络为什么不总选看起来最短的路
网络选路不只看 AS_PATH 的长度,还会受到本地策略、路径属性和下一跳可达性等因素影响。运营者可能优先使用某个连接、过滤某些宣告,或调整对外传播的信息。因此,ASN 较少的路径不一定更快,路线也不一定对所有用户相同。
例如,一张网络同时连接两家上游,可以根据自己的策略优先接受其中一条路由;另一张网络可能作出不同选择。即使访问同一个目的地址,不同出发网络在同一时间看到的路线也可能不同,往返方向也未必一致。
公开路由数据库看到的是观测结果
RIPE NCC 的 RIS 通过路由收集器,与自愿提供信息的网络建立 BGP 会话,保存收到的更新和撤销消息。数据库再用这些信息整理前缀、路径及历史变化。它提供了非常有价值的观察窗口,但窗口的位置和参与网络决定了能看到什么。
所以,“最近快照中未看到某个前缀”应理解为该数据范围内未观测到,不能直接推断全网都不可达。判断是否发生变化,需要比较相同口径下的多个时间点,并了解观测来源是否发生调整。
看路由资料时,记住这三点
BGP 资料适合回答路由层面的问题。若要知道具体连接的延迟、丢包或实际转发经过,还需要相应的测量和更明确的时间条件。单独一张路径图,通常不足以解释一次真实访问的全部过程。
- 前缀宣告是可达信息,不等于该地址段内每台设备正在运行。
- 路径中的相邻 ASN 不自动证明彼此是上游、客户或免费互联关系。
- 采集时间与页面查看时间不同,快照不能冒充此刻的完整网络状态。
参考资料
本文根据以下原始资料整理。定义、登记与协议细节可进一步核对。
了解 ASNBase 使用的来源,以及不同记录代表的含义。