简述

  1. IGP 支持100跳
  2. 距离矢量协议(添加了链路状态特性:邻居关系、拓扑表等)——ADV(高级距离矢量协议 )
  3. 支持VLSM和CIDR
  4. 传输层协议。缺省情况下,IPv4封装,类型号为88。
  5. 报文类型:HELLO、QUERY、REPLY、UPDATE

特性

  • 高级距离矢量
  • 快速收敛
  • 支持VLSM和不连续子网
  • 增量更新(触发更新的一种,只把变化的路由表项发送出去,节约带宽)
  • 支持多种网络层协议(IPv4/IPv6/IPX/Apple Talk等),应用场合:一台路由器上的不同接口配置了不同的网络层协议,需要在该路由器上开启多个EIGRP进程,分别为不通过网络层协议服务
  • 灵活的网络设计(VLSM/CIDR)
  • 组播/单播,组播地址:224.0.0.10
  • 手动汇总
  • 100%无环
  • WANs和LANs的简单配置(相对于OSPF来说的)
  • 等价/非等价负载均衡

EIGRP四大底层机制

Neighbor discovery/recovery

  • Uses hello packets between neighbors
  • 不像RIP那样为收到的路由条目设置各种计时器,EIGRP通过检测邻居状态来判断其传送过来的路由有效性
  • HELLO包间隔5s或60s
  • Hold timer为hello间隔的3倍,到期后重置邻居关系

Reliable Transport Protocol(RTP)

  • 与媒体协议中的Real Time Protocol不同,后者是为了防止报文乱序(对语音、视频流量至关重要)
  • 因为EIGRP是用IP封装的传输层协议,不能保证可靠性,因此使用RTP保证可靠性(防丢包、重传机制)
  • 若重传报文16次之后,仍未收到ACK,则重置邻居关系

DUAL finit-state machine

Selects lowest-cost, loop free paths to each destination
理解DUAL算法需要的术语:
  • FD 可行距离
  • AD 通告距离
  • S 后继
  • FS 可行后继
  • FC 可行性条件

Protocol-dependent modules(PDMs)

支持多种网络层协议

EIGRP Tables

邻居表

HELLO包中的TTL=1
HELLO报文用来建立邻接关系
IP EIGRP Neighbor Table
Next-Hop Router Interface

这里的Interface是指自己的interface,而不是Next-Hop Router的。

拓扑表

Update传输路由条目,所有收到的路由条目都放入拓扑表

IP EIGRP Topology Table
Destination 1 FD and AD via Each Neighbor

路由表

DUAL对Topology Table计算,得到Routing Table

IP EIGRP Routing Table
Destination Best Route

EIGRP Packets

HELLO

组播和单播
单播手动配置,用于FR
5s bandwidth>=1.544Mbit/sEthernet
60s bandwidth<1.544Mbit/sFR子接口

Update

默认组播,只有当组播未开启时,才手动配置单播
增量更新

Query/Reply

是DUAL的重要机制
当丢失了一条EIGRP路由时,才发送Query。
Query组播,Reply单播

ACK

本质上是ACK位为1的HELLO报文,以单播发送
回复Update、Query、Reply
初始路由建立
A B
| HELLO =》|
| 《=HELLO|
| 《=UPDATE|
| ACK=》 |
| UPDATE=》|
| 《=ACK |
其中,UPDATE为初始更新报文,包含了所有路由条目。

EIGRP Metric

复合度量值
这些参数指的都是路径上的
Bandwidth 带宽各网段最小值
Delay 延迟 各网段之和
Reliability 可靠性各网段最小值
Loading 负载各网段最大值
MTU 其实并没有该参数 各网段最小值
K1、K2、K3、K4、K5默认值为1,0,1,0,0.
Metric = [K1*BW+(K2*BW)/(256-load)+k3*Delay]
如果K5!=0,则
Metric = Metric*[K5/(Reliability+K4)]
得到IGRP的Metric。
在此基础上,乘以256,就是EIGRP的Metric。
默认参数下,
Metric = 256*(BW + Delay)。
BW=10^7/Bandwidth,Bandwitdth单位为Kbps,Delay单位为10us。在路由器上,Delay的单位是us,需要转换一下。
因此,
Metric = 256 * (10^7/Bandwidth(Kbps)+Delay(us)/10)。
需要注意的是,这里的带宽和延迟指的是:控制层面路由传递的入接口带宽和延迟。
不要忘记环回口的入接口带宽和延迟。

EIGRP特性

自动汇总

