EIGRP原理及其配置

  • EIGRP原理及其配置

    • EIGRP的特点
    • EIGRP操作描述
      • EIGRP报文
      • EIGRP建立邻居的过程
      • EIGRP的基本配置
      • 修改EIGRP计时器
    • 构建EIGRP拓扑表

EIGRP的特点

  1. EIGRP同时支持IPv4与IPv6,有类与无类(vlsm与cidr)。
  2. EIGRP支持等价负载均衡与不等价负载均衡。
  3. EIGRP是一种无环的路由协议。
  4. EIGRP是一种无周期更新的增量更新型路由协议(只有区域内发生变化时才触发更新)。
  5. 封装:IP,协议号:88
  6. IP协议是不可靠传输协议,但EIGRP内置一种可靠的传输方式,成为RTP(类似TCP)。
    设置有ACK 确认报文。
  7. EIGRP使用DUAL(扩散更新算法)。

EIGRP操作描述

EIGRP拥有三张表:邻居表,拓扑表和路由表,储存在邻居表中的是所有与此设备建立邻居关系的设备,用主IP地址和指向这个邻居的接口标识。储存在拓扑表中的是所有邻居设备宣告的所有目的路由,并且记录他们的度量值与这台邻居设备到达目的网络的度量值,而到达目的网络最优的度量值的路由叫后继路由,此路由会放在路由表中并通告给其他邻居。路由表就不必多说了,由EIGRP协议选出的后继路由会插入到现有路由表中,协议标识为D,管理距离有90, 170和5三种。

EIGRP报文

  1. Hello报文:用于建立邻居关系以及维护建立好的邻居关系,每5秒发送一次Hello包,Hello包等待时间为15秒(EIGRP会等待三倍的发送时间),若超过15秒还没有收到Hello包,会解除邻居关系。
  2. Update报文:用于传递更新信息,接收到之后存入拓扑表。
  3. Query报文:用于查询拓扑变化,每当区域内拓扑发生变化时,会触发查询,便会发送Query包。
  4. Reply报文:用于回复Query包。
  5. ACK报文:ACK确认(RTP可靠传输协议引出),只对Update,Query,Reply报文进行确认,不对Hello报文进行确认。

EIGRP建立邻居的过程


1. R1发送Hello包
2. R2收到R1 发送的Hello包,并且向R1 发送Hello包将R1作为自己的邻居
3. R2向自己的邻居(R1)发送Update包,包括自己的完整路由信息
4. R1收到R2的Hello包,并把R2作为自己的邻居
5. R1收到R2的Update包,将其中信息存入拓扑表并对此数据包回应,发送ACK确认包
6. R1向自己的邻居(R2)发送Update包,包括自己的完整路由信息
7. R2收到R1的ACK确认包,确定R1收到了自己的路由信息
8. R2收到R1的Update包,将其中信息存入拓扑表并对此数据包回应,发送ACK确认包

EIGRP的基本配置

我们以以下拓扑图为例:

对R1进行基本配置:

R1(config)#interface fastEthernet 0/0
R1(config-if)#ip address 192.168.1.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#exit R1(config)#interface loopback 0
R1(config-if)#ip address 1.1.1.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#exit

对R2进行基本配置:

R2(config)#interface fastEthernet 0/0
R2(config-if)#ip address 192.168.1.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#exit R2(config)#interface fastEthernet 0/1
R2(config-if)#ip address 192.168.2.1 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#exit R2(config)#interface loopback 0
R2(config-if)#ip address 2.2.2.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#exit

对R3进行基本配置:

R3(config)#interface fastEthernet 0/1
R3(config-if)#ip address 192.168.2.2 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#exit R3(config)#interface fastEthernet 0/0
R3(config-if)#ip address 192.168.3.1 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#exit R3(config)#interface loopback 0
R3(config-if)#ip address 3.3.3.3 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#exit

对R4进行基本配置:

R4(config)#interface fastEthernet 0/0
R4(config-if)#ip address 192.168.3.2 255.255.255.0
R4(config-if)#no shutdown
R4(config-if)#exit R4(config)#interface loopback 0
R4(config-if)#ip address 4.4.4.4 255.255.255.0
R4(config-if)#no shutdown
R4(config-if)#exit

以上就是这四台路由器的基本配置,接下来我们进行EIGRP实验,首先在R1,R2,R3三台路由器上启动EIGRP,配置命令如下:
R1上的配置命令:

R1(config)#router eigrp 100
R1(config-router)#no auto-summary
R1(config-router)#network 1.1.1.1 0.0.0.255
R1(config-router)#network 192.168.1.0 0.0.0.255

