思科Cisco BGP 专题 (四)BGP选路原则和路由反射器

思科Cisco BGP 专题 (四)选路原则和路由反射器

前章回顾

我们先对上节BGP专题进行回顾,具体详细内容可查看BGP专题(三)
上节主要讲解了BGP选路原则的前六条,分别是:

1.prefer highest weight (local to router). //优选weight属性高的,cisco私有属性

2.prefer highest local preference (global within AS ). //优选本地优先级高的

3.prefer route originated by the local router (next hop =0.0.0.0) //更相信自己network 的路由,下一跳为0.0.0.0

4.prefer shortest AS path. //更优选AS-PATH数量短的路由

5.prefer lowest origin code (IGP<EGP<incomplete) //比较路由起源,优选起源值更小的路由,默认为i<e<?。也就是说i的起源最小,如果有两条一样的路由条目来自两个方向,一个起源为i,一个起源为?,那么将优选i的路由

6.Prefer lowest MED (exchanged between autonomous systems). //优选 MED值更小的路由

本章概述

这个专题我们介绍BGP选路原则的后七条和BGP的路由反射器。

1、Prefer EBGP path over IBGP path. //EBGP的路由优于IBGP的路由 。(第七条)

2、Prefer the path through the closest IGP neighbor. //如果以上的条件都相同,那么将优选从离我最近的IGP邻居学过来的路由,比较所起IGP协议的度量值metric值,metric越小越优。 (第八条)

3、手动配置(可以不配置):如果配置了maximum-path [ibgp] number,如果存在多条等价的路径,会插入多条路径。(第九条)

注意这条,如果是同一个IBGP内的,如要在maximum-path后边加上IBGP,再有就是maximum-path对从EBGP邻居的EBGP邻居那传来的路由是无法等价负载均衡的

4、Prefer oldest route for EBGP paths. //从更老的EBGP邻居学过来的路由,因为EBGP邻居建立时间越久,说明越稳定。(第十条)

5、Prefer the path with the lowest neighbor BGP router ID. //查看BGP的router-id,优选于更小的router-id的BGP路由器传过来的路由。(第十一条)

6、手动配置RR(可以不配置):优选于更短的cluster-list,因为每经过一个RR ,cluster- list都会加上这个RR的router-id。(第十二条)

7、Prefer the path with the lowest neighbor IP address. //比较 neighbor的地址,越小的neighbor的地址的BGP路由器传过来的路由越优,如果是环回口,则看环回口地址的高低。(第十三条)

8、BGP路由反射器,简称RR。

下面我们进行详细介绍。

第七条 EBGP的路由优于IBGP的路由 。 //Prefer EBGP path over IBGP path.

实验环境:
R1和R2的AS号为100,R3的AS号为200。R4的as号为300,彼此之间运行BGP协议。
R1和R2之间的网段为10.1.1.0/24,R2和R3之间的网段为20.1.1.0/24。R4和R1之间的网段为40.1.1.1/24。
R4和R3上启环回口loop0,IP地址均为1.1.1.1/32,并宣告进BGP。
通过route-map将前六条属性值设为相同值。

实验拓扑:
在这里插入图片描述
具体配置方法不再列出,可回顾前章内容查看。

根据实验描述,我们可以判断,R2上会收到两条去往1.1.1.1的BGP条目。
通过route-map来修改权重值,本地优先级值,as-path值,起源值,med值相同。
所以此时选路时。EBGP传来的条目会优于IBGP的条目。

我们在R2上show ip bgp 进行验证:
在这里插入图片描述

第八条 如果以上的条件都相同,那么将优选从离我最近的IGP邻居学过来的路由,比较所起IGP协议的度量值metric值,metric越小越优。 Prefer the path through the closest IGP neighbor.

BGP选路时,默认不参考带宽。然而第八条选路原则参考igp的metric值,实际上是变相的参考了带宽。

第九条 如果配置了maximum-path [ibgp] number,如果存在多条等价的路径,会插入多条路径

注意这条,如果是同一个IBGP内的,如要在maximum-path后边加上IBGP,再有就是maximum-path对从EBGP邻居的EBGP邻居那传来的路由是无法等价负载均衡的
我们来实验说明一下:
实验环境:
R1和R2之间的网段为10.1.1.0/24,R2和R3之间的网段为20.1.1.0/24
R1、R2、R3的AS号均为100,分别启环回口loop0,地址分别是1.1.1.1/32-3.3.3.3/32
R1、R2、R3之间底层运行EIGRP协议,保证底层互通,并将loop0宣告进eigrp
R1、R2、R3之间使用loop0端口建立BGP邻居
R1和R3上分别启环回口loop1,使用地址10.10.10.10,并宣告进BGP

拓扑图:
在这里插入图片描述

根据环境需求配置完成后,我看一下BGP路由表, show ip route bgp
会看到去往10.10.10.10只有一个条目。
在这里插入图片描述我们在BGP进程下敲入命令 maximum-path [ibgp] number(number 代表负责均衡的最大条目)范围是1-16。
在这里插入图片描述
然后继续在R2上查看BGP路由表,show ip route bgp
发现去往10.10.10.10有两个条目,实现了BGP的负责均衡
在这里插入图片描述

