BGP路由属性,起源属性和BGP AS间防环,一分钟了解下

2023-06-05 06:01:08

一、BGP基础【回顾】

BGP(Border Gateway Protocol,边界网关协议)是一种既可以用于不同 AS(Autonomous

System,自治系统)之间,又可以用于同一 AS 内部的动态路由协议。当 BGP 运行于同一 AS 内部

时,被称为 IBGP(Internal BGP);当 BGP 运行于不同 AS 之间时,称为 EBGP(External

BGP)。AS 是拥有同一选路策略,属于同一技术管理部门的一组路由器。

二、BGP发言者和BGP对等体

运行 BGP 协议的路由器称为 BGP 发言者。BGP 发言者接收或产生路由信息,并将路由信息发布

给其它 BGP 发言者。

相互之间存在 TCP 连接、相互交换路由信息的 BGP 发言者互为 BGP 对等体。根据对等体所在的

AS,对等体分为以下几种:

1、IBGP 对等体:对等体与本地路由器位于同一 AS。

2、EBGP 对等体:对等体与本地路由器位于不同 AS。

三、BGP的路由属性

BGP 路由属性是跟随路由一起发布出去的一组参数。它对特定的路由进行了进一步的描述,使得路

由接收者能够根据路由属性值对路由进行过滤和选择。下面将介绍几种常见的路由属性。

1. 源(ORIGIN)属性

ORIGIN 属性定义了路由信息的来源,标记一条 BGP 路由是怎么生成的。它有以下三种类型:

1)、IGP:优先级最高,表示路由产生于本 AS 内。

2)、EGP:优先级次之,表示路由通过 EGP 学到。

3)、 Incomplete:优先级最低,表示路由的来源无法确定。例如,从其它路由协议引入的路由信

息。

优先级:一句话 i>e>?

2. AS路径(AS_PATH)属性

AS_PATH 属性记录了某条路由从本地到目的地址所要经过的所有 AS 号。当 BGP 路由器将一条路

由通告到其他 AS 时,会把本地 AS 号添加在 AS_PATH 列表中。收到此路由的 BGP 路由器根据

AS_PATH 属性就可以知道到达目的地址所要经过的 AS。

AS_PATH 属性有以下两种类型:

1)、 AS_SEQUENCE:AS号按照一定的顺序排列。离本地AS最近的相邻AS号排在前面,其他AS号

按顺序依次排列。

2)、AS_SET:AS 号只是经过的 AS 的简单罗列,没有顺序要求。

AS_PATH 属性

AS_PATH 属性具有如下用途:

A、避免路由环路的形成:缺省情况下,如果 BGP 路由器接收到的路由的 AS_PATH 属性中已经

包含了本地的 AS 号,则 BGP 路由器认为出现路由环路,不会接受该路由。

B、影响路由的选择:在其他因素相同的情况下,BGP会优先选择路径较短的路由。比如在 图

中,AS 50 中的BGP路由器会选择经过AS 40 的路径作为到目的地址 8.0.0.0 的最优路由。用

户可以使用路由策略来人为地增加AS路径的长度,以便更为灵活地控制BGP路径的选择。

C、 对路由进行过滤:通过配置 AS 路径过滤列表,可以针对 AS_PATH 属性中所包含的 AS 号来

对路由进行过滤。