BGP笔记

时间:2024-01-27 21:20:09

此笔记根据视频来写的。

来源于:https://www.bilibili.com/video/BV12k4y167uT


动态路由协议可以按照工作范围分成IGP与EGP

 

  IGP:内部网关协议 :工作在一个AS内,主要用来提供路由信息的交换。

 

  EGP:外部网关协议 :工作在AS与AS之间,在AS间提供无环路的路由,BGP是EGP的一种。

 

 

AS:自治系统

  有同一个技术管理机构管理,使用统一选路策略的一些路由的集合。

 

 

 

BGP概述:

 

  路由更新时,BGP只发送更新的路由,大大减少了BGP的传播路由所占用的带宽,适用于在internet上传播大量的路由信息。

 

 

 

BGP从设计上避免了环路的发生。 因为什么?

 

  因为BGP是通过携带AS路径信息来标记沿途的AS。

 

  AS之间:BGP通过携带的AS路径信息来标记途径的AS,带有本地AS号的路由将被丢弃,从而避免了域间产生环路。

 

  AS内部:BGP在AS内学到的路由不在通告给AS内的BGP邻居,避免了AS内产生环路。

 

 

 

EBGP与IBGP

 

  当BGP运行在同一AS内部时,被称为IBGP

 

  当BGP运行于不同AS之间时,被称为EBGP

 

  基本前提:因为要建立TCP连接,所以两端的路由器必须知道对方的IP地址,可以通过直连端口,静态路由或者IGP学习

 

 

 

BGP工作原理报文类型

 

  Open报文

 

  协商BGP参数;主要包括BGP版本,AS号等消息。试图建立BGP邻居关系的两个路由器在建立了TCP会话之后开始交换open信息已确认能否行成邻居关系,是TCP建立后发送的第一个消息。

 

  Update(更新)报文

 

  交换路由消息;该报文则是邻居之间用于交换路由信息的报文,其中包括撤销路由消息和可达路由信息及其各种路由属性。

 

  Keep alive(保持连接)报文

 

  保持邻居关系;该报文用于BGP邻居关系的维护,为周期性交换的报文,用于判断对等体之间的可达性。

 

  Notification(通告)报文

  差错通知;BGP的差错检测机制,一旦检测到任何形式的差错,BGP speaker(BGP发言者)会发送一个NOTIFICATION报文,随后与之相关的邻居关系将被关闭。

 

  Route-Refresh(路由更新)报文

 

  用于在改变路由策略后请求对等体重新发送路由信息。

 

 

 

BGP工作原理-BGP协议中消息应用

 

  1.通过TCP建立BGP连接时,发送OPEN消息

 

  2.连接建立后,如果有路由需要发送或路由变化时,发送UPDATE消息通告对端

 

  3.稳定后要定时发送KEEPALIVE消息保持BGP连接的有效性

 

  4.当本地BGP在运行中发现错误时,要发送NOTIFICATION消息通告BGP对等体ROUTE-REFRESH消息用来通知对等体刷新

 

 

 

BGP路由通告原则

 

  1. 连接一建立,BGP Speaker将把自己产生的所有BGP路由通告给对等体多条路径时,BGP Speaker只选择最优的给自己使用

 

  BGP Speaker 只把自己使用的最优路由通告给对等体。

 

  1. BGP Speaker从BGP获得的路由会向他所有BGP对等体通告(包括EBGP和IBGP)
  2. BGP Spekerr 从IBGP获得的路由不会通告给它的IBGP邻居。
  3. BGP Speaker 从IBGP获得的路由是否通告给它的EBGP对等体要依IGP和BGP同步的情况来决定。

 

 

 

 

 

