从俄勒冈路线视图了解 RIB 转储的格式

Understanding format of RIB dumps from Oregon Route-views

我正在做一个项目,我需要分析 Oregon Routeviews Project 中的 rib-dumps。

我从 here 下载特定节点的特定时间和日期的 .bz2 文件。这些文件每 2 小时生成一次。 然后我使用 zebra parser 解压缩并解析。 最后,我得到了一个文本文件,其中包含以下格式的近一百万个条目

194.33.63.0/24 58511 8468 31493 31493

还有很多尾号相同但开头IP不同的条目。 例如

194.28.28.0/22 58511 31500 50911

194.28.28.0/23 58511 31133 50911

我的推断是这些数字是自治系统数字,它们以某种方式表示 BGP 跃点,但我不清楚它们与开头的 IP 地址有何关系。 source/destination AS 到底是什么?

我真的认为你应该去读读 BGP 的工作原理,以及你正在查看的 BGP 消息所携带的路由信息​​是什么意思。

让你开始......

...BGP 中的 routeprefix 和一些 attributes属性中的关键是下一跳AS-Path。在宣布到 BGP 对等体(邻居)的路由时,BGP 路由器说它 可以 到达 prefix 并且如果数据包的目的地在 前缀被转发到下一跳,它们被转发到他们的目的地。 AS-PATH 列出了 ASes,数据包(预期)通过这些 es 到达目的地。

所以你看到的是可达的 prefixes 和每个的 AS-PATH 属性。我猜你遗漏了 下一跳 (对于 eBGP,通常是通告路由的 BGP 路由器的 the/an 地址——但无论如何所有 eBGP 路由通常具有相同的 下一跳 )。

AS-PATH可以从左到右阅读:第一个AS是从其学习路由的那个,最后一个 AS 是包含 prefix 的那个。转发到 下一跳 的数据包(当前)预计将按此顺序通过这些 ASes 到达目的地。所以第一个 AS 将是源——路由的直接源。最后一个AS可以称为目的地,也可以称为起点——路由的起点。

[技术上,AS-Path应该是从右往左读,列出路由经过的AS这么远大多数情况下,这与从左到右阅读数据包通过网络到达目的地相同。]

as-50911 origin or destination,
as-58511 source
194.28.28.0/22 should be the owner of as-50911 origin

我认为您对 /23 或 /22 感到困惑。 194.28.28.0/23 它不是不同的 IP。它实际上是具有不同前缀长度的相同 IP,即 /23。自治系统在 IRR 中注册了具有前缀长度的 IP 地址。不太具体,即 /22 表示更多的端节点。更具体地说,即 /23 意味着更少的端节点。此外,您应该阅读前缀长度。