设为首页收藏本站language 语言切换
查看: 2392|回复: 5
收起左侧

[求助] IBGP获得的路由发布

[复制链接]
发表于 2016-3-26 15:36:09 | 显示全部楼层 |阅读模式
20鸿鹄币
BGP speaker 从IBGP获得的路由不向他的IBGP相邻体通告,那么也就是说相邻IBGP之间,比如A-B-C这样,A传给B的路由实际上只是A直连的路由,B传给C的路由也是B直连的路由,那么C就学习不到A的路由,是这样吗?如果是这样的话,那么如果C想要学习到A的路由的话,有什么办法?还有就是IBGP相邻体是怎么定义的,是指必须物理上相直连的路由器吗?如果是的话那么A和C之间的通信是否就只有IGP协议来跑了?还有一个问题,A-B-C-D,A是属于一个AS,B-C-D属于另一个AS,那么A传给B的路由,B会传给C,因为是属于从EBGP传过来的路由,但是C会不会传给D呢?请知道的告诉下,谢谢了

最佳答案

查看完整内容

从iBGP Peer学来的路由,不传给其他的iBGP Peer的。最初的时候,所有iBGP路由器之间需要做Neighbor关系,也就是Full Mesh。但是那样做得话太没效率了,所以就发明了RR(路由反射器)功能。所有iBGP路由器和RR做Neighbor,那样的话RR得到BGP路由以后把它转发给自己的下家,也就是Client。这样就可以互相学到路由了。
发表于 2016-3-26 15:36:10 | 显示全部楼层
从iBGP Peer学来的路由,不传给其他的iBGP Peer的。最初的时候,所有iBGP路由器之间需要做Neighbor关系,也就是Full Mesh。但是那样做得话太没效率了,所以就发明了RR(路由反射器)功能。所有iBGP路由器和RR做Neighbor,那样的话RR得到BGP路由以后把它转发给自己的下家,也就是Client。这样就可以互相学到路由了。
沙发 2016-3-26 15:36:10 回复 收起回复
回复

使用道具 举报

发表于 2016-3-26 15:53:07 | 显示全部楼层
iBGP通常使用Loopback接口做Neighbor。因为Loopback接口只要路由器活着就不会Down。使用Loopback接口时,IGP是主要用来互相传递Loopback接口的路由信息的。因为BGP使用TCP来发送数据包,所以不用直连。
板凳 2016-3-26 15:53:07 回复 收起回复
回复

使用道具 举报

发表于 2016-3-26 15:55:08 | 显示全部楼层
最后一个:C如果不是RR的话,是不会把从B得来的发给D的。
地板 2016-3-26 15:55:08 回复 收起回复
回复

使用道具 举报

发表于 2016-3-26 16:39:42 | 显示全部楼层
本帖最后由 abluesky 于 2016-3-26 17:12 编辑

相邻IBGP之间,比如A-B-C这样,A传给B的路由实际上只是A直连的路由,B传给C的路由也是B直连的路由,那么C就学习不到A的路由,是这样吗?

首先要弄清BGP和IGP的区别 直连路由是IGP之间相互传递的信息
iBGP通常通告从eBGP邻居学来的路由离开本AS的出口 要通过IGP进行递归查找下一跳

IBGP相邻体是怎么定义的,是指必须物理上相直连的路由器吗?

同一个AS里的BGP邻居是iBGP邻居 不同AS之间的BGP邻居是eBGP邻居
iBGP和eBGP都不需要是直连
iBGP只要在neighbor里指定的ip address 有路由可达 就可以建立起邻居(但两方都是默认路由不行)
因为bgp不会用默认路由主动发起TCP session
eBGP也是有一样 设eBGP多跳命令就可以建立邻居


A-B-C-D,A是属于一个AS,B-C-D属于另一个AS,那么A传给B的路由,B会传给C,因为是属于从EBGP传过来的路由,但是C会不会传给D呢?

因为iBGP的防环机制 边界的BGP路由器收到eBGP邻居的路由
只传给自己相连的iBGP邻居
也就是你问题中的
  eBGP          iBGP
A----------- B-C-D

A发给B的路由 B会传给C 但是C不会因为是eBGP传过来的路由而传给D (除非你设了route reflector)
因此为了解决这个问题 就要iBGP邻居建立full mesh 在本例中也就是让
B-C B-D也建iBGP邻居才可以保证每个iBGP邻居都可以相互学到BGP路由
但是那样会浪费硬件资源 所以有了BGP confederation 和 route reflector两种解决iBGP路由和全互联的问题
在现网中多用route reflector




5# 2016-3-26 16:39:42 回复 收起回复
回复

使用道具 举报

发表于 2016-3-26 19:51:59 | 显示全部楼层
我是这样理解的 1、IBGP的防环机制规定IBGP的路由只会传递一跳,C想学到A的路由,现在流行的是MPLS。2、物理直连只是解决C学到A的路由的一种方法,但不实际,而使用了MPLS就不必物理直连了。另外你后面说的用AC之间运行IGP,那会在数据层面形成路由黑洞,不懂看书3、BCD都运行IBGP的话,B传给C其实是按IBGP的规则在传,用MPLS 解决C不会不会传给D的问题,其实又是第一个问题了。
6# 2016-3-26 19:51:59 回复 收起回复
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-5-25 19:59 , Processed in 0.110386 second(s), 24 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表