BGP属性特点

 

  BGP路由属性是一套参数,它是对特定的路由进一步的描述;简单来说就是一组描述BGP前缀特性的参数(四大类)

 

    公认必遵(Well-known mandatory)

 

    所有BGP路由器都可以识别,且必须存在与Update消息中。

 

    如果缺少这种属性,路由信息就会出错。

 

  公认任意(Well-known discretionary)

 

    所有BGP路由都可以识别,但不要求必须存在与Updata消息中。

 

    即就算缺少这类属性,路由消息也不会出错。

 

  可选过渡(Optional transitive)

 

    在AS之间具有可传递性的属性。

 

    BGP路由可以选择是否在Update中携带这种属性,接受的路由如果不识别这种属 性,可以转发给邻居路由器,邻居路由器可能会识别并使用到这种属性。

 

  可选非过渡(Optional non-transitive)

 

    BGP路由器可以选择是否在Update消息中携带这种属性,如果接受的BGP路 由 器不支持此属性,则相应的这类属性被忽略,且不会传递给其他对等体。

 

 

 

BGP属性

类别

1.Origin

Well-known mandatory

2.AS-Path

Well-known mandatory

3.Next_Hop

Well-known mandatory

4.Multi_Exit_Disc

Optional transitive

5.Local_Pref

Well-known discretionary

6.Atomic_Aggregate

Well-known discretionary

7.Aggregator

Optional transitive

8.Community

Optional transitive

9.Originator ID

Optional non-transitive

10.ClusterList

Optional non-transitive

 

 

 

 

 

 

 

BGP属性特点-Origin

 

  Origin属性用来定义路径信息的来源,该属性为公认必遵

 

    IGP

 

      通过路由始发AS的IGP得到的路由信息(通过network命令注入的路由)

 

      标识符为“ i ”

 

    EGP

 

      通过EGP得到的路由信息

 

      标识符为” e ”

 

    Incomplete

 

      通过其他方式学习的路由信息(通过redistribute命令注入的路由)

 

      标识符为” ? ”

 

 

 

 

 

 

 

 

BGP属性特点-AS_Path

 

  AS_Path属性按照矢量顺序记录某条路由从本地到目的地址所要经历的所有AS编号。该属性为公认必遵。

 

 

 

  经过了 700 和 800的AS号。

 

  只有传出本AS才会打上AS path。

 

 

  AS_PATH路径属性的四种类型

    AS_SEQUENCE:有序AS号集合

 

    AS_SET:无序AS号集合

 

    AS_CONFED_SEQUENCE:联邦有序AS号集合

 

    AS_CONFED_SET:联邦无序AS号集合

 

 

 

BGP属性特点-Next_Hop

 

  Next_Hop属性记录了路由的下一跳信息,该属性为公认必遵。

 

 

 

 

 

 

BGP属性特点-Local_Pref

 

  Local_Pref属性表明路由器的BGP优先级,用于判断流量离开AS时的最佳路由。该属性为公认任意。

 

  Local_pref数值越大优先级越高。

 

 

 

BGP属性特点-MED

 

  MED属性相当于IGP的代价值(cost),用于判断流量进入AS时最佳路由,即用来影响邻居AS流量进入本AS的最佳路径,该属性为可选非过渡。

 

  MED数值越小优先级越高。  

 

 

 

BGP属性特点-团队属性

 

  团体属性用于标识具有相同特征的BGP路由,该属性为可选过渡。

 

    团体属性分为:
      自定义团体属性

 

      公共团体属性

 

        Internet

 

        No_Advertise

 

        No_Export

 

        No_Export_Subconfed

 

 

 

    团体属性是有一系列4字节(0x00000000-0xFFFFFFFF)数值所组成

 

      保留的团体属性:

 

        0x00000000-0x0000FFFF

 

        0xFFFF0000-0xFFFF0000

 

      公认团体属性:

 

        NO_ADVERTISE(0xFFFFFF01)

 

        NO_EXPORT(0xFFFFFF02)

 

        NO_EXPORT_SUBCONFED(0xFFFFFF03)

 

      私有团体属性:

 

        AS(2B):Number(2B)

 

 

 

  公共团体属性是公认的,具有全球意义。公认的团体有:

 

    NO_ADVERTISE(0xFFFFFF01): 路由器收到带有这一团体值的路由后,不应把该路由通告给任何给BGP对等体。‘

 

    NO_EXPORT(0xFFFFFF02): 路由器收到带有这一团体值的路由后,不应把该路由通告给一个联盟之外的对等体(本AS传递)

 

    NO_EXPORT_SUBCONFED(0xFFFFFF03): 路由器收到带有这一团体值的路由后,可以把该路由通告给它的IBGP对等体,但不应通告给任何EBGP对等体(包括联盟内的EBGP对等体,本AS传递)。

 

 

 

