EIGRP--增强型内部网关路由协议--cisco私有(动态路由协议二)

EIGRP enhanced interior gateway routing protocol 增强型内部网关路由协议

– 无类别
– 距离矢量型协议
– 适用范围:IGP协议;Cisco私有;
– 基于IP封装,跨层封装到网络层,协议号88;
– 更新方式:

  1. 组播更新:224.0.0.10 支持等开销、非等开销;
  2. 增量更新----无周期更新,仅触发更新;---- 单次的更新流量少,极高可靠性

– 支持多种网络层协议(PDM)-- 支持多种网络层协议(PDM)
– 在低速链路与高速链路中配置相同(RTP流控机制)

1、4大组件:

  1. hello包 ----邻居的发现、建立、保活
  2. RTP -可靠传输协议----确认、排序、重传、流控
    (eigrp的更新流量不得超过链路带宽的百分之50)
  3. PDM–支持多种网络层协议模块,用于兼容不同网络层协议
  4. DUAL–扩散更新算法、弥散更新算法

2、工作过程:
启动配置后,EIGRP协议将向本地所有的邻居发送hello包,建立邻居关系,生成邻居表;邻居关系建立后,邻居间使用更新包,共享本地路由信息;共享完成后,所有设备生成拓扑表—最佳和备份路径表;再基于最佳选路规则,将拓扑表中的最佳路径放置于路由表中;-----收敛完成,仅hello包周期保活即可;

结构突变:
新增网段—直连新增网段的设备,使用更新包,将路由传递给所有的邻居即可
断开网段—直连断开网段的设备,将向所有的邻居发送查询包,该查询包将扩散到网络的末梢,之后使用应答包进行回复;结果:
1)寻找到新的路由
2)删除所有信息
无法沟通 —无法收到邻居的ACK、hello,标志着邻居关系存在故障,将在hold time 到时时断开邻居关系,能否重建,看hello包;

注:更新包、查询包、应答包—基于RTP工作-可靠传输
这三种包发送到邻居处后,邻居必须进行ACK的确认;若收不到确认,将进行单播重传,最大默认重传16次,16次后若依然没有ACK,将断开邻居关系;这些信息还将被排序,被流控;

3、EIGRP邻居建立条件:

  1. AS号必须一致
  2. K值必须一致
  3. 认证(仅MD5)

双方接口IP必须在同一网段,主类掩码可以不同(EIGRP更新源检测),可以使用辅助地址(第二地址)建立邻居,但是发送EIGRP报文只能是主地址(EIGRP不能关闭更新源检测)
EIGRP router-ID 在15.0以上IOS中,邻居之间router-ID若一致,不影响邻居的正常建立,但是不会学习对方的直连路由

4、具体配置:

r1(config)#router eigrp 90    //启动时需要配置AS号;理解为全网一致的进程号;
r1(config-router)#no auto-summary    //DV型协议建议关闭自动汇总;
宣告:1、激活   2、路由
r1(config-router)#network 1.0.0.0
r1(config-router)#network 124.1.1.1 0.0.0.0   //可以主类宣告,也可使用反掩码精确匹配宣告;

启动配置完成后,邻居间使用hello包建立邻居关系,生成邻居表:
Hello包—hello time 5s或60s,hold time 为hello 的3倍;
接口带宽小于2.048M为60s,大于或等于2.048M为5s;时间与链路封装有关
邻居间hello包中必须完全一致的参数: AS号 认证字段 K值

r2#show ip eigrp neighbors   查看邻居表
IP-EIGRP neighbors for process 90
H   Address                 Interface       Hold Uptime   SRTT   RTO  Q    Seq
                                            (sec)           (ms)    Cnt    Num
2   124.1.1.4               Fa0/0             10 00:03:51   36   216  0     9
1   23.1.1.2                Se1/1             14 00:04:04   28   200  0     11
0   124.1.1.1               Fa0/0             14 00:05:04   42   252  0     8
  邻居接口ip地址         和邻居直连的接口

上述表中的特性含义:

  1. H:建立邻居的顺序
  2. SRTT:平均往返时间—5min内发出数据包到邻居后返回ack的平均时间
  3. RTO:重传间隔时间(单播)----基于SRTT和具体重传的次数来自动计算
    (multicast flow timer:组播流计时器,使用组播方式发送报文。需要单播重传的等待时间)
  4. Qcnt:队列统计—若为数字1,标示有一条路由正在收敛中;
  5. Seq num:该接口发送最后一个报文里的序列号

