首页 > 解决方案 > 从 Oregon Route-views 了解 RIB 转储的格式

问题描述

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

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

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 地址有何关系。源/目标 AS 到底是什么?

标签: networkingroutingbgp

解决方案


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

为了让你开始...

... BGP 中的路由是前缀一些属性属性中的关键是next-hopAS-Path。在宣布到 BGP 对等体(邻居)的路由时,BGP 路由器表示它可以到达前缀,如果前缀中包含目的地的数据包被转发到下一跳,它们被转发到它们的目的地。AS-PATH列出了数据包(预计)在到达目的地的途中经过的AS 。

因此,您看到的是可访问的前缀和每个前缀的AS-PATH属性。我猜你遗漏了下一跳(对于 eBGP,这通常是广播路由的 BGP 路由器的地址——但在任何情况下,所有 eBGP 路由通常都具有相同的下一跳) .

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

【从技术上讲,AS-Path应该是从右到左读取的,并且列出了该路由所经过的AS 。大多数情况下,这与从左到右读取穿过网络到达目的地的数据包相同。]


推荐阅读