BGP选路规则(十三条)

 

  当到达同一个目的地存在多条路由时BGP采取如下策略进行路由选择:

 

  (从上到下)

 

    l 如果此路由的下一跳不可达,忽悠此路由。

 

    l 优选协议首选值(PrefVal)最高的路由. (华为私有

 

    l 优选本地优先级(Loca_Pref)最高的路由

 

    l 优选本地生成的路由

 

    l 优选AS路径(AS_Path)最短的路由

 

    l 比较Origin属性,依次优选Originnn类型为IGP、EGPincomplete的路由 I>E>?

 

    l 优选MED值最低的路由

 

    l 优选EBGP邻居学来的路由(EBGP路由优先级高于IBGP路由)

 

    l 优选到BGP下一跳IGP Metric较小的路由

 

    l 当以上全部相同时,则视为等价路由,可以负载分担 (神州数码不支持)
      注AS_PATH必须一致;当负载分担,以下3条原则无效

 

    l 优选Cluster List 最短的路由

 

    l 优选Originator_ID 或者Router ID最小的路由器发布的路由

 

    l 比较对等体的IP Address,优选从具有较小IP Address的对等体学来的路由

 

 

 

BGP选路规则2-Preferred Value(首选值)(华为私有

 

  Preferred Value值越大优先级越高。

 

 

 

BGP选路规则3-local-Preference(本地优先级)

 

    BGP default local-preference命令来配置BGP的缺省本地优先级,该值越大则优先级越高。

 

 

 

 

 

 

    缺省值为100

 

    配置不同本地优先级会影响BGP的路由选择。当一个运行BGP的路由器有多条路由到达同一目的地址时,会优先选择本地优先级最高的路由。

 

    本地优先级属性仅在IBGP对等体之间交换,不通告给其他AS。

 

    从EBGP收到的,会被剥Local-Preference 在打上本地的local-preference传给其他IBGP.

 

 

 

 

 

 

 

BGP选路规则4-优选本地生成(0.0.0.0)

 

  优选聚合路由(聚合路由优先级高于非聚合路由)

 

  通过aggregate命令生成的手动聚合路由的优先级高于通过summary automatic 命令生成的自动聚合路由。

 

  通过network命令引入的路由的优先级高于通redistribute命令引入的路由 

 

 

 

BGP选路规则5-AS Path

 

  AS-PATH是公认必遵属性,该属性用一串AS号来描述去往的指定目的地AS间路 径或路由,当BGP speaker发出一条路由,将在AS_Path中增加自己的AS号。也就是 说,这条路由每经过一个AS区域,就会加上一个AS号,用来标示路径的优先级。

 

  As号叠加得越多,说明经过的AS越多,那么这个路由的优先级也越低。相反,经过的AS越少,那么说明路由越优先.

 

  而且AS-Path还可以防止BGP的环路。工作原理比较简单,如果某台BGP路由器从其外部对等体接收到的某条路由的AS-Path中包含已有的自己的AS号,那么该路由器就知道该路由出现了环路,因为需要丢包处理。

 

 

 

 

 

 

 

 

BGP选路规则6-Origin(起源)

 

  IGP

 

    通过路由始发AS的IGP得到的路由信息(通过network命令注入的路由)

 

    标识符为“ i ”

 

  EGP

 

    通过EGP得到的路由信息

 

    标识符为” e ”

 

  Incomplete

 

    通过其他方式学习的路由信息(通过redistribute命令注入的路由)

 

    标识符为” ? ”

 

  如果通过三种方式同时学习到一条相同的BGP路由前缀,那么优选的顺序为I>E>?

 

 

 

BGP选路规则7-MED

多出口区分MED(Multi-Exit Discriminators)

 

  MED属性仅在相邻两个AS之间传递,收到此属性的AS一方不会再将其通告给任 何其他第三方AS。

 

  越小越优先。

 

  缺省情况下,不允许比较来自不同AS邻居的路由信息的MED值。但是,我们可以通过配置BGP always-compare-med(总是比较MED)命令来允许比较来自不同自制 系统中邻居路由的MED值 。不过,除非能够确认不同的自制系统采用了同样的IGP 和路由选择方式,否则不要使用此命令。

 

 

 

 

 

 

 

 

BGP选路规则8-EBGP路由优先IBGP

 

 

 

BGP选路规则9-BGP下一跳IGP metric较小的路由

 

 

 

 

 

BGP选路规则10-当以上全部相同,则为等价路由(神州数码不支持

 

  注:AS-Path必须一致;当负载分担时,选路即刻结束

 

 

 

 

 

 

 

 

BGP选路规则11-12-RR相关

 

  优选Cluster_List最短的路由

 

  优选Originator_ID或者Router ID最小的路由器发布的路由

 

 

 

  关于BGP  originator-id 与 cluster-list id 属性

 

       这两个属性是用于BGP路由反射器RR,防止环路用的。

 

 

 

BGP选路规则13-对等体IP地址

 

  这说明什么,说明以上都相同,才比较最后一条。

 

  router id 都相同,说明它是两个路由器之间是两条或两条以上的线连接起来的, 所以才比较ip地址。

 

 

 

 

 

BGP扩展特性-安全特性

 

  BGP安全特性:

 

    l MD5

 

    l GTSM

 

    l 限制从对等体接受的路由数量

 

    l AS_Path长度保护

 

 

 

 

 

 BGP扩展特性-MD5认证

 

  neighbor password

 

  使用 neighbor password 命令可以配置用 TCP MD5 选项进行 BGP 邻居间 的密码认证。使用 no neighbor password 取消认证。

 

  neighbor {ip-address | peer-group-name} password LINE

 

  no neighbor {ip-address | peer-group-name} password

 

 

 

参数

 

参数

参数说明

ip-address

邻居IP地址。

peer-group-name

BGP对等体组名。

password

使用MD5密码认证。

LINE

明文密码

 

 

 

  使用说明

 

    使用本命令前必须使用 neighbor remote-as 命令指定邻居。

 

    邻居双方必须都配置了该命令,并且双方配置的密码相同,才能成功通过 MD5 认证建立邻居连接。密码中可以包含空格以外的任意字符,密码长度必 须在 1 20 个字符之 间。

 

    如果使用 peer-group-name 参数指定 BGP 对等体组,该对等体组的所有成员都将继承用该命令配置的特征。

 

 

 

  示例

 

    下面的例子把 abcd 设置为邻居 120.23.4.1 的验证密码:

 

      router bgp 109

 

      neighbor 120.23.4.1 remote-as 108

 

      neighbor 120.23.4.1 password abcd

 

 

 

 

 

BGP扩展特性-GTSM

 

 

 

 

 

 

  

  相关的命令:

 

   

 

 

 

 

 

 

BGP扩展特性-限制路由数量

 

  bgp inbound-max-route-num

 

  命令:bgp inbound-max-route-num <0-500000>

 

  no bgp inbound-max-route-num

 

  功能:限制 bgp 进程从其邻居学到的路由的数量。

 

  参数:具体限制的路由数量,取值范围为<0-500000>

 

  缺省情况:缺省限制数量为 50000 条。

 

  命令模式:BGP 路由配置模式和地址族配置模式。

 

  使用指南:可以通过该命令,限制 bgp 进程从其邻居学到的路由的数量。

 

  举例:经过如下配置,bgp 进程最多可以从其邻居接受 20000 条路由。

 

  Switch(config-router)#bgp inbound-max-route-num 20000

 

  相关命令:无

 

 

 

BGP扩展属性-As_Path长度保护

 

 

 

 

 

 

 

 

 

 

BGP扩展特性-路由衰减(EBGP)

 

     bgp dampening

 

  命令:bgp dampening [<1-45>] [<1-20000> <1-20000> <1-255>] [<1-45>]

 

     no bgp dampening

 

  功能:配置路由衰减。其 no 形式取消路由衰减功能。

 

  参数:<1-45>:分别为可达和不可达路由的惩罚半衰期,即惩罚值减小到原来一半的时间,单位为分钟。 <1-20000>:分别为惩罚的再使用界限和抑制界限。 <1-255>:抑制路由的最大抑制时间,单位为分钟。 缺省情况:可达路由的半衰期为 15 分钟,不可达路由的半衰期为 15 分钟。抑制界限为 2000 再使用界限为 750,最大抑制时间为 60 分钟。

 

  命令模式:BGP 路由配置模式。

 

  使用指南:使用路由衰减技术可以减少不稳定路由带来的过多的路由更新,路由衰减的算法是当路由波动时对路由进行惩罚,惩罚超过抑制界限时就不再对路由进行广告,路由若不再波动则按时间减小惩罚值,其减小按指定半衰期的指数规律进行,当惩罚值小于再使用界限后路由再次被广告,或者抑制时间超过最大抑制时间也将再次广告该路由。本指令就是启动/取消路由衰减并配置所需的参数。

 

  举例:启动路由衰减,并且采用缺省的参数配置。

 

    Switch(config-router)# bgp dampening

 

 

 

 

 

 

 

  最大抑制上限计算公式(华为的,不知道神州数码是不是这样算的)

 

   最大抑制上限=重用时间*2(最大上限时间/半衰期)

 

 

 

 

 

BGP联盟

 

  将一个AS划分为若干个子AS,每个子AS内部建立IBGP全连接关系,子AS之间 建立EBGP连接关系

 

 

 

 

 

 

 

 

  bgp confederation identifier

 

  命令:bgp confederation identifier <as-id>

 

  no bgp confederation identifier [<as-id>]

 

  功能:创建/删除一个联盟配置。其 no 形式删除一个联盟。

 

  参数:<as-id>:联盟 AS ID 号,取值范围为 1-4294967295。可用十进制表示,   6553700 也可用分隔符方式表示,如 100.100

 

  缺省情况:没有联盟。

 

  命令模式:BGP 路由配置模式。

 

  使用指南:使用联盟可以把大的 AS 分为若干小 AS,而对外仍然只识别大的 AS。使 用这个命令创建大的 AS 号。

 

  举例:

 

    Switch(config-router)# bgp confederation identifier 600

 

 

 

    bgp confederation peers

 

  命令:bgp confederation peers <as-id> [<as-id>..]

 

     no bgp confederation peers <as-id> [<as-id>..]

 

  功能:添加/删除一个或多个 AS 到一个联盟。其 no 形式从联盟删除一个或多个 AS

 

  参数:< as-id>:联盟包含的 AS ID 号,取值范围为 1-4294967295。可用十进制 表示,如 6553700;也可用分隔符方式表示,如 100.100。可以是多个。

 

  缺省情况:没有成员。

 

  命令模式:BGP 路由配置模式。

 

  使用指南:使用联盟可以把大的 AS 分为若干小 AS,而对外仍然只识别大的 AS。使 用这个命令向联盟里添加/删除联盟的成员。

 

  举例:创建 1 个联盟,ID 号为 600,添加成员 100,200,100.300

 

    Switch(config-router)# bgp confederation identifier 600

 

    Switch(config-router)#bgp confederation peers 100 200 100.300

 

 

 

 

 

  BGP联盟-放缓机制

 

    AS_CONFED_SEQUENCE   联邦有序AS号集合

 

    AS_CONFED_SET 联邦无序AS号集合

 

 

 

 

 

路由反射器

 

  允许将从IBGP邻居学习到的路由发送给特定的IBGP邻居,打破了IBGP邻居关系全互联的需求,减少了IBGP会话数量。

 

  括路由反射器(RR) 和客户机(Client)。

 

 

 

对等体之间的关系

 

  Client只需维护与RR之间的IBGP会话

 

  RR与RR之间需要建立IBGP的全互联

 

  Non-CLient与Non-Client之间需要建立IBGP全互连

 

  RR与Non-Client之间需要建立IBGP全互连

 

 

 

路由反射器-反射规则

 

  在向IBGP邻居发布学习到的路由信息时,RR按照以下规则发布路由

 

  从EBGP对等体学到的路由,发布给所有的非客户机和客户机。

 

  从非客户机的IBGP对等体学到的路由,发布给此RR的所有客户机。

 

  从客户机学到的路由,发布给此RR的所有非客户机和客户机(发起此路由的客户机除外)。

 

 

 

路由反射器-防环机制

 

  Originator ID属性

 

      该属性为可选非过渡

 

      用于集群内的防环

 

      有路由反射器(RR)产生,携带了本地本地AS内该路由发送者的Router ID

 

  Cluster_List属性

 

      该属性为可选非过渡

 

      用于集群内的防环

 

      有路由反射器(RR)产生,记录反射路由经过的集群

 

 

 

  Originator ID属性用于防止在反射器和客户机/非客户机之间产生环路

 

  Originator ID属性长4字节,可选非过渡属性,属性类型为9,是由路由反射器(RR)产生的,携带了本地AS内部路由发起者的Router ID当一条路由第一次被RR反射的时候, RR将OriginatorID属性加入到这条路由,标识这条路由的始发路由器。

 

  如果一条路由中已经存在了Originator ID属性,则RR将不会创建新的Originator ID当其它BGP Speaker接收到这条路由的时候,将比较收到的OriginatorID和本地的Router ID,如果两个ID相同, BGPSpeaker会忽略掉这条路由,不做处理

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

路由反射簇(Cluster)

 

 

 

  当一个AS内存在多台RRClient提供冗余时, RR间的路由更新很有可能会形成环路,为防止该现象,引人了Cluster的概念

 

 

 

什么是簇?

 

  用过4字节的Cluster_ID来标识Cluster,通常会使用Loopback 地址作为Cluster_ID

 

  一个Cluster里可以包括一个或多个RR; 一个Client可以同时属于Cluster

 

 

 

  Cluster List属性用于防止AS内部的环路

 

  Cluster-List是可选非过渡属性,属性类型编码为10

 

  ClusterList由一系列的Cluster-ID组成,描述了一条路由所经过的反射器路径,这和描述路由经过的As路径的AS-Path属性有相似之处, Cluster_List由路由反射器产生当RR在它的客户机之间或客户机与非客户机之间反射路由时, RR会把本地Cluster_ID添加到Cluster-List的前面。

 

  如果Cluster-List为空, RR就创建当RR接收到一条史新路由时, RR会检查Cluster List。如果ClusterList中已经有本地ClusterID,丢弃该路由;如果没有本地ClusterID,将其加入Cluster List,然后反射该更新路由

 

 

 

 

 

 

 

 

路由器反射器-备份RR

 

  相同集群中的路由反射器要共享相同的Cluster_ID

 

  Cluster_List的应用保证了同一AS内的不同RR之间不出现路由循环

 

 

 

路由反射器-分类

 

  同级反射器

  分级反射器

 

路由聚合原则

 

 

 

十进制

二进制

192.168.1.16

11000000.10101000.00000001.00

010000

192.168.1.32

11000000.10101000.00000001.00

100000

192.168.1.48

11000000.10101000.00000001.00

110000

 

26

6

 

 

 

    聚合后的路由:192.168.1.0/26

 

 

 

自动聚合

 

  对BGP引入的路由进行有类聚合。

 

  配置聚合后,明细路由在路由表中将被抑制。

 

  不能对network发布的路由进行聚合。

 

  只对BGP引入的路由进行聚合。

 

 

 

  自动聚合注意事项

 

    该命令对BGP引入的路由进行聚合,引入的路由可以是直连路由、静态路由、RIP路由、OSPF路由、IS-IS路由。配置聚合后,BGP将按照自然网段聚合路由,明细路由在BGP表中将被抑制。该命令对network命令引入的路由无效。

 

    BGP只向对等体发生聚合后的路由。

 

    缺省情况下BGP不启用自动聚合。

 

 

 

 

 

 

 

手动聚合

 

  对BGP本地路由进行聚合,手动聚合可以控制聚合路由的属性,以及决定是否发布具体路由。

 

  聚合路由不会携带AS_PATH属性。

 

  通过AS_SET属性来携带AS号,以避免环路。SETSEQUENCE的不同之处在于,SET选择下的AS列表通常用于路由聚合,将来自不同ASAS号无序排列在AS列表里,而SEQUENCE选择下的AS列表是有序的,没经过一个AS都会将其AS号排列在列表前端。

 

  聚合路由中添加AS_SET有可能产生路由震荡。

 

 

 

 

 

 

 

 

 

 

 

BGP的增强特性-BGP ORF

 

  使能BGP基于前缀的ORF(Outbound Route Filtering)功能

 

    基于本地的入口策略构建对端的出口策略,实现BGP按需发布路由

 

    包括基于前缀的ORF和VPN ORF

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  BGP的增强特性-Active-Route-Advertise

 

    Active-Route-Advertise

 

    路由必须同时满足在BGP协议层面优选与在路由管理层面活跃两个条件才能向邻居发布。

 

    Active-Route-Advertise默认情况下路由只需在BGP中优选即可向邻居发布。配置了此特性之后,路由必须同时满足在BGP协议层面优选与在路由管理层面活跃两个条件,才能向邻居发布。

 

    与命令bgp-rib-only (用来禁止BGP路由下发到P路由表)互斥

 

 

 

 

 

    BGP增强特性-BGP按组(对等体)

 

      BGP按组打包按组打包技术将所有拥有共同出口策略的BGP邻居当作是一个打包组。

 

      每条待发送路由只被打包一次然后发给组内的所有邻居。

 

 

 

 

 

 

 

 

BGP增强特性-4字节AS号概念

 

  4字节AS号·4字节AS号特性是将AS号的编码范围由2字节扩大为4字节协议扩展

 

  定义了一种新的Open能力码用于进行BGP连接的能力协南。

 

  2种新的可选过渡属性, AS4Path和AS4Aggregator属性。

 

  定义AS-TRANS (保留值为23456)用于衔接2字节AS和4字节AS。

 

 

 

 

 

  4字节A5号定义的角色

 

    New Speaker ;支4字节A5号扩展能力的对等体。

 

    Old Sneaker不支持4字节A5号扩展能力的对等体。

 

    New Session : New Speaker之间建文的BGP连接。

 

    Old Session : New Sppakon  old Speaker之间或者old Speaker之间建立的BGP连接。

 

 

 

  协议扩展

 

    定2种新的可选过渡性A54 Path (属性码为0x11 )和A54 Aggregator性(属性码为0x12)用于在oldSession上传 4字节AS信息。

 

    如果New Speaker和old Speaker建立连接,定义AS-TRANS (保留传为23456 )用于衔接2字节AS和4字节AS.

 

 

 

  拓扑描述

 

    R2收到R1的 条四字节AS的路由AS弓码为10.1 ;

 

    R2与R3建立邻居,需要令R3认为R2的AS号为AS-TRANS ;R2发送路由给R3的时候把AS-TRANS记录在AS-Path里面,把10.1与自己的AS号码20.1按照BGP要求的顺序记录在AS4 Path;

 

    R3对于不识别的愿性AS4 Path不作处母依然保留,它只按账BGP的规则来发送路由给R4。当然它认为R4的AS号码也是AS-TRANS :

 

    这样当R4收到从R3米的路由会把AS-TANS按照顶字米苔换为AS4 Path里所记录的相应的地址,在R4上把AS4_PATH属性还原为30 20.1 10.1。