EIGRP

特点

  • 使用扩散更新算法(DUAL)实现快速汇聚并且保证无环
  • 更新方式:触发,增量,有界
    触发更新:与周期性对应,当网络结构发生变化才会发生发送更新,网络稳定不发送。
    增量更新:一般距离矢量基于路由表更新,增量更新只发生改变信息的路由条目信息(增加,删除,修改的都算)
    有界更新:判断对对方有没有影响,如果没有则不发送。
  • 使用单播和组播:组播地址是224.0.0.10
    判断接口是点对点连接,采用单播更新,如果是MA网络,采用组播更新
  • 支持可变长子网掩码
  • 支持自动汇总和手动汇总
  • 支持等价和非等价的负载均衡。

协议号:88,使用IP分组来传送路由信息

扩散更新算法(DUAL)

1.通告距离(AD),即邻居路由器到达目的网络的metric值。
2.可行距离(FD),从本地到目的地,经过下一跳路由器的metric值。
3.后继路由器(successor):最小的FD的下一跳路由器。
4.可行性条件(FC):AD < FDmin,就认为具有传输数据的能力。
5.可行后继路由器(FS):满足FC条件的,备份路由的下一跳路由器,可以是多个
DUAL算法的示例
在上图中间的各个参数的值

Network Neighbor FD AD
ZB3010
C2010
D4525
  • 后继路由器是C
  • E->D->Z是不满足FC条件的
  • 可行后继路由器是B

报文类型

Hello报文

Hello报文打招呼,建立邻居关系。并在邻居关系建立之后keep alive,该种报文不需要确认。
hello发送间隔:和介质有关系的,在T1速率之下或者是更低的NBMA接口上每60秒发送一次;在LAN和其 他串行接口上是5秒一次;
使用bandwidth可以指定速率从而影响发送频率
hello报文
TTL值(Time to live:2)等于2,表示这个hello包只能在本链路有效,不可跨越路由器;
protocol:EIGRP(88),88表示EIGRP的协议号;
目标IP是一个组播地址:224.0.0.10;
hello报文
opcode:Hello/Ack 说明这个包的类型
Autonomous System:20 as号为20;此值必须与对端匹配;
K1~K5:分别为1,0,1,0,0;只在hello报文中存在,用于验证邻居,此值必须匹配;
Hold time:15 邻居保持时间为15秒,是hello间隔的3倍;
路由器软件版本:12.4
EIGRP的版本号;1.2
这个时候的ack为0,一般不为0的情况下是确认报文
注意: EIGRP hello报文中携带了EIGRP路由协议的AS号 和K 值,如果这两个条件不一样两端的EIGRP邻居是无法建立的
hello报文的hold-time需要大于发送间隔(正常一般为三倍)否则eigrp邻居会翻滚

更新报文

更新报文:更新数据包只在必要的时候传递必要的信息(一般在邻居关系建立之后用该种报文传递必要的信息),当只有某一指定路由器更新时,使用单播发送,当多个路由器需要更新,则以组播形式发送,该种报文需要确认报文进行确认。
更新报文
拓扑信息中更新10.0.0.0/8的路由条目;
Delay:延迟为128000;
Bandwidth:带宽为256

查询报文

查询报文:路由丢失,可以向邻居查询关于路由信息,通常以组播方式进行发送,有时也单播,需要确认报文进行确认。
警告报文
首先收到报文内容是“Goodbye Message”的hello包
查询报文
R2以单播的方式发送给自己的邻居R1:
Opcode:Query(3)标识这是一个查询报文;
Prefix Length :标识了掩码长度为30位;
Destination:172.16.1.4 标识这条路由已经不可达;

应答报文

应答报文:对查询报文进行应答,单播可靠方式发送
应答报文
Opcode:Reply(4)标识这是一个应答报文;
如果收敛完毕了,就重置了序列号

确认报文

