非直连IBGP邻居路由更新的解决办法(一)-------路由反射器

如上图所示,R1/R2/R3在同一个IBGP内,这种情况下,路由更新,从IBGP邻居学习的路由不会被传递给其他的IBGP邻居。这样的解决办法有三种:

1、IBGP完全互连

2、路由反射器 (Route Reflector)

3、联盟

案例一、非直连邻居通过路由反射器(直连邻居省略)

R1配置信息:

interface Loopback10

ip address 10.1.1.1 255.255.255.0

!

interface Loopback100

ip address 100.1.1.1 255.255.255.0

!

interface FastEthernet0/0

ip address 1.1.1.1 255.255.255.0

duplex auto

speed auto

router bgp 100

no synchronization

bgp log-neighbor-changes

network 10.1.1.0 mask 255.255.255.0

network 100.1.1.0 mask 255.255.255.0

neighbor 20.1.1.1 remote-as 100

neighbor 20.1.1.1 update-source loopback 10

no auto-summary

!

ip route 20.1.1.0 255.255.255.0 1.1.1.2

R2配置信息:

interface Loopback20

ip address 20.1.1.1 255.255.255.0

!

interface FastEthernet0/0

ip address 1.1.1.2 255.255.255.0

duplex auto

speed auto

!

interface FastEthernet0/1

ip address 2.2.2.2 255.255.255.0

duplex auto

speed auto

!

router bgp 100

no synchronization

bgp log-neighbor-changes

network 1.1.1.0 mask 255.255.255.0

network 2.2.2.0 mask 255.255.255.0

network 20.1.1.0 mask 255.255.255.0

neighbor 2.2.2.3 remote-as 100

neighbor 2.2.2.3 route-reflector-client

neighbor 10.1.1.1 remote-as 100

neighbor 10.1.1.1 update-source Loopback20

neighbor 10.1.1.1 route-reflector-client

no auto-summary

!

ip classless

ip route 10.1.1.0 255.255.255.0 1.1.1.1

R3配置信息:

interface Loopback30

ip address 30.1.1.1 255.255.255.0

!

interface FastEthernet0/1

ip address 2.2.2.3 255.255.255.0

duplex auto

speed auto

!

router bgp 100

no synchronization

bgp log-neighbor-changes

network 30.1.1.0 mask 255.255.255.0

neighbor 2.2.2.2 remote-as 100

no auto-summary

查看R1的路由信息:

R1#show ip route

*Mar 14 08:16:33.956: %SYS-5-CONFIG_I: Configured from console by console

R1#show ip route

Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP

D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

E1 - OSPF external type 1, E2 - OSPF external type 2

i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2

ia - IS-IS inter area, * - candidate default, U - per-user static route

o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

1.0.0.0/24 is subnetted, 1 subnets

C       1.1.1.0 is directly connected, FastEthernet0/0

2.0.0.0/24 is subnetted, 1 subnets

B       2.2.2.0 [200/0] via 20.1.1.1, 02:47:19

100.0.0.0/24 is subnetted, 1 subnets

C       100.1.1.0 is directly connected, Loopback100

20.0.0.0/24 is subnetted, 1 subnets

S       20.1.1.0 [1/0] via 1.1.1.2

10.0.0.0/24 is subnetted, 1 subnets

C       10.1.1.0 is directly connected, Loopback10

30.0.0.0/24 is subnetted, 1 subnets

B       30.1.1.0 [200/0] via 2.2.2.3, 02:42:23

R1#show ip bgp

BGP table version is 50, local router ID is 100.1.1.1

Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,

r RIB-failure, S Stale

Origin codes: i - IGP, e - EGP, ? - incomplete

Network          Next Hop            Metric LocPrf Weight Path

r>i1.1.1.0/24       20.1.1.1                 0    100      0 i

*>i2.2.2.0/24       20.1.1.1                 0    100      0 i

*> 10.1.1.0/24      0.0.0.0                  0         32768 i

r>i20.1.1.0/24      20.1.1.1                 0    100      0 i

*>i30.1.1.0/24      2.2.2.3                  0    100      0 i

*> 100.1.1.0/24     0.0.0.0                  0         32768 i

R2的路由信息:

R2#show ip bgp

BGP table version is 8, local router ID is 20.1.1.1

Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,

r RIB-failure, S Stale

Origin codes: i - IGP, e - EGP, ? - incomplete

Network          Next Hop            Metric LocPrf Weight Path

*> 1.1.1.0/24       0.0.0.0                  0         32768 i

*> 2.2.2.0/24       0.0.0.0                  0         32768 i

r>i10.1.1.0/24      10.1.1.1                 0    100      0 i

*> 20.1.1.0/24      0.0.0.0                  0         32768 i

*>i30.1.1.0/24      2.2.2.3                  0    100      0 i

*>i100.1.1.0/24     10.1.1.1                 0    100      0 i

R2#show ip route

Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP

D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

E1 - OSPF external type 1, E2 - OSPF external type 2

i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2

ia - IS-IS inter area, * - candidate default, U - per-user static route

o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

1.0.0.0/24 is subnetted, 1 subnets