邻居关系建立,邻居间使用更新包共享路由信息;在收集到所有邻居的信息后,本地生成拓扑表: —最佳和备份路径

r3(config)#interface s1/1
r3(config-if)#bandwidth 800 //修改接口参考带宽
真实的物理带宽----硬件、QOS;参考带宽不影响实际带宽,仅用于影响路由协议的计算;
r3#show ip eigrp topology  查看拓扑表
IP-EIGRP Topology Table for AS(90)/ID(3.3.3.3)

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
       r - reply Status, s - sia Status 
P 1.1.1.0/24, 1 successors, FD is 2300416
        via 23.1.1.1 (2300416/156160), Serial1/0
        via 34.1.1.2 (3842560/156160), Serial1/1

【1】关于拓扑表中的字母

P 1.1.1.0/24, 1 successors, FD is 2300416

条目前端字母P,标示该条目已经收敛完成,且最佳路径加载于路由表中;

A 2.2.2.0/24, 1 successors, FD is Inaccessible, Q
    1 replies, active 00:00:03, query-origin: Local origin
      Remaining replies:
         via 23.1.1.2, r, Serial1/1

条目前端字母A,标示该条目正处于收敛中;在收敛过程中,条目后方存在字母来标示具体的阶段;
Q标示本地已经发出查询,正在等待ACK;
Qr标示本地已经收到邻居的ACK,正在等待邻居的应答包;
QR标示邻居已经回复应答,准备发出ACK;
U 本地已经回复ACK;
(若应答为无路,将直接删除该条目;若应答新的路径,那么最佳路径被加表;同时A转P;)

【2】S—卡在活动状态—本地拓扑表中的条目信息一直处于活动中,无法收敛完成;
原因:

  1. 网络深度过深
  2. 错误的配置或策略导致

默认eigrp协议存在活动计时器—3min;一条条目最多活动3min,之后无条件删除信息,同时断开邻居关系;若错误的断开邻居关系,将导致网络的不稳定;
解决方案:
1、网络过深—修改活动计时器

r2(config)#router eigrp 90
r2(config-router)#timers active-time ?
  <1-65535>  EIGRP active-state time limit in minutes
  disabled   disable EIGRP time limit for active state

2、针对错误的配置或策略,IOS12以上存在–卡在活动状态计时器
活动计时器进行到一半时,向邻居发送卡在活动状态查询,若收到回复,那么活动计时到时时,仅删除信息,不断开邻居关系;

【3】EIGRP非等开销负载均衡
拓扑表中的括号内容

P 1.1.1.0/24, 1 successors, FD is 2300416
        via 23.1.1.1 (2300416/156160), Serial1/0
        via 34.1.1.2 (3842560/156160), Serial1/1
                    //  FD   /   AD

FD:可行距离—本地通过该路径到达目标的度量值
AD:通告距离—该路径上的邻居(下一跳)达到目标的度量值
FC:可行条件----成为备份路径的条件—备份路径的AD必须小于不能等于最佳路径的FD值

备份路径的作用在于可和最佳路径一起实现非等开销负载均衡;
非等开销负载均衡—当到达目标地址时,若同时存在最佳和备份路径时,可以让设备将流量按比例延这些路径同时转发;

r3#show ip protocols 
  EIGRP maximum metric variance 1  差异值

差异值:备份路径的FD/最佳路径的FD= 向上取整 --1.1为2;
注:默认差异值为1,标示仅支持等开销负载均衡;

r3(config)#router eigrp 90
r3(config-router)#variance 2

修改差异值为2,表示2倍关系内的备份路径将加载到路由表中;
Variance 128可以匹配所有的路径

拓扑表生成后,默认将最佳路径加载于路由表中;
D - EIGRP, EX - EIGRP external
使用字母D表示EIGRP计算产生的路由条目;
D EX 标示ASBR(自治系统边界路由器、协议边界路由器)从其他协议中学习到的路由,共享进入EIGRP;

管理距离----D 90 D EX170

度量:
(K1 = 1, K2 = 0, K3 = 1, K4 = 0, K5 = 0): 权重值
当K5为0时:
Metric = [K1 * BW + ((K2 * BW) / (256 – load)) + K3 * delay]
当K5大于0时:
Metric = [K1 * BW + ((K2 * BW) / (256 – load)) + K3 * delay] * [K5 / (reliability + K4)]:

