中小企业网络管理:EIGRP动态路由协议

今天我们继续中小企业网络管理系列中关于思科路由器配置的文章。在前面的内容中,已经介绍了路由器启动、基本管理、IP路由、RIP、OSPF等内容,今天我们来介绍另一个动态路由选择协议EIGRP:

EIGRP:Enhanced Interior Gateway Routing Protocol

中文意思是:增加强内部网关路由协议,是早期IGRP的增强版,对IGRP做了一些扩展,原理也差不多,差别不是很大,所以我们在此就介绍EIGRP,不再介绍IGRP了,以后大家也不会再用到IGRP了。但EIGRP是思科私有的一个路由协议,这其实也制约了EIGRP的使用范围,因为只有在同一个网络中全部都是思科的产品才会使用EIGRP,但要考虑到一个网络的扩展功能。那万一以后要使用其他厂家的产品怎么办?所以一定要考虑好用不用EIGRP。下面咱们就花点时间来看一下EIGRP的相关知识点,首先就从EIGRP特性入手:

EIGRP特性:

EIGRP早点是在IOS9.21的时候就支持EIGRP了,现在IOS的版本已经达到12.4了,大家可以从官网找到相关的IOS文件:

中小企业网络管理:EIGRP动态路由协议
IOS软件

关键是EIGRP是一个混合型的路由协议,也就是说它结合了距离矢量和链路状态两种路由协议的特性。但是距离矢量和链路状态都有自己的弊端民。如距离矢量容易产生环路,而且是以跳数为计算路径不是很准确。那么链路状态协议是没有环路了,而且是以cost来作为metric值作为最佳路由,但是因为它的算法复杂,所以必须占用一定的资源。那么EIGRP就结合它们有自己的一些特性:

收敛速度快:相对于RIP来说,收敛速度是很多的,不敢说比OSPF绝对快,但绝对比RIP要快,我们前面介绍RIP的时候我们也看到了RIP有一个30秒的广播时间,有180秒的无效时间,还有240的刷新时间,所以当网络出现更改时,这个收敛速度是很慢的,在此EIGRP使用的是链路状态的收敛形式,对外宣布的链中状态,所以EIGRP相对来说要快很多。

无环路的无类路由:因为它采用的是一位荷兰的计算机科学家Dijkstra于1959年发现的算法,这种算法有点复杂,但能保证网络中的每一个路由器都有一个整个的网络链路图,不会产生网络环路。

增量路由更新:RIP是将整个路由表都发给对方,而EIGRP是将发生更新的路由发给对方,这和我们平时所说的增量备份和差异备份有点相似,所以相比来说性能要高。而且采用的是trigger update,如果没有更新是不是发送的,这点和RIP也不一样!

支持等价与非等价路径的负载均衡:RIP支持的是4条等价的负载均衡,针对一些厂家可以支持6条cost相同的OSPF负载均衡,但都是等价的负载均衡,但是只有EIGRP可以实现非等价的负载均衡。

使用单播或组播代替广播:

支持多种网络层协议:支持IP、Novell 公司的IPX、Apple的AppleTalk等等协议,主要是因为它有一个协议相关模块!

至于说其他特性就不再细细介绍了,如:支持VLSM和CIDR、支持路由的手动汇总。

EIGRP中的三张表:

EIGRP如果想正常工作必须用到三张表,分别是邻居表,拓扑表,路由表,这一点和链路状态差不多!我们来看一下这三张表是如何协同工作的,如图所示:

中小企业网络管理:EIGRP动态路由协议
EIGRP三张表

邻居表中存放的是netxt-hop router 与interface的对应关系,也就是说存放的是下一跳及本地接口,通过本地的哪个接口可以到达下一跳,但是必须是运行EIGRP路由器的直连路由信息。