R2上的配置命令:

R2(config)#router eigrp 100
R2(config-router)#no auto-summary
R2(config-router)#network 2.2.2.2 0.0.0.255
R2(config-router)#network 192.168.1.0 0.0.0.255
R2(config-router)#network 192.168.2.0 0.0.0.255

R3上的配置命令:

R3(config)#router eigrp 100
R3(config-router)#no auto-summary
R3(config-router)#network 192.168.2.0 0.0.0.255
R3(config-router)#network 3.3.3.3 0.0.0.255
R3(config-router)#network 192.168.3.0 0.0.0.255

我们使用router eigrp as号 这条命令来进入EIGRP配置,no auto-summary用来关闭自动汇总(稍后介绍),使用network 网段ip 反掩码(通配符掩码)来宣告想要让其他设备知道的路由,反掩码就是与掩码相反,即1,0互换。
进行这般配置之后我们来查看一下R1的路由表:

R1#show ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGPD - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2E1 - OSPF external type 1, E2 - OSPF external type 2i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2ia - IS-IS inter area, * - candidate default, U - per-user static routeo - ODR, P - periodic downloaded static routeGateway of last resort is not set1.0.0.0/24 is subnetted, 1 subnets
C       1.1.1.0 is directly connected, Loopback02.0.0.0/24 is subnetted, 1 subnets
D       2.2.2.0 [90/409600] via 192.168.1.2, 00:06:03, FastEthernet0/03.0.0.0/24 is subnetted, 1 subnets
D       3.3.3.0 [90/435200] via 192.168.1.2, 00:05:23, FastEthernet0/0
C    192.168.1.0/24 is directly connected, FastEthernet0/0
D    192.168.2.0/24 [90/307200] via 192.168.1.2, 00:05:53, FastEthernet0/0
D    192.168.3.0/24 [90/332800] via 192.168.1.2, 00:02:44, FastEthernet0/0

标识为D的路由条目为通过EIGRP学习获得,由此可见我们已经将(R2,R3)所有通过network宣告的路由学习到了。

以D 192.168.2.0/24 [90/307200] via 192.168.1.2, 00:05:53, FastEthernet0/0为例这里D表示此条路由通过EIGRP学习,90为EIGRP的管理距离,307200为此条路由的度量值(FD) via 192.168.1.2为下一跳路由器,后面FastEthernet0/0是出接口

我们再R2上查看一下邻居关系:

R2#show ip eigrp neighbors
IP-EIGRP neighbors for process 100
H   Address                 Interface       Hold Uptime   SRTT   RTO  Q  Seq(sec)         (ms)       Cnt Num
1   192.168.2.2             Fa0/1             14 00:07:44   87   522  0  6
0   192.168.1.1             Fa0/0             13 00:08:16  709  4254  0  4

H为会话建立顺序,Address为对端的IP地址,Interface为连接对端的端口,Hold为在没有收到对方消息以至于宣布邻居不可达之前等待的总时间,Uptime为邻居建立的总时间,SRTT为(数据包)平均往返时间,RTO为重传超时,若路由器发送了需要ACK应答的数据包但并没有收到回应,会等待RTO的时间后重新发送(最多16次),若还是没有收到,那么就会取消邻居关系。RTO时间根据种种因素计算而出,并不确定。

也可以使用以下语句查询:

R2#show ip eigrp neighbors detail
IP-EIGRP neighbors for process 100
H   Address                 Interface       Hold Uptime   SRTT   RTO  Q  Seq(sec)         (ms)       Cnt Num
1   192.168.2.2             Fa0/1             13 00:21:24   87   522  0  6Version 12.4/1.2, Retrans: 1, Retries: 0, Prefixes: 2
0   192.168.1.1             Fa0/0             10 00:21:57  709  4254  0  4Version 12.4/1.2, Retrans: 0, Retries: 0, Prefixes: 1

Retrans为数据包重传的次数,Retries为尝试重传的次数,Prefixes为收到前缀的数量。

使用以下语句可以查看活跃的EIGRP端口:

R2#show ip eigrp interfaces
IP-EIGRP interfaces for process 100Xmit Queue   Mean   Pacing Time   Multicast    Pending
Interface        Peers  Un/Reliable  SRTT   Un/Reliable   Flow Timer   Routes
Lo0                0        0/0         0       0/1            0           0
Fa0/0              1        0/0       709       0/2         3444           0
Fa0/1              1        0/0        87       0/2          376           0

修改EIGRP计时器