若使用默认的K值,度量=带宽+延时

  1. 带宽=(10^7/整段路径路由传播入方向最小带宽)*256
  2. 负载=(最大负载)
  3. 延时=(整段路径控制层面入口延时总和/10)*256
  4. 可靠性=(最小可靠性)
  5. MTU=(最小MTU)

256放大因子:1、放大数值便于比较 2、兼容IGRP;

K值的修改—1、引入其他的参数来进行度量计算 2、扩大EIGRP协议的工作半径
切记:选路的干涉是靠修改实际的参数–带宽、延时、可靠性、负载;或者使用策略;
修改K值:

r1(config)#router eigrp 90
r1(config-router)#metric weights 0 1 1 1 1 1   

切记:全网必须一致,否则无法建立邻居关系;

5、扩展配置:
状态机–刷新邻居关系—若更新信息中,产生与之前不同的信息时,EIGRP为增量更新,必须让设备通过刷新邻居关系的方法来清除原有的信息;

手工汇总–在更新源路由器上所有更新发出的接口上配置
1)支持CIDR汇总
2)在路由传播方向出方向上实施
3)自动产生指向null 0的路由,防止黑洞可能导致的路由换路(RIP不会产生)
4)汇总路由的AD值为5(可以重写一条静态,吓一跳或出接口随便写一个,然后后面跟个AD值,在看路由进行验证,重写的AD值不变>5则不变,<5路由条目则改变)
5)汇总后metric为最小的
6)当所有明细消失之后,汇总才会消失
汇总可以使用leak-map泄露某些明细路由
leak-map:就是route-map,最后调用写成leak-map + route-map的名称
ACL后面跟的是通配符,不是反掩码

r3(config)#interface s1/1
r3(config-if)#ip summary-address eigrp 90 3.3.2.0 255.255.254.0

汇总后,汇总配置的设备上自动产生到达汇总地址的空接口防环路由;

加密认证(仅支持MD5)

r2(config)#key chain xxx
r2(config-keychain)#key 1
r2(config-keychain-key)#key-string cisco123
 
r2(config)#interface s1/1
r2(config-if)#ip authentication key-chain eigrp 90 xxx
r2(config-if)#ip authentication mode eigrp 90 md5 

被动接口和单播建邻
被动接口:不发送任何报文

r1(config)#router eigrp 90
r1(config-router)#passive-interface serial 1/1
//单播建邻:指定邻居,必须加出接口,使用单播发送所有报文
r1(config-router)#neighbor 12.1.1.2 serial 1/1

加快收敛 hello 为5s时不建议修改; 为60s时可以修改

r1(config)#interface s1/1
r1(config-if)#ip hello-interval eigrp 90 5
r1(config-if)#ip hold-time eigrp 90 15

在和邻居直连的接口上修改即可,建议邻居间一致;

缺省路由
在边界路由器上所有直连内网的接口上进行汇总配置;配置地址—0.0.0.0/0

r1(config)#interface fastEthernet 0/0
r1(config-if)#ip summary-address eigrp 90 0.0.0.0 0.0.0.0

此时还需要边界路由器静态缺省指向ISP;
先在边界路由器上静态缺省指向ISP,然后利用重发布技术将条目共享到内网中

r1(config)#router eigrp 90
r1(config-router)#redistribute static 

network宣告直连静态缺省
将主类定义为default-network,并通告进入EIGRP(本地拥有的主类都可以定义)
Allowed in允许接受缺省 out允许发送缺省

干涉选路–偏移列表 在控制层面流量的入或出接口上,对路由信息中的度量值进行加大;可以叠加;
修改AD值

r2(config-router)#distance 100   200+更新源 +反掩码)
                      内部 外部

更新源只能修改内部AD值,外部无效

修改metric值
修改bandwith
修改delay
offset-list

r2(config)#access-list 1 permit 3.3.2.0
r2(config)#router eigrp 90
r2(config-router)#offset-list 1 in 10000 serial 1/1

路由过滤:使用分发列表

r2(config)#router eigrp 99
r2(config-router)#distribute-list 2 o fastEthernet 0/0

EIGRP末节路由器:默认仅传递直连和汇总路由

r2(config-router)#eigrp stub (+直连 汇总 静态 leak-map 重发布)

创作者:Eric· Charles

猜你喜欢

转载自blog.csdn.net/qq_42197548/article/details/81937630