探究RIPEIGPBGP的第三方下一跳.docx
- 文档编号:30109472
- 上传时间:2023-08-05
- 格式:DOCX
- 页数:11
- 大小:177.86KB
探究RIPEIGPBGP的第三方下一跳.docx
《探究RIPEIGPBGP的第三方下一跳.docx》由会员分享,可在线阅读,更多相关《探究RIPEIGPBGP的第三方下一跳.docx(11页珍藏版)》请在冰豆网上搜索。
探究RIPEIGPBGP的第三方下一跳
距离矢量路由协议,其特点是以讹传讹,通俗一点就是别人告诉我什么,我就信什么,这些路由的下一跳就是告知它的邻居路由器,但是有时可以跨越一个路由器去更新路由,出现第三方下一跳.
先来看简单路由协议,即RIP的第三方下一跳。
如下拓扑图:
R1,R2,R3通过交换机SW,在同一个广播域。
基本配置:
R1:
interfaceLoopback0
ipaddress1.1.1.1255.255.255.0
interfaceFastEthernet0/0
ipaddress123.1.1.1255.255.255.0
routerrip
version2
network1.0.0.0
network123.0.0.0
noauto-summary
R2:
interfaceLoopback0
ipaddress2.2.2.2255.255.255.0
interfaceFastEthernet0/0
ipaddress123.1.1.2255.255.255.0
routerrip
version2
network2.0.0.0
network123.0.0.0
noauto-summary
R3:
interfaceLoopback0
ipaddress3.3.3.3255.255.255.0
interfaceFastEthernet0/0
ipaddress123.1.1.3255.255.255.0
routerrip
version2
network3.0.0.0
network34.0.0.0
network123.0.0.0
noauto-summary
R4:
interfaceLoopback0
ipaddress4.4.4.4255.255.255.0
interfaceSerial1/0
ipaddress34.1.1.4255.255.255.0
routerrip
version2
network4.0.0.0
network34.0.0.0
noauto-summary
分别在R1,R2,R3,R4起用RIP协议,都可以学到路由。
这时,我们把R3的f0/0设置为passive-interface(当接口设置为被动接口后只能接收路由,不能发送路由)。
R1和R2都学不到R4的路由,在R3上通过单播把自己的路由给R2,这样R2就学到了R4的路由,在R3上进程下—neighbor123.1.1.2,此时,R2并不会把自己的路由表传给R1,因为R2的f0/0起用了水平分割,但是将f0/0水平分割关掉以后(接口下:
noipsplit-horizon),R1从R2学到的R4的路由表的的下一跳却是R3的f0/0的地址,跨越了R2,出现第三方下一跳,查看R1的路由表:
R 34.1.1.0[120/2]via123.1.1.3,00:
00:
23,FastEthernet0/0
1.0.0.0/24issubnetted,1subnets
C 1.1.1.0isdirectlyconnected,Loopback0
2.0.0.0/24issubnetted,1subnets
R 2.2.2.0[120/1]via123.1.1.2,00:
00:
23,FastEthernet0/0
3.0.0.0/24issubnetted,1subnets
R 3.3.3.0[120/2]via123.1.1.3,00:
00:
23,FastEthernet0/0
4.0.0.0/24issubnetted,1subnets
R 4.4.4.0[120/3]via123.1.1.3,00:
00:
23,FastEthernet0/0
123.0.0.0/24issubnetted,1subnets
C 123.1.1.0isdirectlyconnected,FastEthernet0/0
然后我们再来看看,EIGRP,它是高级距离路由矢量协议,也具有距离矢量的特性,OK,让我们来看看有没有EIGRP的第三方下一跳,还是上面的拓扑图,全网运行EIGRP协议,具体配置如下:
R1:
interfaceLoopback0
ipaddress1.1.1.1255.255.255.0
interfaceFastEthernet0/0
ipaddress123.1.1.1255.255.255.0
routereigrp90
network1.1.1.00.0.0.255
network123.1.1.00.0.0.255
noauto-summary
neighbor123.1.1.2FastEthernet0/0
R2:
interfaceLoopback0
ipaddress2.2.2.2255.255.255.0
interfaceFastEthernet0/0
ipaddress123.1.1.2255.255.255.0
noipsplit-horizoneigrp90
routereigrp90
network2.2.2.00.0.0.255
network123.1.1.00.0.0.255
noauto-summary
neighbor123.1.1.1FastEthernet0/0
neighbor123.1.1.3FastEthernet0/0
R3:
interfaceLoopback0
ipaddress3.3.3.3255.255.255.0
interfaceFastEthernet0/0
ipaddress123.1.1.3255.255.255.0
interfaceSerial1/0
ipaddress34.1.1.3255.255.255.0
routereigrp90
network3.3.3.00.0.0.255
network34.1.1.00.0.0.255
network123.1.1.00.0.0.255
noauto-summary
neighbor123.1.1.2FastEthernet0/0
R4:
interfaceLoopback0
ipaddress4.4.4.4255.255.255.0
interfaceSerial1/0
ipaddress34.1.1.4255.255.255.0
routereigrp90
network4.4.4.00.0.0.255
network34.1.1.00.0.0.255
noauto-summary
这里面有几个注意点,在EIGRP路由协议下,当R3的f0/0接口设置为passive-interface后,该接口既不发送路由,也不接收路由,因此,R3与R1,R2就建立不了邻居关系,只能通过双向指定邻居建立R2和R3关系,尤其注意的是指定完R2和R3邻居后,R1与R2失去了邻居关系,必须重新手工指定.同时关闭R2f0/0接口的水平分割(这里关闭的命令与RIP不同)noipsplit-horizoneigrp90。
好了,现在让我们看看R1的路由表:
34.0.0.0/24issubnetted,1subnets
D 34.1.1.0[90/2174976]via123.1.1.2,00:
35:
04,FastEthernet0/0
1.0.0.0/24issubnetted,1subnets
C 1.1.1.0isdirectlyconnected,Loopback0
2.0.0.0/24issubnetted,1subnets
D 2.2.2.0[90/156160]via123.1.1.2,00:
37:
38,FastEthernet0/0
3.0.0.0/24issubnetted,1subnets
D 3.3.3.0[90/158720]via123.1.1.2,00:
35:
04,FastEthernet0/0
4.0.0.0/24issubnetted,1subnets
D 4.4.4.0[90/2302976]via123.1.1.2,00:
35:
04,FastEthernet0/0
123.0.0.0/24issubnetted,1subnets
C 123.1.1.0isdirectlyconnected,FastEthernet0/0
通过R1的路由表,并没有出现我们期待的R1跨越R2学习到R3的路由,结论—EIGPR并没有第三方下一跳或者说EIGRP的第三方下一跳地址是默认关闭的。
接下来,我们再来看看BGP,如下图:
基本配置如下:
R1:
interfaceLoopback0
ipaddress1.1.1.1255.255.255.0
interfaceFastEthernet0/0
ipaddress123.1.1.1255.255.255.0
routereigrp90
network123.1.1.00.0.0.255
noauto-summary
routerbgp1
nosynchronization
bgprouter-id1.1.1.1
network1.1.1.0mask255.255.255.0
neighbor123.1.1.2remote-as23
noauto-summary
R2:
interfaceLoopback0
ipaddress2.2.2.2255.255.255.0
interfaceFastEthernet0/0
ipaddress123.1.1.2255.255.255.0
routereigrp90
network2.2.2.00.0.0.255
network123.1.1.00.0.0.255
noauto-summary
routerbgp23
nosynchronization
bgprouter-id2.2.2.2
neighbor3.3.3.3remote-as23
neighbor3.3.3.3update-sourceLoopback0
neighbor3.3.3.3next-hop-self
neighbor123.1.1.1remote-as1
noauto-summary
R3:
interfaceLoopback0
ipaddress3.3.3.3255.255.255.0
interfaceFastEthernet0/0
ipaddress123.1.1.3255.255.255.0
routereigrp90
network3.3.3.00.0.0.255
network34.1.1.00.0.0.255
network123.1.1.00.0.0.255
noauto-summary
routerbgp23
nosynchronization
bgprouter-id3.3.3.3
neighbor2.2.2.2remote-as23
neighbor2.2.2.2update-sourceLoopback0
neighbor2.2.2.2next-hop-self
neighbor34.1.1.4remote-as4
noauto-summary
R4:
interfaceLoopback0
ipaddress4.4.4.4255.255.255.0
interfaceSerial1/0
ipaddress34.1.1.4255.255.255.0
routereigrp90
network34.1.1.00.0.0.255
noauto-summary
routerbgp4
nosynchronization
bgprouter-id4.4.4.4
network4.4.4.0mask255.255.255.0
neighbor34.1.1.3remote-as23
noauto-summary
全网以EIGRP为三层协议,运行BGP协议,R1属于自治系统1,R2和R3属于自治系统23,R4属于自治系统4,R2和R3是IBGP,R2从IBGP中R3学到的路由传给EBGP是,下一跳应该改变自己接口地址,这里却不是,R1学到R4还回口路由的下一跳还是R3,用事实说话,查看R1的路由表:
34.0.0.0/24issubnetted,1subnets
C 34.1.1.0isdirectlyconnected,Serial1/0
1.0.0.0/24issubnetted,1subnets
B 1.1.1.0[20/0]via34.1.1.3,00:
14:
30
2.0.0.0/24issubnetted,1subnets
D 2.2.2.0[90/2300416]via34.1.1.3,00:
15:
44,Serial1/0
3.0.0.0/24issubnetted,1subnets
D 3.3.3.0[90/2297856]via34.1.1.3,00:
15:
30,Serial1/0
4.0.0.0/24issubnetted,1subnets
C 4.4.4.0isdirectlyconnected,Loopback0
123.0.0.0/24issubnetted,1subnets
D 123.1.1.0[90/2172416]via34.1.1.3,00:
31:
41,Serial1/0
可以看到R1学到R4还回口的路由从R3接口学来的,出现了第三方下一条,这是由于BGP是路径矢量协议。
综上所述,只有在一个广播多路访问中,RIP,BGP才可以出现第三方下一跳,而EIGRP第三方下一跳是关闭的或不存在。
在多路访问网络环境中,用直连接口建立邻居关系,会产生第三方下一跳。
1.多路访问网络(包括broadcast和NBMA)
2.前缀是通过EBGP宣告的。
默认条件下,IBGP会话是不会改变前缀的下一跳属性的。
对IBGP讨论第三方下一跳是没有意义的。
3.宣告前缀的接口地址&neighbor指向的地址&该前缀的下一跳地址,三个地址在同一网段
宣告前缀的接口地址&neighbor后指向的地址在同一网段,意味着EBGP必须使用直连接口建立对等体关系,才会出现第三方下一跳行为。
结果:
下一跳不会改变为那个宣告前缀的地址,还是原来该前缀的下一跳地址
有图有真相:
RTA
interfaceFastEthernet0/0
ipaddress10.10.10.1255.255.255.0
duplexauto
speedauto
!
routerbgp100
nosynchronization
bgplog-neighbor-changes
neighbor10.10.10.2remote-as200
noauto-summary
RTC
interfaceFastEthernet0/0
ipaddress10.10.10.2255.255.255.0
duplexauto
speedauto
!
routerospf10
log-adjacency-changes
network10.10.10.20.0.0.0area0
!
routerbgp200
nosynchronization
bgplog-neighbor-changes
network11.11.11.0mask255.255.255.0
neighbor10.10.10.1remote-as100
noauto-summary
RTB
interfaceLoopback0
ipaddress11.11.11.11255.255.255.0
ipospfnetworkpoint-to-point
!
interfaceFastEthernet0/0
ipaddress10.10.10.3255.255.255.0
duplexauto
speedauto
!
routerospf10
log-adjacency-changes
network10.10.10.30.0.0.0area0
network11.11.11.110.0.0.0area0
RTA
showiproute
Gatewayoflastresortisnotset
10.0.0.0/24issubnetted,1subnets
C 10.10.10.0isdirectlyconnected,FastEthernet0/0
11.0.0.0/24issubnetted,1subnets
B 11.11.11.0[20/2]via 10.10.10.3,00:
02:
44
下一跳不是宣告前缀的接口地址10.10.10.2,而是10.10.10.3
这样,RTA到达11.11.11.0/24的路由就不需要经过RTC再到达RTB,是不是很智能!
然而,智能的第三方系一条有时候会产生问题
如果帧中继网络的PVC是全互联的,是没有什么问题的。
但是考虑到费用的原因,实际部署帧中继的时候不可能全互联的,大多数是采用hub-spoke模型。
如图,RTC作为hub,RTA和RTC是spoke,EBGP第三方下一跳行为会让RTA学到的11.11.11.0/24的路由下一跳是10.10.10.3,而RTA又没有到达10.10.10.3的PVC时,
11.11.11.0/24是不可达的。
解决方法:
RTC:
routerbgp200
neighbor10.10.10.2next-hop-self
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 探究 RIPEIGPBGP 第三 一跳
![提示](https://static.bdocx.com/images/bang_tan.gif)