EIGRP.docx
- 文档编号:17611482
- 上传时间:2023-07-27
- 格式:DOCX
- 页数:24
- 大小:286.72KB
EIGRP.docx
《EIGRP.docx》由会员分享,可在线阅读,更多相关《EIGRP.docx(24页珍藏版)》请在冰点文库上搜索。
EIGRP
EIGRP
1、概述
EIGRP是思科私有协议,只能运行在思科的设备上。
EIGRP能够支持的协议有IP、AppleTalk和IPX。
EIGRP的流量使用IP协议号88。
EIGRP采用DiffusedUpdateAlgorithm(DUAL)算法来计算到目标网络的最短路径,EIGRP还是一个距离矢量路由协议,因为距离矢量路由协议的根本特征就是自己的路由表是完全从其它路由器学来的,并且将收到的路由条目一丝不变地放进自己的路由表,运行距离矢量路由协议的路由器之间交换的是路由表,距离矢量路由协议是没有大脑的,路由表从来不会自己计算,总是把别人的路由表拿来就用;但EIGRP协议并不是完全没有大脑,它在距离矢量路由协议的基础上却有着那么一点点的优化和提高,那就是从邻居那里收到路由表之后,会经过一些计算和比较,然后才放进路由表中使用,因此将EIGRP的身份提高到“增强的距离矢量路由协议”,虽然EIGRP是增强的距离矢量路由协议,但其根本核心还是交换路由表,EIGRP没有任何资格称为链路状态路由协议。
EIGRP使用了AutonomousSystem(AS)的概念,即使是这样,EIGRP也算不上外部网关路由协议(ExteriorGatewayProtocol即EGP),因为不同AS之间,EIGRP无法传递路由信息,所以EIGRP依然是个内部网关路由协议(InteriorGatewayProtocol,即IGP)。
AS是基于接口定义的,一台EIGRP路由器可以属于多个AS。
EIGRP扩展了对大型网络的支持,不再像RIP那样只支持最大跳数15跳,而是扩展到了最大支持255跳,但默认情况下最大跳数为100跳。
EIGRP支持ClasslessInterdomainRouting(CIDR)和Variable-LengthSubnetMasks(VLSMs),但默认也会自动汇总,该功能可以手工关闭,EIGRP还支持手工汇总路由信息,并且手工汇总没有任何条件限制,可以汇总到任意掩码长度。
自动汇总和手工汇总与RIP相似,汇总是针对发出的路由有效,也就是对其它路由器生效,是对其它路由器的路由表生效。
EIGRP支持认证,并且只支持MD5认证;EIGRP支持Passive-Interface(被动接口),但EIGRP的被动接口与RIP不同,RIP的被动接口不向外发路由,但可以接收路由,而EIGRP的被动接口不接收也不发送路由。
EIGRP并不会周期性更新路由表,而采用增量更新,即只在路由有变化时,才会发送更新,并且只发送有变化的路由信息。
EIGRP自己内部路由的管理距离(DdministrativeDistance)为90,而从外部重分布进EIGRP的管理距离为170。
EIGRP支持非等价负载均衡,最多支持6条,默认为4条,但非等价负载均衡功能默认为关闭状态。
测试EIGRP基本实验
R1#shrun
interfaceLoopback0
ipaddress10.1.1.1255.255.255.0
interfaceLoopback1
ipaddress10.1.2.1255.255.255.0
interfaceLoopback2
ipaddress10.1.3.1255.255.255.0
interfaceLoopback3
ipaddress10.1.4.1255.255.255.0
interfaceFastEthernet0/0
ipaddress12.1.1.1255.255.255.0
duplexauto
speedauto
routereigrp1
network10.1.1.00.0.0.255
network10.1.2.00.0.0.255
network10.1.3.00.0.0.255
network10.1.4.00.0.0.255
network12.1.1.00.0.0.255
noauto-summary
R2#shrun
interfaceLoopback0
ipaddress131.131.1.1255.255.0.0
interfaceFastEthernet0/0
ipaddress12.1.1.2255.255.255.0
duplexauto
speedauto
interfaceFastEthernet1/0
ipaddress23.1.1.2255.255.255.0
duplexauto
speedauto
routereigrp1
network12.1.1.00.0.0.255
network23.1.1.00.0.0.255
network131.131.0.0
noauto-summary
R3#shrun
interfaceLoopback0
ipaddress192.168.0.1255.255.255.0
interfaceLoopback1
ipaddress192.168.1.1255.255.255.0
interfaceLoopback2
ipaddress192.168.2.1255.255.255.0
interfaceLoopback3
ipaddress192.168.3.1255.255.255.0
interfaceFastEthernet0/0
ipaddress23.1.1.3255.255.255.0
duplexauto
speedauto
routereigrp1
network23.1.1.00.0.0.255
network192.168.0.0
network192.168.1.0
network192.168.2.0
network192.168.3.0
noauto-summary
2、EIGRPMetric
EIGRP使用多种参数计算去往目标网络的Metric值,包括带宽(Bandwidth)、延迟(delay)、可靠性(reliability)、负载(loading)、最大传输单元(MTU),这5个参数分别使用K值来表示,即K1、K2、K3、K4、K5,所以如果两台EIGRP路由器之间的5个K值不同,则代表双方计算Metric值的方法不同;无论是EIGRP还是其它协议,在需要使用带宽计算Metric时,只计算接口出方向的带宽,而接口进方向的是不计算在内的,也就是一条链路上,只有一个出接口的带宽会被计算,而进接口的带宽是被忽略的,如下图中所示,
从源路由器R1到目标R4所经过的三条链路中,带宽分别是100Mbit/s、10Mbit/s、1Gbit/s、虽然有条链路的带宽可达1Gbit/s,所以从源到目的的路径中,只有最低带宽最终决定传输时的带宽,而某条链路的高带宽是没有意义的,所以在EIGRP的Metric计算中,只需要计算从源到目标的最低带宽即可,但是经过各个接口的延迟却是要累加的。
EIGRP在计算Metric时,使用K值来控制整个计算公式,公式如下:
公式中的带宽为10000000除以链路中的最小带宽,带宽单位为Kbit,延迟为链路中的延迟之和除以10,延迟单位为ms(毫秒);
默认情况下,5个K值的取值分别为:
K1=1,K2=0,K3=1,K4=K5=0,由于K5=0,由此一来,造成上面的公式算出来的最终结果为0,所以当K5=0时,必须将其简化,变成如下:
正因为默认5个K值的取值分别为:
K1=1,K2=0,K3=1,K4=K5=0,所以默认EIGRP的计算公式为:
注:
此公式为EIGRP默认计算公式,改变K值,将影响Metric值的计算公式。
3、EIGRP负载均衡
EIGRP可以支持非等价负载均衡,最多支持6条,默认为4条,但非等价负载均衡功能默认为关闭状态。
EIGRP只能将拓朴数据库中的备用链路放入路由表执行负载均衡,拓朴数据库中可能有多条备用链路,而且多条链路的Metric值也可能各不相同,当启用非等价负载均衡时,需要定义什么样的Metric范围可以用来负载均衡,这需要通过控制Metric的变量(Variance)值来控制,具体方法如下:
路由表中正在使用的最优路由的Metric值为FD,而拓朴数据库中备用路由的Metric值肯定是大于FD的,Variance值通过控制备用链路的Metric值与FD的倍数关系来控制,就是Variance值取多少,备用链路的Metric在FD的Variance值倍数范围内就有资格执行负载均衡,例如当前FD为20,3条备用链路Metric分别为30,50,55,如果Variance值取2,那么Metric值范围在20×2=40的链路都可以执行负载均衡,所以Metric值为30的链路可以执行负载均衡,而Metric值为50和55的却不可以,因为大于40,只有当Variance值取3时,Metric值范围在20×3=60的链路才可以执行负载均衡,所以Metric值为50和55只有在Variance值取3时才可以执行负载均衡。
因为Metric值越大的路由,表示其链路况越低下,而Metric值越小的路由,其链路况越优秀,这是一个成反比的关系,所以在执行负载均衡时,我们更希望流量也能因Metric值的大小,成反比例传输,链路好的传递更多的数据包,而链路差的则传递更少的数据包,通过配置命令traffic-sharebalanced即可,该功能默认为开启状态。
测试EIGRP的不等价负载均衡和metric的修改
在三台路由器上配置EIGRP,发现路由器r1的路由表为:
R1#shiproute
D23.0.0.0/8[90/2172416]via13.1.1.2,00:
00:
13,FastEthernet0/0
12.0.0.0/8isvariablysubnetted,2subnets,2masks
C12.1.1.0/24isdirectlyconnected,Serial1/0
D12.0.0.0/8isasummary,00:
00:
54,Null0
D192.168.1.0/24[90/156160]via13.1.1.2,00:
00:
10,FastEthernet0/0
13.0.0.0/8isvariablysubnetted,2subnets,2masks
C13.1.1.0/24isdirectlyconnected,FastEthernet0/0
D13.0.0.0/8isasummary,00:
00:
54,Null0
可以通过公式算出156160
使用快速以太网口带宽bandwidth为100000,延迟为100+r3上逻辑口l0的延迟为5000
用10000000/100000+5100/10的值=610,再乘以256,结果正好是156160.
为了提高网络性能,需要同时也使用下一跳为12.1.1.2的路径,就必须是同不等价负载均衡。
在r1上使用R1#shipeigrp1topologyall-links查看到完整拓扑表为:
R1#shipeigrp1topologyall-links
IP-EIGRPTopologyTableforAS
(1)/ID(13.1.1.1)
Codes:
P-Passive,A-Active,U-Update,Q-Query,R-Reply,
r-replyStatus,s-siaStatus
P12.0.0.0/8,1successors,FDis2169856,serno4
viaSummary(2169856/0),Null0
P12.1.1.0/24,1successors,FDis2169856,serno2
viaConnected,Serial1/0
P13.0.0.0/8,1successors,FDis28160,serno3
viaSummary(28160/0),Null0
P13.1.1.0/24,1successors,FDis28160,serno1
viaConnected,FastEthernet0/0
P23.0.0.0/8,1successors,FDis2172416,serno7
via13.1.1.2(2172416/2169856),FastEthernet0/0
via12.1.1.2(2681856/2169856),Serial1/0
P192.168.1.0/24,1successors,FDis156160,serno8
via13.1.1.2(156160/128256),FastEthernet0/0
via12.1.1.2(2809856/2297856),Serial1/0
根据FC=AD R2到达192.168.1.0的网络metric值要<156160 在R2上修改带宽和延迟 R2(config)#ints0/1 R2(config-if)#bandwidth1000000 R2(config-if)#delay10 R2(config-if)#exit 再去r1上查看拓扑表 R1#shipeigrp1topologyall-links IP-EIGRPTopologyTableforAS (1)/ID(13.1.1.1) Codes: P-Passive,A-Active,U-Update,Q-Query,R-Reply, r-replyStatus,s-siaStatus P12.0.0.0/8,1successors,FDis2169856,serno4 viaSummary(2169856/0),Null0 P12.1.1.0/24,1successors,FDis2169856,serno2 viaConnected,Serial1/0 P13.0.0.0/8,1successors,FDis28160,serno3 viaSummary(28160/0),Null0 via12.1.1.2(2174976/30720),Serial1/0 P13.1.1.0/24,1successors,FDis28160,serno1 viaConnected,FastEthernet0/0 P23.0.0.0/8,2successors,FDis2172416,serno9 via12.1.1.2(2172416/2816),Serial1/0 via13.1.1.2(2172416/2169856),FastEthernet0/0 P192.168.1.0/24,1successors,FDis156160,serno8 via13.1.1.2(156160/128256),FastEthernet0/0 via12.1.1.2(2300416/130816),Serial1/0 根据FS的FD要<最好路由的FD*Variance可得出 2300416<156160*x X约等于15 所以在r1上修改Variance值为15,再查看路由表 R1(config)#routereigrp1 R1(config-router)#variance15 R1(config-router)#end R1#cleariproute*重置路由表 再查看路由表 R1#shiproute Codes: C-connected,S-static,R-RIP,M-mobile,B-BGP D-EIGRP,EX-EIGRPexternal,O-OSPF,IA-OSPFinterarea N1-OSPFNSSAexternaltype1,N2-OSPFNSSAexternaltype2 E1-OSPFexternaltype1,E2-OSPFexternaltype2 i-IS-IS,su-IS-ISsummary,L1-IS-ISlevel-1,L2-IS-ISlevel-2 ia-IS-ISinterarea,*-candidatedefault,U-per-userstaticroute o-ODR,P-periodicdownloadedstaticroute Gatewayoflastresortisnotset D23.0.0.0/8[90/2172416]via13.1.1.2,00: 00: 49,FastEthernet0/0 [90/2172416]via12.1.1.2,00: 00: 49,Serial1/0 12.0.0.0/8isvariablysubnetted,2subnets,2masks C12.1.1.0/24isdirectlyconnected,Serial1/0 D12.0.0.0/8isasummary,00: 00: 49,Null0 D192.168.1.0/24[90/156160]via13.1.1.2,00: 00: 49,FastEthernet0/0 [90/2300416]via12.1.1.2,00: 00: 49,Serial1/0 13.0.0.0/8isvariablysubnetted,2subnets,2masks C13.1.1.0/24isdirectlyconnected,FastEthernet0/0 D13.0.0.0/8isasummary,00: 00: 50,Null0 4、EIGRP邻居 EIGRP使用了邻居的概念,EIGRP只向邻居发送路由表,并且是使用组播向邻居发送路由表,如果要在EIGRP之间交换路由表,必须成为邻居,不同AS不能成为邻居,EIGRP只在直连网络中发现和建立邻居。 EIGRP路由器之间的邻居关系通过Hello包来发现和维护,EIGRP会将自己全部的路由表发给所有邻居;路由器上启动EIGRP之后,就会使用组播地址224.0.0.10在相应接口上发送Hello包,EIGRP会使用一张单独的表来记录哪些路由器是自己的邻居,称为邻居表,只要收到Hello包,便将对方列为自己的邻居,并且写入邻居表,由此可见,EIGRP路由器双方可能一方认为另外一方是自己的邻居,而另外一方却不认为对方是邻居,例如自己收到了另一方的Hello包,认为对方是邻居,而对方没有收到或过滤了自己的Hello包,所以如果EIGRP要形成双向邻居,只有在双方都发现对方的Hello包中列出自己的地址才行,但思科却没有这样设计。 在EIGRP断开或进程关闭时,会发送GoodbyeMessage结束邻居关系 EIGRP会定期向网络中发送Hello包,发送的间隔会因为链路带宽的不同而不同,间隔时间分为5秒和60秒: Hello间隔60秒 所有带宽低于或等于1544Kbit/s的,如T1,FrameRelaymultipoint接口,等等。 Hello间隔5秒 所有带宽大于1544Kbit/s的,如以太网接口。 如果超过一定的时间没有收到邻居的Hello包,便认为邻居无效,称为EIGRPHold-time,默认为Hello间隔的3倍,也就是分别为15秒和180秒,Hello间隔时间和Hold-time都可以手工调整,但是如果调整了Hello间隔时间,Hold-time并不会自动调整到相应的3倍,而是保持不变。 router#showipeigrpneighbor IP-EIGRPneighborsforprocess1 HAddressInterfaceHoldUptimeSRTTRTOQSeqType (sec)(ms)CntNum 110.1.1.2Et11112: 00: 56123000620 010.1.2.2S017212: 00: 58172000645 Hold栏的值永远不会超过Hold-time,也永远不会低于Hold-time减Hello间隔,否则就是不正常,或者Hello包有丢失。 、 如果Hold栏的值范围是10-15,则证明Hello间隔是5秒,Hold-time是15秒。 如果Hold栏的值范围是120-180,则证明Hello间隔是60秒,Hold-time是180秒。 注: ★Hello间隔和Hold-time可以手工在接口上配置,如果发现不正常,请检查接口上是否手工配置了时间参数。 ★EIGRP双方Hello间隔和Hold-time不一致也可以建立邻居关系,接口上的Secondary地址不能建邻居,所有EIGRP的数据包源地址总是接口的Primary地址。 ★在Frame-Relay环境下,需要在命令frame-relaymap带broadcast关键字。 EIGRP双方必须满足以下三个条件,才能建立邻居: ★1.双方在相同AS ★2.双方Hello包正常,即双方接口Primary地址在同网段。 ★3.双方计算Metric值方法相同,即双方K1K2K3K4K5值相同。 测试EIGRP的邻居身份验证 R1#shrun keychainccie key1 key-stringcisco interfaceLoopback0 ipaddress1.1.1.1255.255.255.0 interfaceFastEthernet0/0 ipaddress10.1.1.1255.255.255.0 ipauthenticationmodeeigrp1md5 ipauthenticationkey-chaineigrp1ccie duplexauto speedauto routereigrp1 network1.0.0.0 network10.0.0.0 noauto-summary R2#shrun keychainccie key2 key-stringcisco interfaceLoopback0 ipaddress2.2.2.2255.255.255.0 interfaceFas
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EIGRP