EIGRP:Enhanced Interior Gateway Routing Protocol 即 增强内部网关路由协议。也翻译为 加强型内部网关路由协议。 EIGRP是Cisco公司的私有协议(2013年已经公有化[1] )。 EIGRP结合了链路状态和距离矢量型路由选择协议的Cisco专用协议,采用弥散修正算法(DUAL)来实现快速收敛,可以不发送定期的路由更新信息以减少带宽的占用,支持Appletalk、IP、Novell和NetWare等多种网络层协议。该协议是思科私有协议,属于 OSI 模型 第3层,协议号为88。报文发送方式是组播,组播地址为 24.0.0.10。EIGRP结合了链路状态和距离矢量型路由选择协议的Cisco专用协议,采用弥散修正算法(DUAL)来实现快速收敛,可以不发送定期的路由更新信息以减少带宽的占用,支持Appletalk、IP、Novell和NetWare等多种网络层协议。自从EIGRP路由协议诞生后,IGRP路由协议便很少再被使用了。
协议特点:
- 快速收敛
- 部分更新
- 支持多种网络层协议
- 使用多播和单播
- 支持变长子网掩码(VLSM)
- 无缝连接数据链路层协议和拓扑结构
- 配置简单
传输协议
RTP负责EIGRP packet的按顺序(可靠)的发送和接收,这个可靠的保障是通过Cisco私有的一个算法,reliable multicast实现的,使用组播地址224.0.0.10,每个邻居接收到这个可靠的组播包的时候就会以一个unicast作为确认按顺序的发送是通过packet里的2个序列号实现的,每个packet都包含发送方分配的1个序列号,发送方每发送1个packet,这个序列号就递增1.另外,发送方也会把从目标路由器接收到的packet的序列号放在这个要发送的packet里,在某些情况下,RTP也可以使用无需确认的不可靠的发送,并且使用这种不可靠发送的packet中不包含序列号.EIGRP第一次传输都采用组播形式,重传输都采用单播。
EIGRP Metric的5个标准
带宽(bandwidth)
延迟(delay)
可靠性(reliability)
负载(loading)
最大传输单元(MTU)
EIGRP Metric的计算
一般情况下,K5=0;EIGRP度量值的计算公式为:256*{K1(10^7/带宽)+K2(10^7/带宽)/(256-负载)+K3(延迟)}
由于默认情况下,K1和K3是1,其他的K值都是0.
EIGRP 要求两台路由器的K值必须相同才能成为邻居。另外,K2,K4,,K5最好不要设置,因为这些参数设置为非零之后,会导致计算度量值时会考虑接口的负载和可靠性,而负载和可靠性会随时间变化,这将导致EIGRP重新泛洪拓扑数据,还可能导致路由器不断地选择不同的路由,由此导致网络不稳定。
报文类型
1、hello : 建立 EIGRP 邻居;5秒发一次
2、update:同步路由更新;
3、Ack:实现确认作用,确保报文可靠传输;
4、query:查询报文,用于查询/请求自己丢失的路由信息;
5、reply:回应报文,用于对 query 报文的回应
恢复协议
EIGRP的Update包是非周期性发送的,
1.Hello包在一般的网络中(比如点到点,point-to-point)是每5秒组播1次(要随机减去1个很小的时间防止同步);
2.在多点(multipoint)X.25,帧中继(Frame Relay,FR)和ATM接口(比如ATM SVC)和ISDN PRI接口上,Hello包的发送间隔是60秒.
特点
- 通过发送和接收Hello包来建立和维持邻居关系,并交换路由信息;
- 采用组播(224.0.0.10)或单播进行路由更新;
- EIGRP的管理距离为90或170;
- 采用增量更新,减少带宽占用;
- 支持可变长子网掩码(VLSM),默认开启自动汇总功能;
- 支持IP、IPX和AppleTalk等多种网络层协议;
- 对每一种网络协议,EIGRP都维持独立的邻居表、拓扑表和路由表;
- EIGRP使用Diffusing Update算法(DUAL)来实现快速收敛并确保没有路由环路;
- 存储整个网络拓扑结构的信息,以便快速适应网络变化;
- 支持等价和非等价的负载均衡;
- 使用可靠传输协议(RTP)保证路由信息传输的可靠性。
- 无缝连接数据链路层协议和拓扑结构,EIGRP不要求对OSI参考模型的2层协议进行特别的配置。
环路解决
1.水平分割(Split Horizon)
永远不会在同一个接口下通告一条该接口学到的路由信息
2.路由的毒性逆转(Poison reverse)
接收路由信息的接口,再从该接口通告出刚才学到的路由为不可达
建立邻居影响因素
1、最小范围内双向ping通;
2、可以正常发送 eigrp 的包;
确保端口启用了 EIGRP 进程(network成功)
3、可以正常接收 eigrp 的包;
确保端口启用了 EIGRP 进程
确保端口上没有3层ACL干掉 EIGRP
4、可以正常比较 eigrp 的包。
优点
精确路由计算和多路由支持。
较少带宽占用。
快速收敛。
MD5认证。
路由聚合。
实现负载分担。
配置简单。
区域概念,EIGRP已经引用AS概念,可以进行大规模网络的路由支持了。
缺点
定时发送HELLO报文。
基于分布式的DUAL算法。
EIGRP是Cisco公司的私有协议。
基本配置
R1(config)#router eigrp AS号(0~65535) 激活eigrp
R1(config-router)#net 192.168.1.0 通配符 激活接口,下行等价命令
R1(config-router)#passive-interface fastEthernet 0/1 不从F0/1发hello包
neib 192.168.1.2 / lo 0单播
variance <multiplier> 非等价负载均衡
bandwidth <kbps> 带宽
ip bandwidth-parcent AS 占用带宽
key chain <name> MD5验证
key <ID>
key-string <string>
ip authenticatian mode eigrp<AS> md5
ip authentication key-chain eigrp <AS> <name-of-chain>
验证命令:
show ip eigrpint / nei / top / tra/
show ip protocols
常用命令
修改K值:
router eigrp 100
metric weight 0 1 0 1 0 0
# 修改计时器(默认hello是5s,hold是15s)
-高速链路而言,hello 5s , hold 15s ;
-低速链路而言,hello 40s, hold 120s ;
大于 1.544Mbps 的链路,称之为高速;
interface fas0/0
ip hold-time eigrp 100 21
interface fas0/0
AI 代码解读
ip hello-interval eigrp 100 7
本文转自 linuxpp 51CTO博客,原文链接:http://blog.51cto.com/13505118/2055372,如需转载请自行联系原作者