确认报文:ACK,专门用来应答上述几种报文。
 确认报文
opcode为5的并且ACK不为0的报文是ACK报文,而不是Hello报文;
Acknowledge:22表示是对序列号为22的数据包确认

配置eigrp

Switch(config)#ip routing
Switch(config)#router eigrp 100 //AS号为100,与对端保持一致即可
Switch(config-router)#network 1.1.1.1 0.0.0.0   //lo1的地址
Switch(config-router)#network 192.168.1.0 0.0.0.255 //接口的段
Switch(config-router)#network 1.1.1.0   //如果是整个ABC也可以不写反掩码
Switch(config-router)#no auto-summary //关闭eigrp的自动汇总功能

等价和非等价的负载均衡

等价负载均衡

当到达目的地有多条路径时,而多条路径的metric值一样,这时就可以做等价负载均衡,让数据包均衡转发,不过要看该路由器的转发方式,如果是快速转发方式,这种方式无用(本地产生的数据包除外)

Switch#sh ip eigrp topology 
IP-EIGRP Topology Table for AS 100/ID(2.2.2.2)

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
       r - Reply status

P 1.1.1.1/32, 1 successors, FD is 156160
         via 192.168.1.1 (156160/128256), FastEthernet0/1
P 2.2.2.2/32, 1 successors, FD is 128256
         via Connected, Loopback0
P 3.3.3.3/32, 1 successors, FD is 156160
         via 192.168.3.1 (156160/128256), FastEthernet0/2
P 192.168.1.0/24, 1 successors, FD is 28160
         via Connected, FastEthernet0/1
P 192.168.2.0/24, 2 successors, FD is 30720
         via 192.168.1.1 (30720/28160), FastEthernet0/1
         via 192.168.3.1 (30720/28160), FastEthernet0/2     //通过查看拓扑表可以看见到达192.168.2.0/24有两条路径,两者都为可行距离FD=30720,所有这里实现了等价负载均衡。
P 192.168.3.0/24, 1 successors, FD is 28160
         via Connected, FastEthernet0/2

非等价负载均衡

只有eigrp可以做非等价负载均衡,意思是,到达同一目的地有多条路径,而它们的度量值不一样时,可以做非等价负载均衡,可以通过设置variance值来进行不等价负载均衡,即两数相除取整加1,满足此条件的线路就可以按非等价负载均衡的方式发送数据包,也要看数据包的转发方式,如果是快速转发方式,可能没有效果,但是对于本地产生的数据包可以实现非等价,因为此时,本地产生的数据包还是按进程转发方式转发数据包的,对其他路由器的数据包,要关闭快速转发,可以启用cef,且cef对本地的数据包也是产生效果的,记住,不能更改默认的均衡方式,即默认的traffic-share balanced命令不能被修改!

Switch#sh ip eigrp topology 
IP-EIGRP Topology Table for AS 100/ID(2.2.2.2)

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
       r - Reply status

P 1.1.1.1/32, 1 successors, FD is 158720
         via 192.168.3.1 (158720/156160), FastEthernet0/2
         via 192.168.1.1 (2630400/128256), FastEthernet0/1
P 2.2.2.2/32, 1 successors, FD is 128256
         via Connected, Loopback0
P 3.3.3.3/32, 1 successors, FD is 156160
         via 192.168.3.1 (156160/128256), FastEthernet0/2
P 192.168.1.0/24, 1 successors, FD is 2502400
         via Connected, FastEthernet0/1
P 192.168.2.0/24, 1 successors, FD is 30720
         via 192.168.3.1 (30720/28160), FastEthernet0/2
         via 192.168.1.1 (2504960/28160), FastEthernet0/1  //修改接口带宽之后这里的FN值就不一样了
P 192.168.3.0/24, 1 successors, FD is 28160
         via Connected, FastEthernet0/2

EIGRP默认支持四条链路的不等代价的负载均衡,使用下面命令可支持六条