汇总的目的是减小路由表大小。
在主类网络边界上,明细路由将自动汇总成一个主类网络路由。
在做自动汇总时,本地的路由表中将出现一条指向Null0的汇总路由,目的是在逻辑上防环和防止路由黑洞。
与RIP不同的是,EIGRP只会汇总本地产生的路由,不会汇总邻居传递过来的EIGRP路由。
需要注意的是,指向Null0的汇总路由只会存在于本地,不会被传递出去。它的管理距离是5。

手工汇总

EIGRP同时支持汇总和聚合。
手工汇总配置位置:
尽可能接近源的路由发送的出接口上。
手工汇总可以汇总本地产生的路由和邻居传递过来的EIGRP路由。
无论是内部EIGRP还是外部EIGRP的路由汇总后,都以内部EIGRP路由的形式发送。(仿真过程:redistribute connectted)
ip summary-address eigrp 90 192.168.8.0 255.255.252.0后面可以跟管理距离或leak-map(泄露列表)。
leak-map用来放走那些不希望手工汇总的明细路由。(通过ACL抓取路由)
如:
(config-if)#ip summary-address eigrp 90 192.168.8.0 255.255.252.0 leak-map TEST
(config)#access-list 10 permit 192.168.8.0 0.0.1.0
将匹配出192.168.8.0和192.168.9.0
(config)#router-map TEST permit 10
(config-route-map)#match ip address 10
leak-map:该工具用来放行手工汇总路由条目内的某些明细路由条目
route-map:在该例子中用来调用ACL抓取控制层面需要被放行的明细路由条目
ACL:用来抓取路由条目

负载均衡

支持等价和非等价负载均衡,默认情况下是等价负载均衡
默认情况下,最大支持4条负载均衡,可以用命令改为16条。
要支持非等价负载均衡,可以:
(config-router)#variance 倍数
倍数范围1~128
DUAL包括本地计算和扩散计算
所谓本地计算,是指在拓扑表中寻找备份路由。选择条件是FC条件:AD(FS)<FD(S)<FD(FS)。
默认情况下,3.3.3.0/24的路由下一跳地址为100.1.1.3。
即便设置了viriance,R2也不能成为非等价负载均衡,原因是AD(R2)不小于FD(SW1),不满足FC。
可以通过修改R2的f0/1接口的bandwidth或delay使其满足FC。

WAN配置

EIGRP支持多种WAN链路:
P2P
NUMA
默认情况下,EIGRP最多使用50%带宽。(未设置管理带宽,则使用实际带宽的50%;设置了管理带宽,则使用管理带宽的50%)
(config-if)#ip bandwidth-percent eigrp 进程号 百分比

DUAL算法

算法流程:

  • 跟踪邻居通告的所有路由,执行本地计算
  1. 选择无环最优路由(后继站),并记录所有可能的备份路由(可行后继站)。备份路由选择条件是FC条件:AD(FS)<FD(S)<FD(FS)。
  2. 若最优路由down了,则立即使用备份路由
  • 若没有可用的可行后继站,则启动扩散更新计算:
  1. 把要计算的路由条目状态从Passive改为Active
  2. 发送关于丢失路由条目的更新,并设置其FD为无穷大,表示该路由条目已经不可达
  3. 向邻居发送Query报文
  • 当路由器收到邻居的Query报文,有多重情况:
  1. 若该路由器的路由表中,查询者不是被查询路由的后继站,则将本地路由表中的后继站路由以Reply报文的形式发送给邻居。
  2. 若该路由器的路由表中,查询者是被查询路由的后继站,则判定本地拓扑表内是否拥有该路由的备份路由:
    1. 如果有,则优先更新本地路由表,将最优路由切换为可行后继站路由,并将其以Reply返回;
    2. 如果没有,则判断自己是否拥有除查询者之外的其他邻居:
      1. 若有,置Active,发Query;
      2. 若没有,删除该路由,发送Reply告知查询者该路由不可达。
  3. 若该路由器的路由表内无被查询路由,则直接Reply邻居表示该路由不可达。

EIGRP Stub

然而,DUAL算法也有缺点,有的时候需要限制Query报文的发送。

手工汇总
Stub特性
(config-router)#eigrp stub
后面可以加很多参数:connected leak-map receive-only redistributed static summary
receive-only表示只收不发,默认情况下为connected和summary,意思是只将直连路由和汇总路由发出去。
建议把最边缘的路由器作为stub路由器
summary参数是指这能发送由本地路由器汇总的路由,不能发送其他路由器汇总的路由。
static参数是指只能发送重分发至eigrp的static路由。(ip route + redistribue static)
redistributed参数是指只发送重分发至eigrp的所有类型的路由。
leak-map

Stuck in Active

如果有一个邻居在180s之内没能发送Reply,则重置邻接关系,并进入SIA状态。
改进后的方案,添加了SIA-Query和SIA-Reply报文。当180s倒计时到一半时,发送SIA-Query,若邻居返回SIA-Reply表明还在干活,将重置180s。
若连续发送7次SIA-Query后,仍未收到Reply,则不再发SIA-Query,待180s到时后,重置邻接关系。

