EIGRP是思科私有协议,是一个距离矢量路由协议。
EIGRP可以支持的协议有IPIPXAppleTalk
EIGRP的流量使用IP协议号88.
EIGRP内部的管理距离为90,从外部重分布进EIGRP的管理距离为170.
EIGRP使用DUAL算法来计算到达目的网络的最佳路径
EIGRP使用AS区域的概念,不同区域的EIGRP是不能相互传递路由信息的。AS是基于接口定义的。
EIGRP最大支持255跳,默认情况下为100跳。
EIGRP支持CIDRVLSM,默认也会自动汇总路由,该功能可以手工关闭;EIGRP支持手动汇总路由,且手动汇总没有任何限制,可以汇总到任意掩码长度。
EIGRP支持认证且只支持MD5认证。可以使用offset list修改路由的metric,只可增加不可减少。
EIGRP采用增量更新,只有路由有变化时,才会发送周期,并且只发送有变化的路由信息。
EIGRP支持非等价负载均衡,默认为4条,最多支持6条。
 
EIGRP metric
EIGRP的度量值分别为带宽、延迟、可靠性、负载、最大传输单元,这5个参数分别使用K1/K2K3K4K5来表示,默认情况下,K1=K3=1K2=K4=K5=0
EIGRP在计算度量值时,只需要计算从源到目的的最低带宽、延迟要各个接口的延迟之和。
公式中的带宽为10000000除以最小带宽,单位为kbits,延迟为所有延迟和除以10,单位是ms
 
 
EIGRP邻居
EIGRP只会向自己的邻居以单播的形式发送路由表,也就是说EIGPR间要交换路由表,必须先建立邻居关系。EIGRP间的邻居关系通过发送HELLO包来发现和维护。
路由器上 启动EIGRP后,会使用224.0.0.10在相应接口上发送HELLO包,EIGRP会使用一张单独的表记录哪些路由器是自己的邻居,称为邻居表。只要收到HELLO包,便 将对方列为自己的邻居,并且写入邻居表,EIGRP会将邻居的地址写在HELLO包中。
EIGRP断开或者进程关闭时,会发送goodbye message消息结束邻居关系。
EIGRP会由于链路的不同,发送HELLO包的间隔也会不同:
60S:所有带宽低于1.544M
5S:所有带宽大于1.544M
邻居的hold timeHELLO包时间的3倍。
EIGRP双方HELLOHOLD TIME时间不一致,同样可以建立邻居。
EIGRP不能使用secondary 地址建立邻居,所有EIGRP数据包的源地址总是primary地址。
 
EIGRP邻居建立的条件:
1、  双方在相同的AS
2、  双方HELLO包正常,即双方接口primary地址是同一段
3、  双方计算度量值的方法相同,即K值取值相同
EIGPR数据包
1.       HELLO
用来发现邻居和维护邻居关系,目标地址为224.0.0.10HELLO包在邻居收到后不需要确认
2.       UPDATE
邻居建立后,EIGRP路由器发给邻居的路由表,以单播的方式发送,且需要邻居的确认
3.       QUERY
当路由丢失且没有备用路由时,向邻居发送QUERY消息,邻居必须回复
4.       REPLY
邻居对QUERY数据包的回复,也需要邻居的确认。
5.       ACK
所使用的确认数据包。
 
EIGRP运行过程:
1、  双方路由器运行EIGRP,并发送HELLO
2、  当路由器B收到AHELLO包时,将A列入自己的邻居表,并向A发送UPDATE消息,也就是向A发送自己的路由表
3、  当路由器A收到BUPDATE消息后,会发送ACK消息以确认收到AUPDATE消息,然后A再向B发送自己的UPDATE
4、  B在收到AUPDATE消息时,会返回ACK消息确认已经收到
5、  AB将收到的UPDATE放入到自己的拓扑数据库,并使用DUAL算法计算到达各个网段的最优路径
 
EIGRP拓扑
EIGRP从邻居处收到路由信息后,会将其放入到拓扑数据库中,然后使用DUAL算法计算到达各个目的地的最优路径存入路由表,不是最优的路由则放入拓扑数据库中,当最优路径失效时,便从拓扑数据库中查找备用路由继续放入路由表中使用。
 
RD:邻居到达目的地的度量值
FD:被放入路由表的最优路径被称为FD
FS:留在拓扑数据库的备用路径称为FS
Successor:到达目的地最优路径的下一跳被称为successor.
FC:可行性条件,邻居通告的RD必须小于FD,这样的邻居路径才会被放入到拓扑数据库中。
 
 
EIGRP_第1张图片
在上图中,R1为源,R2R3R1通告自己到达目的地的度量值被称为RD,而R1本身到达目的地的度量值称为FD;如果R1最后选择R2到达目的地,那么R2被称为successor。,那么R3也就是备用路径,那么R3 称为FS
FC是一个条件,并不是所有的非最优路径都可以放入到拓扑数据库中,只有满足FC条件时,才会被放入到拓扑数据库中。
 
EIGRP负载均衡
EIGRP支持非等价负载均衡,默认为4条,最多6条。
并不是所有的备用路径都可以执行非等价负载均衡,这是靠度量值的大小决定的,只有度量值的大小在FDvariance倍数内的备用链路才有资格执行非等价负载均衡。
Variance默认取值为1
可以通过配置traffic-share balanced命令设置链路好的传递相对多的数据包,链路次的传递相对少的数据,默认为开启状态。
 
EIGRP SIA
EIGRP中正常的路由称为passive route
当路由表中最优路径丢失后,而拓扑数据库又没有备用链路时,EIGRP会向所有的邻居发送QUERY消息,试图查询邻居是否有到达目的地的路由信息,当发送QUERY消息后,该路由则被标记为active route,该状态称为SIA。如果3分钟内,EIGRP没有收到邻居的回复,则清除与该邻居的会话关系。