拓扑表:从邻居表中学过来的所有的路由信息,也就是所有目标网络的信息,其中有successor后继路由以及feasible successor(FS)可行后继路由,当然最终放到路由表的只有后继路由,那这个FS有什么用呢,是说如果万一后继路由坏了,路不通了,那么可行后继路由就成了后继路由放到路由表中,其实也是一个冗错机制!

路由表:存放的是到达对方的最佳路由信息。

一个数据包能不能被转发最终依靠的是路由表。

下面看一下FD和AD两个概念:这两个概念也很容易理解:

FD:Feasible Distance 可行距离

AD:Advertised Distance 宣告距离

它们两个术语之间有什么关系,针对每一个路由器,都会根据它所宣告的距离AD及cost来计算自己到达对方的FD。然后最小的FD就是到达对方的最佳路由。

中小企业网络管理:EIGRP动态路由协议
FD、AD

那有人问这个metric值是怎么算出来的,这里需要参考这么几个参数:

带宽,延迟,可靠性,负载以及MTU那么在这里必须用到的是带宽和延迟

公式如下:256*min(BW)+sum(DLY) 那这里如果不乘以256就是IGRP的metric计算方法,因为IGRP以后大家不会再用了,在此就不再介绍。

其中BW就是带宽,DLY就是延迟

最后咱们来看一下EIGRP的具体配置,配置对大家来说就是张飞吃豆芽,总的来说就两个命令:

启动EIGRP:

Router eigrp 自治系统号

注意这个号是1-65535,注意这个自治系统号必须一样,实验中大家可以随便指定,但是工作中由运营商给我们分配好!

宣告主连网络号:

Network 网络号

这里有几个和验证相关的命令:

显示邻居表的内容:show ip eigrp neighbors

显示拓扑表的内容:show ip eigrp topology

显示当前EIGRP路由表内容: show ip route eigrp

查看EIGRP的流量信息: show ip eigrp traffic

显示当前运行的协议:show ip protocols

关于CCNA部分中的EIGRP就暂且讲这么多了,其实EIGRP还是相当复杂的一个协议,更多内容请参考CCNP部分。下面咱们还是以一个实验来结束这节课!

Lab:动态路由协议EIGRP

实验目的:通过EIGRP路由协议使得网络中达到全网互通的效果。

设备:三台Cisco系统路由器.

拓扑图:

中小企业网络管理:EIGRP动态路由协议
实验拓扑图

Router1上的配置:

RA>en

RA#conf t

RA(config)#interface s2/0

RA(config-if)#ip address 192.168.0.1 255.255.255.0

RA(config-if)#clock rate 64000

RA(config-if)#no shutdown

RA(config-if)#exit

RA(config)#interface fa0/0

RA(config-if)#ip address 10.10.10.1 255.255.255.0

RA(config-if)#no shutdown

RA(config-if)#exit

RA(config)#router eigrp 1

RA(config-router)#network 10.10.10.0

RA(config-router)#network 192.168.0.0

RA(config-router)#no auto-summary

Router2上的配置:

其他语句参考上面:

RB(config)#router eigrp 1

RB(config-router)#network

RB(config-router)#network 192.168.0.0

RB(config-router)#network 192.168.1.0

Router3上的操作:

RC(config)#router eigrp 1

RC(config-router)#network 192.168.1.0

RC(config-router)#network 20.20.20.0

验证:

中小企业网络管理:EIGRP动态路由协议 验证

我们在Router2上显示一下具体的路由信息:

中小企业网络管理:EIGRP动态路由协议
路由表

我们还可以使用 show ip eigrp neighbors显示邻居表的信息:

中小企业网络管理:EIGRP动态路由协议
邻居表

在邻居表中可以看到有两个邻居!至于其他相关验证请大家自行测试!至此,我们的路由协议就全部介绍完毕。

当然在工作中有可能会遇到在一个网络中同时运行OSPF,RIP或者是EIGRP三种协议的情况,那么就涉及到一个路由协议引入的问题。我们有时间再来讨论!