Graceful Shutdown

当路由器不再运行EIGRP或者将某网段从network通告中删除时,将发送goodbye报文,告知邻居此网段已经不可达。

重置邻居关系的方式

  1. Hold timer到期
  2. 报文重传16次之后仍未收到ACK
  3. Active timer超时
其中,对于方式2,可以通过设置ACL实现重传16次这样的效果。如图:
在R1的f0/1上,设置扩展ACL,deny入站方向的EIGRP报文,命令为:
R1(config)#access-list 100 deny eigrp host 12.1.1.2 host 224.0.0.10
R1(config)#int fa 0/1
R1(config t)#ip access-group 100 in
当R2收到R1的HELLO报文后,R2会向R1发送UPDATE报文,重传16次之后,邻接关系因重传计时器超时而重置。
再当R2收到R1的HELLO报文后,重复上述动作。

建立邻接关系的条件

  • 相同的AS号
  • 不同的Router ID
  • 相同的K值
  • 认证

小特性

修改K值
(config-rouetr)#metric weights 0 K1 K2 K3 K4 K5
修改计时器
(config-if)#ip hello-time eigrp 90 时间
(config-if)#ip hold-time eigrp 90 时间

(config-router)#timers active-time 时间

认证

EIGRP只支持MD5密文认证
钥匙链认证
基于链路的
在R1和R2上分别执行:
(config)#key chain KEY_CHAIN_NAME
(config-keychain)#key 1
(config-keychain-key)#key-string Cisco
只有密钥id一致且key-string一致,才能认证成功。
(config-if)#ip authentication key-chain eigrp 90 KEY_CHAIN_NAME
(config-if)#ip authentication mode eigrp 90 md5
默认情况下,只会发送密钥id最小的密钥,密钥接收后只要在钥匙链中找到一把匹配成功的密钥即可单向认证成功。
如:
R1: key-chain: 10:CISCO 20:H3C 30:ARUBA
R2: key-chain: 10:TEST 20:CISCO
R2可以认证成功R1,反之不行。
高级属性:可以用send-lifetime和accpet-lifetime限制钥匙链中钥匙的发送和接收时间。
使用这个方法,可以实现定期自动更换密钥。

EIGRP高级特性

注入缺省路由

方式一:路由重分发

(config)#ip route 0.0.0.0 0.0.0.0 INTERFACE ADDRESS
(config)#router eigrp 90
(config-router)#redistribute static
sh ip route会出现一条外部EIGRP路由,管理距离为170。凡是重分发至EIGRP域的都是外部EIGRP,标记为D*EX。

方式二:network 0.0.0.0

(config)#ip route 0.0.0.0 0.0.0.0 INTERFACE
只能关联出站接口,不能关联下一跳地址。
然后,(config-router)#network 0.0.0.0
此时,路由表会出现一条标记为D*的内部EIGRP路由。

方式三:ip default-network

需要三步:
(config)#ip default-network 外网主类网段
添加该主类网段路由
(config)#ip route 外网主类网络 掩码 INTERFACE
在EIGRP进程中,通告该主类网段
(config-router)#network 该主类网段
一般情况下,缺省路由是像0.0.0.0一样的,但是,只有在这种方式中,路由表中会显示缺省路由为该外网主类网段路由。

方式四:路由聚合

路由聚合:将几个连续的主类路由聚合起来,形成超网路由。
在AS边界路由器连接内网的接口上,通过使用路由聚合实现缺省路由的下放。
(config-if)#ip summary-address eigrp 90 0.0.0.0 0.0.0.0

偏移列表

只能增加度量值,不能减小

(config)#access-list 10 permit 3.3.3.0

(config-router)#offset-list 10 out 600 fastEthernet 0/0

被动接口

(config-router)#passive-interface fa stEthernet 0/1
rip的被动接口不能发组播、广播,但可以发单播,可以接收任何rip报文
但是EIGRP的被动接口不能发送和接收任何形式的EIGRP报文。

单播

在FR这样一个NBMA环境中,若未开启伪广播特性,则必须使用单播特性。
(config-router)# neighbor 邻居接口地址 本地接口
链路两端必须都使用单播特性,才能建立

关闭水平分割

与RIP不同的是,不仅需要关闭物理水平分割,也要关闭逻辑水平分割。

适用于FR环境。

由于水平分割,R2和R3的路由不能互相传递,因此必须关闭R1的多点子接口的水平分割。命令:

(config-if)#no ip split-horizon 物理水平分割

(config-if)#no ip split-horizon eigrp 90 逻辑水平分割

