首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >运行不带IGP的iBGP

运行不带IGP的iBGP
EN

Network Engineering用户
提问于 2019-04-16 17:37:24
回答 2查看 866关注 0票数 2

给出了以下设置:

路由器的配置非常直接。路由器BGP1:

代码语言:javascript
复制
interface Loopback0
 ip address 1.1.1.1 255.255.255.255
!
interface Loopback9
 ip address 9.9.9.9 255.255.255.255
!
interface GigabitEthernet0/1
 ip address 10.0.0.1 255.255.255.0
!
router bgp 1
 bgp log-neighbor-changes
 redistribute connected
 neighbor 10.0.0.2 remote-as 1
 neighbor 10.0.0.2 next-hop-self

路由器BGP2:

代码语言:javascript
复制
interface Loopback0
 ip address 2.2.2.2 255.255.255.255
!
interface GigabitEthernet0/1
 ip address 10.0.0.2 255.255.255.0
!
interface GigabitEthernet0/3
 ip address 20.0.0.1 255.255.255.0
!
router bgp 1
 bgp log-neighbor-changes
 redistribute connected
 neighbor 10.0.0.1 remote-as 1
 neighbor 10.0.0.1 next-hop-self
 neighbor 20.0.0.2 remote-as 1
 neighbor 20.0.0.2 next-hop-self

路由器BGP3:

代码语言:javascript
复制
interface Loopback0
 ip address 3.3.3.3 255.255.255.255
!
interface GigabitEthernet0/3
 ip address 20.0.0.2 255.255.255.0
!
router bgp 1
 bgp log-neighbor-changes
 redistribute connected
 neighbor 20.0.0.1 remote-as 1
 neighbor 20.0.0.1 next-hop-self

因此,我将接口loopback9添加到路由器BGP1中,以查看是否跨越了BGP3。但事实并非如此。我可以看到从BGP2到BGP1的路线:

代码语言:javascript
复制
BGP2#show ip route bgp | begin 1.0
      1.0.0.0/32 is subnetted, 1 subnets
B        1.1.1.1 [200/0] via 10.0.0.1, 00:10:07
      3.0.0.0/32 is subnetted, 1 subnets
B        3.3.3.3 [200/0] via 20.0.0.2, 00:10:07
      9.0.0.0/32 is subnetted, 1 subnets
B        9.9.9.9 [200/0] via 10.0.0.1, 00:10:07

但是,这并没有被发布给路由器BGP3:

代码语言:javascript
复制
BGP2#show ip bgp neighbors 20.0.0.2 advertised-routes | begin Networ
     Network          Next Hop            Metric LocPrf Weight Path
 *>  2.2.2.2/32       0.0.0.0                  0         32768 ?
 *>  10.0.0.0/24      0.0.0.0                  0         32768 ?
 *>  20.0.0.0/24      0.0.0.0                  0         32768 ?

IGP同步在所有设备上都是禁用的:

代码语言:javascript
复制
BGP2# show ip protocols | include synch
  IGP synchronization is disabled

那我该怎么解决呢?我知道您应该在BGP下运行一个IGP,但是让我们假设这在这个场景中是不可能的。我有什么选择?

EN

回答 2

Network Engineering用户

回答已采纳

发布于 2019-04-16 17:46:32

iBGP规则是,iBGP路由器不能从iBGP邻居处学习iBGP起始前缀。如果BGP2通过iBGP从BGP1或BGP3中学习前缀,它就不能向另一个路由器宣传该前缀。

您必须为iBGP提供一个完整的网格,或者可以使用缓解(路由反射器或联盟)。您可以在BGP1和BGP3之间创建一个隧道来创建一个完整的网格。您还可以将BGP2配置为路由反射器。

票数 5
EN

Network Engineering用户

发布于 2019-05-15 07:24:28

罗恩·莫平在这方面是正确的。您所拥有的是iBGP对等点的部分网格。

iBGP的行为是,当路由器发布到iBGP对等点的路由广告时,iBGP对等方不会向另一个IBGP对等方发布相同的前缀。

解决这一问题的两个办法是:

创建一个完整的iBGP对等点网格

将BGP路由重新分发到IGP中(在iBGP对等点上启用BGP同步)

票数 1
EN
页面原文内容由Network Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://networkengineering.stackexchange.com/questions/58527

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档