BGP路由反射器原理及配置实例

今天给大家介绍一下BGP路由反射器的相关理论,同时在后面通过具体的配置实例,使大家了解BGP路由反射器的作用和配置方式。看懂本文,您需要对BGP相关理论知识有深入的了解,如果您对BGP基本知识还需要加强,欢迎查阅本博客其他文章,相信您一定会有收获。
在阅读本文章之前,强烈建议您先阅读这篇文章:一文看懂BGP路由黑洞问题。这篇文章与本文一以贯之,并且可以视为本文的基础篇章。

一、什么是BGP路由反射器

(一)BGP路由反射器简介
说到BGP路由反射器,就必须说一下BGP水平分割机制和路由黑洞问题。路由黑洞问题是在BGP配置中容易出现的问题,该问题会导致有部分中间路由器学不到路由从而使得数据包无法完成正常转发。而BGP水平分割机制本身是为了防止IBGP路由环路而定义的BGP路由传递规则。BGP水平分割机制规定,从IBGP学习到的路由,不会传递给其他的IBGP邻居。该机制对BGP路由配置造成了一定的麻烦,为了解决上述问题,BGP引入了反射器的概念。BGP反射器是BGP的一种特殊配置,在两个建立了IBGP邻居关系的路由器之间,一个路由器可以作为反射器指定其他路由器,被反射器指定的路由器可以称为该路由器的客户。一个反射器和他的所有客户我们将之定义为一个路由反射簇。对于BGP反射器而言,它有以下机制:
①如果路由反射器从自己的非客户邻居学习到一条IBGP路由,那么他会将这条路由传递给所有客户。
②如果路由反射器从自己的客户邻居学习到一条IBGP路由,那么他会将这条路由传递给除了传递给它路由的这个路由器之外的所有的IBGP邻居。
(二)BGP路由反射器放环
正是因为BGP反射器的上述两条机制,使得BGP在路由传递过程中,更加灵活,以路由黑洞问题解决为例,不用在所有的AS路由器之间建立IBGP邻居,从而使得配置更加简便。
但是,要注意的是,BGP路由反射器机制的引入本身是对BGP水平分割机制的破坏,而BGP水平分割机制本身是为了防止IBGP路由环路问题而引入的,在引入了BGP反射器之后,就必须采取其他的手段来防止IBGP路由环路。
在BGP路由反射器机制中,利用了Originator_ID和Cluster_ID两个可选非传递属性来防止环路。
当一个BGP路由反射器要反射一条路由时,它会首先检测该路由有没有Originator_ID属性,如果有,那么他就不做处理,如果没有,它就会加上自己的Router_ID。这样,如果该路由再次被自己收到,它就会发现该路由的Originator_ID属性有自己的Router_ID,这就说明这条路由本身是由自己发出去的,再从别的地方收到后就不会学习这条路由。
同时,当一个BGP路由反射器在反射一条路由时,也会检查路由的Cluster_ID信息,该信息路由反射器簇的ID信息,并且该属性是一个变长的属性。因此,BGP会将自己的Cluster_ID加入到路由属性中,当BGP反射器收到一条路由后,它也会检查该路由中的Cluster_ID信息,如果发现含有自己的Cluster_ID,就表示自己曾经学习过这条路由,但是又从别的地方传递了过来,因此他就不会再次学习这条路由了。
这样一来,通过上述两条属性,就解决了BGP反射器的路由路由环路问题了。

二、BGP路由反射器配置

下面我以下图为例,简单的介绍以下BGP路由反射器的配置。
(一)网络拓扑及要求
在这里插入图片描述
网络拓扑图如上所示,不同的背景颜色代表不同的AS域,黑色的线为EBGP关系,白色的线为IBGP关系。现在让R2为路由反射器,使得AS200和AS300可以相互传递路由,相互通信。
(二)配置简介
1、配置AS域
执行命令:

bgp 100

就表示将自己划为AS100,同时进入BGP配置视图。
2、配置BGP邻居
执行命令:

peer 151.1.1.1 as-number 100

可以指名自己的BGP邻居,peer后面的IP地址是BGP邻居的IP地址,在这里,没有特殊说明的话,是采取去往该邻居最近的接口IP地址。因此该路由器必须有BGP邻居的路由。后面的as-number跟着的数字表示邻居的AS号,此处必须和邻居实际所处的AS向对应,当AS号与本地AS号相同时,代表建立的是IBGP邻居,不同时,代表建立的是EBGP邻居。
3、配置路由反射器
执行命令:

peer 151.1.1.1 reflect-client

可以将自己设置为反射器,并指定对应IP地址的BGP邻居作为自己的客户。
(三)路由器R2代码附录

bgp 100
 peer 151.1.1.1 as-number 100 
 peer 151.1.2.6 as-number 100 
 peer 151.1.3.3 as-number 100 
 #
 ipv4-family unicast
  undo synchronization
  peer 151.1.1.1 enable
  peer 151.1.1.1 reflect-client
  peer 151.1.2.6 enable
  peer 151.1.2.6 reflect-client
  peer 151.1.3.3 enable
  peer 151.1.3.3 reflect-client
#

原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200/article/details/118557629

  • 18
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

永远是少年啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值