2.CCNP闫辉视频笔记EIGRP相关推荐

  1. 1.CCNP闫辉视频笔记RIP

    RIP的13个高级特性 特性1:自动汇总 当要发送的路由前缀与发送接口的IP不在同一个主类网段,将丢弃明细路由,汇总之后再进行发送. 下述两类路由将进行自动汇总: 该路由器的本地路由 通过邻居获悉的R ...

  2. 3.CCNP闫辉视频笔记OSPF

    简介 OSPF(开放式最短路由优先协议) IGP LS 发送的是LSA(链路状态通告Link Status Advertisement),包含的是拓扑信息.加入LSDB,用SPF计算出Routing ...

  3. 4.CCNP闫辉视频笔记路由重分发

    名词 ASBR Boundary Router边界路由器 重分发是在边界路由器上进行的 单点双向重分发(缺陷:若该点down了,两边路由域就断了) Seed Metric 种子度量值default-m ...

  4. CCIE自学-by闫辉NP视频:QoS小结

    by-小世界http://redcisco.blog.163.com QoS小结:12:04 2014/3/23 QOS 的基本思想就是把数据分类,放在不同的队列中,根据不同类数据的要求保证它的优先传 ...

  5. CCIE自学-by闫辉NP视频:MPLS小结

    MPLS小结:MPLS(Multi-Protocol Label Switch) 传统的IP转发机制太慢了,MPLS目的就是取代传统IP的转发机制,但是,由于一些硬件等设备的速率都比较高了,MPLS的 ...

  6. CCIE自学-by闫辉NP视频:组播小结

    组播小结:12:24 2014/3/23 路由器转发组播流的方式和转发单播流有很大的差别,发送数据的组播源不知道接收者在何处.保证接收者能收到数据,并且数据不会在不必要的网络上存在是很重要的事情.路由 ...

  7. ccna 闫辉单臂路由 和 acl access control list

    ccna 闫辉单臂路由 和  acl   access control list 一单臂路由     当前园区网设计很少用到       成本低  小型的.局域网可用 二ACL access cont ...

  8. 虚幻4视频笔记002:精简StarterContent文件夹体积

    #虚幻4#视频笔记:精简StarterContent文件夹体积 . 在很多练习项目和测试项目中,都会使用StarterContent文件夹,但是该文件夹体积巨大,如果项目数量多会占用大量空间,并且分享 ...

  9. ng机器学习视频笔记(二) ——梯度下降算法解释以及求解θ

    ng机器学习视频笔记(二) --梯度下降算法解释以及求解θ (转载请附上本文链接--linhxx)   一.解释梯度算法 梯度算法公式以及简化的代价函数图,如上图所示. 1)偏导数 由上图可知,在a点 ...

最新文章

  1. 成功解决ImportError: Matplotlib qt-based backends require an external PyQt4, PyQt5,问题
  2. [C++] const与重载
  3. 电路常识性概念(2)-电容
  4. python爬虫面试题
  5. 统计天数(洛谷-P1567)
  6. A fully managed website and blog hosting platform
  7. python绝对值函数fabs_Python中abs()和math.fabs()区别
  8. 正运动控制固件升级问题记录
  9. ElasticSearch
  10. Java中文乱码问题如何解决?
  11. 计算机维护测试工作,(人才测评)桌面运维工程师的招聘入职测评方案
  12. FlashFXP注册码、密钥
  13. Chrome 进阶:用扩展武装自己
  14. 工业机器人的算法概述
  15. bittorrent下载_面向初学者的BitTorrent:如何开始下载Torrent
  16. 从来也科技首次入选Gartner RPA魔力象限报告,看国产RPA未来发展
  17. windows下安装PHP的swoole拓展
  18. python全栈工程师 pdf_python全栈工程师项目开发实例实战入门教程百度云
  19. 数学建模学习笔记(第三章:量纲分析法,量纲齐次原则)
  20. [转载]快速记忆日语单词,一年考过1级!

热门文章

  1. 今日小程序推荐:斑马音乐-没被发现的好音乐
  2. GCJ经纬度(腾讯、高德)转WGS84经纬度EXCEL算法
  3. 系统经常假死该如何解决
  4. 2018年中小学计算机培训,2018年中小学教师信息技术应用能力提升培训心得体会...
  5. js倒计时代码(从现在距离明年元旦还剩多少时间)?
  6. 安装ubuntu20.04, CUDA11.4, cnDNN, tensorflow, pytorch
  7. 卡耐基《人性的弱点》读书笔记
  8. 如何将mac用到极致
  9. CoppeliaSim学习笔记之仿真环境与小车模型的搭建
  10. 蓝桥31天|今天4道题Day11|C++