EIGRP有Hello计时器和保持计时器两种计时器,Hello计时器控制的是发送Hello包的时间(默认为5s),保持计时器控制的是未收到Hello包后超出计时器范围就会取消邻居关系(默认为15s,三倍发送时间)。在低速NVMA链路上Hello计时器和保持计时器分别为60s和180s。
需要注意的是链路两端必须要拥有相同的计时器才能建立邻居关系,打个比方,假如一方A的Hello计时器和保持计时器为5s和15s,而另一方B的Hello计时器和保持计时器为20s和60s,那么就会在已经超出A的保持计时器时间而B还没有到下一个Hello包发送时间。这样邻居关系就会被A取消。
我们可以再R2上使用以下命令来查看Hello包发送情况:

R2#debug eigrp packets hello
EIGRP Packets debugging is on(HELLO)
R2#
*Mar  1 00:42:26.395: EIGRP: Sending HELLO on FastEthernet0/1
*Mar  1 00:42:26.395:   AS 100, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0
R2#
*Mar  1 00:42:27.799: EIGRP: Received HELLO on FastEthernet0/1 nbr 192.168.2.2
*Mar  1 00:42:27.803:   AS 100, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0
*Mar  1 00:42:28.575: EIGRP: Sending HELLO on Loopback0
*Mar  1 00:42:28.575:   AS 100, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0
*Mar  1 00:42:28.583: EIGRP: Received HELLO on Loopback0 nbr 2.2.2.2
*Mar  1 00:42:28.583:   AS 100, Flags 0x0, Seq 0/0 idbQ 0/0
R2#
*Mar  1 00:42:30.483: EIGRP: Sending HELLO on FastEthernet0/0
*Mar  1 00:42:30.483:   AS 100, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0
*Mar  1 00:42:30.731: EIGRP: Received HELLO on FastEthernet0/0 nbr 192.168.1.1
*Mar  1 00:42:30.735:   AS 100, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0
*Mar  1 00:42:31.343: EIGRP: Sending HELLO on FastEthernet0/1
*Mar  1 00:42:31.343:   AS 100, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0
R2#
*Mar  1 00:42:32.595: EIGRP: Received HELLO on FastEthernet0/1 nbr 192.168.2.2
*Mar  1 00:42:32.599:   AS 100, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0

由此可见默认情况确实是每5s发送一次EIGRP Hello包。
我们使用如下命令来修改EIGRP计时器:

R2(config)#int f0/0
R2(config-if)#ip hello-interval eigrp 100 10
R2(config-if)#ip hold-time eigrp 100 30
R2(config-if)#exit
R2(config)#exitR2#show ip eigrp interfaces detail fastEthernet 0/0
IP-EIGRP interfaces for process 100Xmit Queue   Mean   Pacing Time   Multicast    Pending
Interface        Peers  Un/Reliable  SRTT   Un/Reliable   Flow Timer   Routes
Fa0/0              1        0/0       709       0/2         3444           0Hello interval is 10 secNext xmit serial <none>Un/reliable mcasts: 0/4  Un/reliable ucasts: 3/3Mcast exceptions: 2  CR packets: 1  ACKs suppressed: 0Retransmissions sent: 0  Out-of-sequence rcvd: 0Authentication mode is not setUse multicast

可见已经修改成功。

构建EIGRP拓扑表

拓扑表中储存的是所有的从邻居收到的路由信息,而一条路由想要被插入路由表中,就必须满足可行性条件,这个条件就是EIGRP防止网络出现环路的方法。到达相同路径的路由中,度量最低的路由成为后继路由,而其他路由只有满足一定条件才可以成为备用的路由,在这里称为可行后继路由,旨在当后继路由出现故障无法到达目的地时代替后继路由转发数据以保持网络畅通。
称为可行后继路由器的条件为AD<FD
FD和AD如下图所示

  • FD(Feasible Distance):可行距离,即到达目的网络的最优路径,对R1来说有两条路到达目的网络,而通过R3的距离(12)小于通过R2的距离(30)所以通过R3的距离12就是通往目的网络的FD。
  • AD(Advertised Distance):通告距离,通告距离是下一跳路由器发送给自己的它到达目的网络的最优距离,即下一跳的FD,对于R1来说R2的AD就是20,R3的AD就是10。


所以最优路径成为后继路由之后,满足条件的路由会变成可行后继路由,这个条件就是可行后继路由的AD必须小于到达目的网络的FD。如果有多个路由到达目的网络的度量值相同,则可能出现多个后继路由,EIGRP会将他们都插入到路由表中并且等价负载均衡(默认最多4个)。而可行后继路由是一个度量值大于FD但它的AD小于FD的路由(保证无环路),对应的路由器称为可行后继路由器。