Switch(config)#router EIGRP 10
Switch(config-router)#maximum-paths 6
配置实现非等价负载均衡
R1(config)#router eigrp 1
R1(config-router)#variance 82 //  33=[2504960/ 30720]+1,满足条件.

EIGRP中的metric计算

metric计算
需要注意的是带宽是数据出口的接口带宽的最低值,延迟是数据出接口的延迟的累加。
注意单位。

EIGRP的三张表

邻居表

show ip eigrp neighbors

拓扑表

show ip eigrp topology

路由表

show ip route eigrp

查询命令

查询邻居

Switch#sh ip eigrp neighbors 
IP-EIGRP neighbors for process 100
H   Address         Interface      Hold Uptime    SRTT   RTO   Q   Seq
                                   (sec)          (ms)        Cnt  Num
0   192.168.1.2     Fa0/2          13   00:01:15  40     1000  0   9
1   192.168.2.2     Fa0/1          11   00:00:32  40     1000  0   14

H:邻居编号:
address:邻居的地址,主地址;
interface:标识是从本路由器哪个接口收到到hell报文;
hold:邻居保持时间;
Uptime:表示从该邻居收到的第一个报文到现在所经历的时间;
SRTT:表示从发出ERGRP报文开始到收到ACK所经历的平均时间;这个时间主要也是给RTO参 考的;
RTO:是单播重传ERGRP分组所要等待的时间;
Q:队列中等待的ERGRP分组数目,如果这个数大于0,那么说明可能存在拥塞问题;
seq:从邻居收到ERGRP分组的序列号;

查看当前配置的路由

 show ip protocols 命令来检查路由配置。
 show ip protocols 命令会显示路由器当前配置的路由协议。可以用来确认
- 是否已配置 RIP 路由
- 发送和接收 RIP 更新的接口是否正确
- 路由器通告的网络是否正确
- RIP 邻居是否发送了更新

查看eigrp拓扑表

Switch#Show ip eigrp topology
IP-EIGRP Topology Table for AS 100/ID(192.168.2.1)

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
       r - Reply status

P 1.1.1.1/32, 1 successors, FD is 128256
         via Connected, Loopback0
P 2.2.2.2/32, 1 successors, FD is 156160
         via 192.168.1.2 (156160/128256), FastEthernet0/2
P 3.3.3.3/32, 1 successors, FD is 156160
         via 192.168.2.2 (156160/128256), FastEthernet0/1
P 192.168.1.0/24, 1 successors, FD is 28160
         via Connected, FastEthernet0/2
P 192.168.2.0/24, 1 successors, FD is 28160
         via Connected, FastEthernet0/1
P 192.168.3.0/24, 2 successors, FD is 30720
         via 192.168.1.2 (30720/28160), FastEthernet0/2
         via 192.168.2.2 (30720/28160), FastEthernet0/1
Passive——收敛完成 
active——正在收敛 
updata——等待ack的状态
Query——发送了query,等待query的ack
Reply——发送了reply,等待reply的ack
Reply status——发送了query,收到了ack,等待reply
Sia status——卡在活动状态,发query90秒后,发送 SIA query报文确认对方是否收到,到达3分钟时候,就会将路由置为sia状态。
IP路由表

查看eigrp的路由表

Switch#show ip route eigrp 
     2.0.0.0/32 is subnetted, 1 subnets
D       2.2.2.2 [90/156160] via 192.168.1.2, 00:06:17, FastEthernet0/2
     3.0.0.0/32 is subnetted, 1 subnets
D       3.3.3.3 [90/156160] via 192.168.2.2, 00:05:33, FastEthernet0/1
D    192.168.3.0/24 [90/30720] via 192.168.1.2, 00:06:12, FastEthernet0/2
                    [90/30720] via 192.168.2.2, 00:05:33, FastEthernet0/1
重发布引入的是DEX,AD是170,内部是90.
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值