第十条 从更老的EBGP邻居学过来 的路由,因为EBGP邻居建立时间越久,说明越稳定

此条为自动选路,不再做试验验证。

第十一条 查看BGP的router-id,优选于更小的router-id的BGP路由器传过来的路由

默认route-id为本地最大环回口的IP。如果没有环回口,则为最大的端口IP。
也可以手动配置,实际工作中,基本都是手动配置。

实验验证:实验环境与拓扑与第九条的相同。

配置完成后,我们看一下R2的BGP表
可以看到去往10.10.10.10的下一跳为1.1.1.1
在这里插入图片描述现在我们修改R1的bgp route-id,来更改BGP的选路。
我们将R1的route-id改大。
在这里插入图片描述
再来看R2的BPG表
发现去往10.10.10.10的下一跳变为了route-id更小的R3.
在这里插入图片描述

第十二条 优选于更短的cluster-list,因为每经过一个RR ,cluster- list都会加上这个RR的router-id。

因为十二条中,谈到了RR。我们在讲完RR后再讲解第十二条。

第十三条 比较 neighbor的地址,越小的neighbor的地址的BGP路由器传过来的路由越优,如果是环回口,则看环回口地址的高低。

自动选路原则,不做实验验证。

路由反射器 RR(route-reflector-client)

在之前的IBGP的防环机制中我们提到。在IBGP环境中,从一个iBGP的邻居收到的条目,不会传递给下一个IBGP邻居。(水平分割机制)

但是在实际工作中的拓扑环境可能是如下图:
那么此时R2收到R1传来的条目,就不会传给R3。如果我们需要R3也要收到R1的条目,就需要用到路由反射器。
路由反射器直白的讲,就是R2作为R1的反射器客户端,将R1的条目反射给R3。同时R3上产生的条目,也会回传给R1。
在这里插入图片描述
下面我们用此拓扑进行实验验证:
实验环境:
R1和R2之间的网段为10.1.1.1/24,R2和R之间的网段为20.1.1.1/24
分别在R1、R2、R3上起环回口loop0,IP地址为1.1.1.1/32-3.3.3.3/24
R1上起环回口loop1,地址为10.10.10.10/32
底层运行ospf协议,route-id使用环回口loop0的地址。区域均为area 0,并将环回口loop0宣告进ospf
R1、R2、R3之间运行bgp协议,使用环回口loop0建立邻居
R1、R2、R3的AS号为100,并将loop1宣告进bgp

具体配置不再详细列出
配置完成后,我们在R2上查看一下bgp表:
可以看到收到了来自R1的bgp条目
在这里插入图片描述再看一下R3的BGP表:
发现R3的BGP表为空白。因为水平分割原则,R2从R1收到的条目,不会再传给R3。
此时如果我们需要R3也要收到R1的条目。
则需要在R2的BPG进程下,配置 neighbor 1.1.1.1 route-reflector-client 这条命令
在这里插入图片描述
配置完成后,我们再来查看R3的BGP表:
会发现R3收到了R1的条目
在这里插入图片描述
下面我们对RR的知识点进行拓展
首先我们对上面的拓扑在原有的基础上进行一下增加:
有同学会问到,此种拓扑使用了RR,会不会导致路由环路。
下面我们用此拓扑进行介绍
在这里插入图片描述实验环境:
在上面实验的环境基础上

R3和R4之间使用网段30.1.1.1/24,R1和R4之间使用网段40.1.1.1/24
R4上起环回端口loop0,地址为4.4.4.4
R4上起ospf协议,区域area 0,将loop0宣告进ospf
R4上起BGP协议,AS号为100,使用loop0接口与R1和R3建立IBGP邻居

在上面的实验基础上,我们查看一下R4 bgp表,
发现BGP表收到来自R1的条目,但是因为水平分割原则,收不到通过R3传来的R1的条目。
在这里插入图片描述我们继续在R3上进行配置,将R3作为R2的路由反射器客户端
然后在R4上查看bgp表
发现R4有两个去往10.10.10.10的条目
其中一个来自直连的R1,另一个来自R3方向
在这里插入图片描述
那么在R4上继续做R3的反 射器客户端,10.10.10.10的条目会继续传给R1吗?
我们的答案是 不会的。
因为RR中有两个参数 一个路由起源参数,一个条目所经过的RR反射器的rid的参数,这两个参数起到防环的作用
我们在R4上 show ip bgp RR 查看 ,来进行验证
在这里插入图片描述origin为路由起源的ID,cluster为条目到达R4所经过的路由反射器的ID

当R1发现来自R4条目中 路由起源id为自己,条目将被拒收。或者当设备发现收到的条目的 cluster id中有自己,条目也会被拒收。

此时我们介绍完RR,再回过头来看路由选路原则的第十二条

第十二条 优选于更短的cluster-list,因为每经过一个RR ,cluster- list都会加上这个RR的router-id

所以在R4上的两个去往10.10.10.10的路径中,会优选于直连的来自R1的方向。

到这我们的BGP13条选路原则,和路由反射器RR已经全部介绍完完毕
我们将在BGP的下一个专题中介绍 BGP的对等体组、BGP的路由汇总、BGP的联邦和BGP的团体属性。
有感兴趣的朋友,可以关注我。有问题可以私信交流。

  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值