EIGRP原理及配置相关推荐

  1. 网络(八)之OSPF协议的原理及配置

    OSPF协议的原理及配置 续上篇的rip协议,本篇讲解一下目前广泛应用的动态路由协议ospf. OSPF概念 开放式最短路径优先(Open Shortest Path First,OSPF)是广泛使用 ...

  2. 第五章 路由器的工作原理及其配置

    第五章 路由器的工作原理及其配置 5.1 广域网服务 WAN连接的目的是在两个远离的网络之间尽可能高效率传递数据.连接的效率越高,到最终用户的连接就越透明.WAN连接通常比L A N连接要慢.例如,一 ...

  3. 华为模拟器——静态路由的原理与配置、动态路由

    静态路由的原理与配置.动态路由 路由技术: 二层(数据链路层)--交换机:mac地址.mac地址表(转发数据的依据). 三层(网络层)--路由器:IP地址.路由表(数据转发表). 一.路由表的主要作用 ...

  4. 静态路由_【零基础学云计算】静态路由!静态路由!静态路由!原理与配置

    本次和各位小伙伴分享的是静态路由的原理和配置,接下来我会从以下几个方面来和大家进行解析: 1.路由器的工作原理 2.路由表的形成 3.静态路由和默认路由 4.路由器转发数据包的封装过程 5.静态路由和 ...

  5. centeros7网络服务无法启动_Linux网络服务02——DHCP原理与配置

    Linux网络服务02--DHCP原理与配置 一.DHCP服务概述 1.DHCP(Dynamic Host Configuration Protocol)动态主机配置协议 DHCP是由Internet ...

  6. ospf虚链路原理和配置

    ospf虚链路原理和配置 了解ospf虚链路的作用:将设计不合理的非骨干区域连接到骨干区域, 2.用于修复(连接)断裂的ospf骨干区域 了解ospf虚链路的特点:1.只能配置在两个ABR之间 2.虚 ...

  7. DNSSEC 原理、配置与布署简介

    本文转载自:http://netsec.ccert.edu.cn/duanhx/archives/1479 作者:段海新,清华大学信息网络工程研究中心 ------------------------ ...

  8. 【鬼网络】之DHCP原理与配置

    序言 DHCP 序言 一.DHCP工作原理 1. 什么是DHCP 2.DHCP的分配方式 3.DHCP的租约过程 二.DHCP服务器的配置 DHCP客户端的使用 DHCP中继原理与配置 1.主配置文件 ...

  9. Oracle 11g RAC SCAN ip的原理及配置

    Oracle 11g RAC SCAN ip的原理及配置   Oracle 11g RAC网格即插即用(GPnP)工作原理: SCAN概念:     先介绍一下什么叫SCAN,SCAN(Single ...

最新文章

  1. 针对《评人工智能如何走向新阶段》一文,继续发布国内外的跟贴留言427-438条如下:
  2. 电脑卡得厉害,得采取一些措施了
  3. Python模块学习 ---- re正则表达式
  4. 利用STM32F唯一96bit序列号实现反拷贝加密的源代码公开(转)
  5. 华为帐号忘记显示服务器繁忙,显示云服务器繁忙怎么操作
  6. 如何判断当前请求的是健康检查API
  7. Linux下安装Redis及搭建主从
  8. 二、工作量证明链-区块链技术的雏形
  9. zabbix自动同步ldap帐号到数据库
  10. 判断鼠标向右或向左滑动,响应不同的事件
  11. 谷歌浏览器插件之广告净化器
  12. 苹果手机安装火狐xpi_为Firefox扩展安装添加XPI MIME类型
  13. 数据结构入门(2)——线性表、堆栈和队列
  14. 亚马逊跨境电商如何运营模式?
  15. 网络自动化装机(批量装机)
  16. 一进制存在吗?为什么?
  17. 图形渲染与UWA论坛,mipi官网
  18. 131-从键盘输入一个字符串,将其中的小写字母全部换成大写字母,然后输出到一个磁盘文件
  19. stc89c52rc单片机点亮LED------汇编
  20. 【Python实践】你可能没有见过的码代码小技巧1

热门文章

  1. 4. “强人”的“皮球”生涯
  2. rails--图片的使用
  3. :is()伪类选择器 :where()伪类选择器
  4. 永定城 × 奇点云 | 数字新商贸的全国样板长什么样?
  5. OpenXml操作Word的一些操作总结. - 天天不在
  6. 怎样能让大腿变细方法 揭秘如何瘦大腿和小腿
  7. windows电脑重装系统步骤、cmd常用命令等
  8. 后台管理系统-登录页面
  9. vlan-type dot1q和dot1q termination的区别
  10. go 中 结构体 map互转