C       1.1.1.0 is directly connected, FastEthernet0/0

2.0.0.0/24 is subnetted, 1 subnets

C       2.2.2.0 is directly connected, FastEthernet0/1

100.0.0.0/24 is subnetted, 1 subnets

B       100.1.1.0 [200/0] via 10.1.1.1, 00:01:57

20.0.0.0/24 is subnetted, 1 subnets

C       20.1.1.0 is directly connected, Loopback20

10.0.0.0/24 is subnetted, 1 subnets

S       10.1.1.0 [1/0] via 1.1.1.1

30.0.0.0/24 is subnetted, 1 subnets

B       30.1.1.0 [200/0] via 2.2.2.3, 00:01:50

R2#show ip bgp 100.1.1.0

BGP routing table entry for 100.1.1.0/24, version 6

Paths: (1 available, best #1, table Default-IP-Routing-Table)

Advertised to non peer-group peers:

2.2.2.3           -----表示把100.1.1.0/24的路由发布给IBGP邻居2.2.2.3

Local, (Received from a RR-client)

10.1.1.1 from 10.1.1.1 (100.1.1.1)

Origin IGP, metric 0, localpref 100, valid, internal, best

R3的路由信息:

R3#show ip bgp

BGP table version is 6, local router ID is 30.1.1.1

Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,

r RIB-failure, S Stale

Origin codes: i - IGP, e - EGP, ? - incomplete

Network          Next Hop            Metric LocPrf Weight Path

*>i1.1.1.0/24       2.2.2.2                  0    100      0 i

r>i2.2.2.0/24       2.2.2.2                  0    100      0 i

* i10.1.1.0/24      10.1.1.1                 0    100      0 i

*>i20.1.1.0/24      2.2.2.2                  0    100      0 i

*> 30.1.1.0/24      0.0.0.0                  0         32768 i

* i100.1.1.0/24     10.1.1.1                 0    100      0 i

R3#show ip route

Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP

D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

E1 - OSPF external type 1, E2 - OSPF external type 2

i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2

ia - IS-IS inter area, * - candidate default, U - per-user static route

o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

1.0.0.0/24 is subnetted, 1 subnets

B       1.1.1.0 [200/0] via 2.2.2.2, 00:03:03

2.0.0.0/24 is subnetted, 1 subnets

C       2.2.2.0 is directly connected, FastEthernet0/1

20.0.0.0/24 is subnetted, 1 subnets

B       20.1.1.0 [200/0] via 2.2.2.2, 00:03:03

30.0.0.0/24 is subnetted, 1 subnets

C       30.1.1.0 is directly connected, Loopback30

可以看到R1上通告的100.1.1.0/24和10.1.1.0/24 网段路由虽然通过BGP学习成功,但是在路由加载的时候添加路由失败,R3上未学习到next hop。

因为在路由同步的规则当中,需要把IGP的路由必须同步到IBGP,如果不能同步就会造成路由黑洞。因此需要在R2上把静态路由重分布

在R2上配置信息:

router bgp 100

no synchronization

bgp log-neighbor-changes

network 1.1.1.0 mask 255.255.255.0

network 2.2.2.0 mask 255.255.255.0

network 20.1.1.0 mask 255.255.255.0

redistribute static metric 10

neighbor 2.2.2.3 remote-as 100

neighbor 2.2.2.3 route-reflector-client

neighbor 10.1.1.1 remote-as 100

neighbor 10.1.1.1 update-source Loopback20

neighbor 10.1.1.1 route-reflector-client

no auto-summary

R3的路由信息:

R3#show ip route

Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP

D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

E1 - OSPF external type 1, E2 - OSPF external type 2

i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2

ia - IS-IS inter area, * - candidate default, U - per-user static route

o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

1.0.0.0/24 is subnetted, 1 subnets

B       1.1.1.0 [200/0] via 2.2.2.2, 00:12:08

2.0.0.0/24 is subnetted, 1 subnets

C       2.2.2.0 is directly connected, FastEthernet0/1

100.0.0.0/24 is subnetted, 1 subnets

B       100.1.1.0 [200/0] via 10.1.1.1, 00:00:01

20.0.0.0/24 is subnetted, 1 subnets

B       20.1.1.0 [200/0] via 2.2.2.2, 00:12:08

10.0.0.0/24 is subnetted, 1 subnets

B       10.1.1.0 [200/10] via 1.1.1.1, 00:00:11

30.0.0.0/24 is subnetted, 1 subnets

C       30.1.1.0 is directly connected, Loopback30

R3#show ip bgp

BGP table version is 8, local router ID is 30.1.1.1

Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,

r RIB-failure, S Stale

Origin codes: i - IGP, e - EGP, ? - incomplete

Network          Next Hop            Metric LocPrf Weight Path

*>i1.1.1.0/24       2.2.2.2                  0    100      0 i

r>i2.2.2.0/24       2.2.2.2                  0    100      0 i

*>i10.1.1.0/24      1.1.1.1                 10    100      0 ?

*>i20.1.1.0/24      2.2.2.2                  0    100      0 i

*> 30.1.1.0/24      0.0.0.0                  0         32768 i

*>i100.1.1.0/24     10.1.1.1                 0    100      0 i

在IGP路由同步到IBGP中之后,IBGP邻居就能够正常通过RR学习到相应的路由信息。

初次了解学习BGP,可能理解或解释的不够准确详细,望各位看官见谅!欢迎一起交流探讨~~~

时间: 03-13

非直连IBGP邻居路由更新的解决办法(一)-------路由反射器的相关文章

thinkphp 的save()不能更新数据解决办法

用save()方法始终更新不了数据,又不显示明确的错误信息,找了好久才在手册里看到一句至关重要的话: 为了保证数据库的安全,避免出错更新整个数据表,如果没有任何更新条件,数据对象本身也不包含主键字段的话,save方法不会更新任何数据库的记录. 因此在使用create自动更新数据时,要在表单添加一个隐藏域,其值为数据表的id值! thinkphp 的save()不能更新数据解决办法,布布扣,bubuko.com

Android SDK和ADT无法更新的解决办法

1.SDK更新问题 [SDK Manager] 1.打开 Android SDK Manager中的 Tools -> Options... 2.按照下图进行设置.设置完成后,重新打开Android SDK Manager后即可进行SDK更新下载. 2.ADT更新问题 1.打开你电脑上的host文件 进入你电脑上的这个目录 C:\Windows\System32\drivers\etc 打开 hosts 文件 2.把下面的内容复制到 hosts 文件的最后. #ADT 更新的内容从以下地址下载1

【原创】Ionic单页应用跳转外链,构造路由返回的解决办法及代码

在开发客户微信企业号的填单审批webApp的时候出现了一个问题: 单据是带有附件的,而且存在各种不同的格式,需要后台处理后给前台链接地址,点击预览,微信浏览器的特性就是只能存在一个浏览器窗口, 这导致了如果我们的webApp应用跳转到外链(比如百度,不在应用的路由中)之后,在点击微信浏览器的返回后,因为没有路由,导致的无法返回之前的路径. 解决思路: 1.在跳转外链之前,先将之前的state历史保存到localStorage   ==> 1 var storage = window. local

android studio 更新失败解决办法

在andriod studio目录下找到studio.exe.vmoptions这个文件,用记事本打开,在后面加上 -Djava.net.preferIPv4Stack=true -Didea.updates.url=http://dl.google.com/android/studio/patches/updates.xml -Didea.patches.url=http://dl.google.com/android/studio/patches/ 如果是64位,则修改studio64.ex

Android sdk更新失败解决办法

Android SDK Manager - Settings窗口在HTTP Proxy Server和HTTP Proxy Port输入mirrors.neusoft.edu.cn和80, 并且选中Force https://... sources to be fetched using http://... 设置完成后单击「Close」按钮关闭OK 网上说还要加host,我没有加,速度也挺快480kb/s

quagga源码学习--BGP协议路由更新

BGP的核心就是交换路由,所以关键的部分还是在路由的更新与撤销上面,这之间包含了冗长的属性,community等等处理过程,不做详述. bgp_read函数是路由更新的事件处理函数,在收到BGP_MSG_UPDATE消息的时候开始调用bgp_update_receive函数处理. 1 switch (i) { 2 case NLRI_UPDATE: 3 case NLRI_MP_UPDATE: 4 nlri_ret = bgp_nlri_parse(peer, NLRI_ATTR_ARG, &n

OSPF组播路由更新lsa

一.当ospf邻接关系建立完成后,DR与所有设备为full,BDR与所有设备为full,DRother之间为2-way(DR与BDR也是full). 当ospf路由更新,DR/BDR监听224.0.0.5和224.0.0.6. DRothe监听224.0.0.5. 当DRother路由有更新时,DR/BDR均会收到,但由DR发洪泛给所有设备. 以下实验所有更新为"新发布路由". 二.拓扑信息 1.当DRother路由更新时,以组播方式发送给224.0.0.6(也就是DR/BDR),因为

又来了,SDE非直连

现在sde都推荐直连了,没想到还是遇到了非直连. 用10.1默认是直连,但还支持非直连. 安装半天始终无法启动.系统差点崩了. 原来是sde用户密码过期锁定了,好烦. C:\Program Files\ArcGIS\ArcSDE\ora11gexe\etc\sde_esri_sde.log 报错如下: ------------------------------------------------------- ArcSDE 10.1 for Oracle11g Build 679 Thu Ap

RIPV1路由更新 同一路由器接口子网掩码不一样(两个接口属于同一个主类路由)的路由通告

路由器的接口收到一条路由更新,查看这条路路由条目是和本接口的路由是不是属于同一个主类网络若是同一个诸主类网络,则用本地接 实验拓扑: 口的子网掩码作为学到的路由条目的子网掩码,如果学到的路由条目和本地接口的路由不是属于同一个主类网络的话.则判断学到的那条路由是属于哪一个主类路由A<B C 类 属于A则用A类的子网掩码作为该条路由的子网掩码 实验现象分析: 查看R4的路由表: 问题:  R4为什么没有学到172.16.2.0/24 和 172.16.1.0/24的网络呢? 原因:观察R3 的两个接