距离向量路由协议——IGRP和EIGRP

news2024/11/18 11:36:37

IGRP-内部网关路由协议

  • IGRP(Interior Gateway Routing Protocol,内部网关路由协议)是一种动态距离向量路由协议,它是Cisco公司在20世纪80年代中期设计的,是Cisco专用路由协议。目前在Cisco高版本的IOS已经对IGRP不提供支持,完全支持EIGEP路由协议。
  • 它的特征如下:
    (1)它是距离向量路由协议。
    (2)IGRP的度量值可以基于五个要素:带宽、延迟、负载、可靠性MTU,默认只使用带宽和延时。
    (3)采用广播方式(255.255.255.255)进行路由更新。
    (4)默认情况下,IGRP每90秒发送一次路由更新广播,在3个更新周期内(即270秒),没有接收到路由条目的更新,则宣布路由不可访问。在7个更新周期后(即630秒),路由器从路由表中清除路由。
    (5)IGRP路由协议的管理距离为100。
    (6) 它是有类别的路由协议。
    (7)为了避免路由环路,IGRP也受跳数的限制,支持最大跳数为255,默认为100跳。
    (8)IGRP支持等价和非等价负载均衡。

IGRP计算度量值的公式如下:
度量值 = [ K 1 × B a n d w i d t h + ( K 2 × B a n d w i d t h ) / ( 256 − L o a d ) + K 3 × D e l a y ] × [ K 5 / ( R e l i a b i l i t y + K 4 ) ] 度量值=[K1×Bandwidth+(K2×Bandwidth)/(256-Load)+K3×Delay]×[K5/(Reliability+K4)] 度量值=[K1×Bandwidth+(K2×Bandwidth)/(256Load)+K3×Delay]×[K5/(Reliability+K4)]
默认恒定的值是K1=K3=1和K2=K4=K5=0

公式中的带宽(Bandwidth)以Kbps为单位,延迟(Delay)的单位以μs为单位。从发出数据直到到达目的地所经过的链路带宽不一定相同,所以公式中使用的带宽应该是所经由链路中带宽的最小值,然后用10⁷除以该值。公式中的延迟是从发出数据直到到达目的地所经过路由器出口的延迟之和,再除以10,因此,默认情况下, 度量值 = 1 0 7 / 带宽 + Σ 延迟 / 10 度量值=10^7/带宽+Σ延迟/10 度量值=107/带宽+Σ延迟/10


假如使用的串行链路带宽为2Mbps,延迟为100μs。从路由器R2出发到达网络10.1.1.0所经过的链路最小带宽为2Mbps到达目的地经过了两个出口:一个是自己的Se0/3/0,一个是R1的Fa0/0,所以总的延迟为200μs,那么路由器R2到达网络10.1.1.0的度量值为: 度量值 = 1 0 7 2 × 1 0 3 + 200 10 = 5020 度量值=\frac{10^7}{2×10^3}+\frac{200}{10}=5020 度量值=2×103107+10200=5020

IGRP的基本配置

在路由器上配置IGRP协议分为两个步骤:
(1)启动IGRP路由协议。
命令语法如下:Router(config)#router igrp autonomous-system
autonomous-system可以随意建立,并非实际意义上的autonomous-system,但运行IGRP的路由器要想交换路由更新信息,其autonomous-system须相同,其范围为1~65535。

自治系统(Autonomous System):一个自治系统就是处于一个管理机构控制之下的路由器和网络群组。

(2)启用参与路由协议的接口,并且通告网络。
命令语法如下:Router(config)#network <network>
network的含义与RIP相同。

IGRP配置案例

目前在Cisco高版本的IOS已经对IGRP不提供支持,因此该协议无法进行测试,暂时先把各个路由器的配置命令摆上。

路由器R1的配置:

Router>enable
Router#configure terminal
Router(config)#hostname R1
R1(config)#interface FastEthernet0/0
R1(config-if)#ip address 10.1.1.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#interface Serial0/3/0
R1(config-if)#ip address 12.12.12.1 255.255.255.0
R1(config-if)#clock rate 64000
R1(config-if)#no shutdown
R1(config-if)#exit
R1(config)#router igrp 100
R1(config-router)#network 10.0.0.0
R1(config-router)#network 12.0.0.0
R1(config-router)#

路由器R2的配置:

Router>enable
Router#configure terminal
Router(config)#hostname R2
R2(config)#interface Serial0/3/0
R2(config-if)#ip address 12.12.12.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#interface Serial0/3/1
R2(config-if)#ip address 23.23.23.2 255.255.255.0
R2(config-if)#exit
R2(config)#interface Serial0/3/1
R2(config-if)#clock rate 64000
R2(config-if)#no shutdown
R2(config-if)#exit
R2(config)#router igrp 100
R2(config-router)#network 12.0.0.0
R2(config-router)#network 23.0.0.0
R2(config-router)#

路由器R3的配置:

Router>enable
Router#configure terminal
Router(config)#hostname R3
R3(config)#interface Serial0/3/0
R3(config-if)#ip address 23.23.23.3 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#interface FastEthernet0/0
R3(config-if)#ip address 192.168.1.3 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#exit
R3(config)#router igrp 100
R3(config-router)#network 23.0.0.0
R3(config-router)#network 192.168.1.0
R3(config-router)#

EIGRP-增强型内部网关路由协议

  • EIGRP(Enhanced IGRP,增强型内部网关路由协议)是Cisco公司开发的距离向量路由协议。EIGRP是一个平衡混合型路由协议,既有传统的距离向量协议的特点:路由信息依靠邻居路由器通告,遵守路由水平分制和毒性逆转规则,路由自动汇总,配置简单;又有传统的链路状态路由协议的特点:当路由信息发生变化时,采用触发更新,并且保留对所有可能路由(网络的拓扑结构)的了解,因而适用于大中型网络。
  • EIGRP协议的特点如下:
    (1)运行EIGRP的路由器之间形成邻居关系,并交换路由信息。相邻路由器之间通过发送和接收Hello包来保持联系,维持邻接关系。
    (2) 运行 EIGR 的路由器存储整个网络拓扑结构的信息,以便快速适应网络变化。
    (3)EIGRP的管理距离为90。
    (4)采用触发更新。
    (5)支持可变长子网掩码(VLSM)和不连续的子网,默认开启自动汇总功能。
    (6)支持多种网络层协议,除IP协议外,还支持IPX、AppleTalk等协议。
    (7)对每一种网络协议,EIGRP都有一个邻居表、一个拓扑表和一个路由表。
    (8)使用DUAL算法,在确保无路由环路的前提下,收敛迅速。
    (9)具有相同自治系统号的EIGRP和IGRP之间自动重分布。
    (10)支持等价和非等价的负载均衡。
    (11)采用组播(224.0.0.10)进行路由更新。
    (12)使用可靠传输协议(Reliable Transport Protocol,RTP)保证路由信息传输的可靠性。
    (13)EIGRP度量值是一个32位数,与IGRP度量标准相同,它的度量值是IGRP的256倍。
    (14)无缝连接数据链路层协议和拓扑结构:EIGRP不要求对OSI参考模型的2层协议做特别的配置,不像OSPF。OSPF对不同的2层协议要做不同配置,比如以太网和帧中继。总之,EIGRP能够有效地工作在LAN和WAN中。

EIGRP的概念与术语

  1. EIGRP中的五种类型数据包
    在EIGRP中,有五种类型的数据包,所有这些数据包都是通过IP数据包头部的协议号88来标识。
    (1)Hello:以组播的方式定期发送,并且使用不可靠的方式发送,用于发现邻居路由器,并维持邻接关系。默认的Hello间隔与接口的带宽有关系,如果带宽大于T1,默认的Hello间隔为5秒,默认Holddown时间为15秒;如果带宽小于或等于T1,默认的Hello间隔为60秒,缺省Holddown时间为180秒。

    (2)更新(Update):当路由器收到某个邻居路由器的第一个Hello包时,以单播传送方式回送一个包含它所知道的路由信息的更新包。当路由信息发生变化时,以组播的方式发送一个只包含变化信息的更新包。所有更新包必须被可靠地传送。注意,两个更新包的内容不一样。

    (3)查询(Query):当一条链路失效时,路由器重新进行路由计算,当在拓扑表中没有可行的后继路由时,路由器就以组播或单播的方式向它的邻居以组播方式发送一个查询包,以询问它们是否有一条到目的地的后继路由。
    (4)答复(Reply):以单点的方式回传给查询方,对查询数据包进行应答,查询数据包和答复数据包都需要可靠传输。
    (5)确认(ACK):以单点的方式传送,该数据包的传送是不可靠的,也可以搭载在其他类型的EIGRP数据包上,如应答分组。

  2. 可行距离(Feasible Distance)
    到达一个目的地的最佳路由的度量值。

  3. 后继(Successor)
    后继是一个直接连接的邻居路由器,通过它具有到达目的地的最短路由。

  4. 通告距离(Advertise Distance)
    相邻路由器所通告的相邻路由器自己到达某个目的地的最佳路由的度量值。
    封考

  5. 可行后继 (Feasible Successor)
    可行后继是一个邻居路由器,通过它可以到达目的地,不使用这个路由器是因为通过它到达目的地的路由的度量值比其他路由器高,但它的通告距离小于可行距离,因而被保存在拓扑表中,用做备份路由。

  6. 可行性条件 (Feasible Condition)
    上述几个术语构成了可行性条件,是EIGRP路由器更新路由表和拓扑表的依据。可行性条件可以有效地阻止路由环路,实现路由的快速收敛。可行性条件的公式为AD<FD。

  7. 活跃状态(Active State)
    当路由器失去了到达一个目的地的路由,并且没有可行后继可利用时,该路由进入活跃状态,是一条不可用的路由。当一条路由处于活跃状态时,路由器向所有邻居发送查询来寻找另外一条到达该目的地的路由。

  8. 被动状态(Passive State)
    当路由器失去了一条路由的后继而有一个可行后继,或者再找到二个后继时,该路由进入被动状态,是一条可用的路由。

EIGRP的运行

初始运行EIGRP的路由器都要经历发现邻居、了解网络、选择路由的过程,在这个过程中需要建立三张独立的表:列有相邻路由器的邻居表、描述网络结构的拓扑表和路由表,并在运行中网络发生变化时更新这三张表。

  1. 建立相邻关系
    运行EIGRP的路由器自开始运行起,就不断地用组播地址224.0.0.10从参与EIGRP的各个接口向外发送Hello包。当路由器收到某个邻居路由器的第一个Hello包时,以单点传送方式回送一个更新包,在得到对方路由器对更新包的确认后,双方建立起邻接关系。
  2. 发现网络拓扑,选择最佳路由
    当路由器动态地发现了一个新邻居时,也获得了这个新邻居所通告的路由信息,路由器将获得的路由更新信息首先与拓扑表中所记录的信息进行比较,符合可行条件的路由被放入拓扑表,再将拓扑表中通过后继路由器的路由加入路由表,通过可行后继路由器的路由如果在所配置的非等价负载均衡的范围内,则也加入路由表,否则,保存在拓扑表中作为备份路由。如果路由器通过不同的路由协议学到了到同一目的地的多条路由,则比较路由的管理距离,管理距离最小的路由为最优路由。
  3. 路由查询、更新
    当路由信息没有变化时,EIGRP邻居间只是通过发送Hello包来维持邻接关系,以减少对网络带宽的占用。在发现一个邻居丢失、一条链路不可用时,EIGRP立即会从拓扑表中寻找可行后继路由器,启用备份路由。如果拓扑表中没有后继路由器,由于EIGRP依靠它的邻居来提供路由信息,在将该路由置为活跃状态后,向所有邻居发送查询数据包。
    如果某个邻居有一条到达目的地的路由,那么它将对这个查询进行答复,并且不再扩散这个查询,否则,它将进一步向它自己的每个邻居查询,只有所有查询都得到答复后EIGRP才重新计算路由,选择新的后继路由器。如果在3分钟还没有收到答复,那么这条路由就被宣告“卡”在活动状态(tuck-in-Active,SIA),这些没有答复的邻居将被从邻居表中删除。

EIGRP的基本配置

在路由器上配置EIGRP基本命令如下
(1)启动EIGRP路由协议。命令语法如下:Router(config)# router eigrp autonomous-system
autonomous-system可以随意建立,并非实际意义上的autonomous-system,但运行EIGRP的路由器要想交换路由更新信息,其autonomous-system须相同,其范围为1~65535。
(2)启用参与路由协议的接口,并且通告网络。命令语法如下:Router(config)# network network [wildcard-mask]
与IGRP协议和RIP协议所不同的是,EIGRP协议在通告网段时,如果是主网地址(即 A、B、C类的主网,没有划分子网的网络),只需输入此网络地址;如果是子网的话,则必须在网段号后面写入反掩码。
反掩码地址是用广播地址(255.255.255.255)减去掩码地址所得到的地址。如掩码地址是255.255.255.0,则反掩码地址是 0.0.0.255;掩码地址是255.255.255.252,则反掩码地址是0.0.0.3。当然也可以在对子网的声明中只写主类网络的网络地址,这表明此网络的所有子网都加入了EIGRP路由进程。在高级的IOS中也支持网络掩码的写法。
(3)关闭自动汇总
关闭自动汇总命令的语法如下:Router(config)#no auto-summary
使用no auto-summary命令可关闭EIGRP协议的路由自动汇总功能,默认的配置是自动汇总生效。在处理使用VLSM尤其是存在不连续的子网的网络中,通常需要关闭路由自动汇总功能。
(4)no eigrp-log-neighbor-changes
这是路由器的默认配置,作用是不记录相邻路由器有关EIGRP协议的变化信息。

EIGRP配置案例


路由器R1的配置:

Router>enable
Router#configure terminal
Router(config)#hostname R1
R1(config)#interface FastEthernet0/0
R1(config-if)#ip address 10.1.1.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#interface Serial0/3/0
R1(config-if)#ip address 12.12.12.1 255.255.255.0
R1(config-if)#clock rate 64000
R1(config-if)#no shutdown
R1(config-if)#exit
R1(config)#router eigrp 100
R1(config-router)#network 10.0.0.0 0.0.0.255
R1(config-router)#network 12.0.0.0 0.0.0.255
R1(config-router)#no auto-summary
R1(config-router)#

路由器R2的配置:

Router>enable
Router#configure terminal
Router(config)#hostname R2
R2(config)#interface Serial0/3/0
R2(config-if)#ip address 12.12.12.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#interface Serial0/3/1
R2(config-if)#ip address 23.23.23.2 255.255.255.0
R2(config-if)#clock rate 64000
R2(config-if)#no shutdown
R2(config-if)#exit
R2(config)#router eigrp 100
R2(config-router)#network 12.0.0.0 0.0.0.255
R2(config-router)#network 23.0.0.0 0.0.0.255
R2(config-router)#no auto-summary
R2(config-router)#

路由器R3的配置:

Router>enable
Router#configure terminal
Router(config)#hostname R3
R3(config)#interface Serial0/3/0
R3(config-if)#ip address 23.23.23.3 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#interface FastEthernet0/0
R3(config-if)#ip address 192.168.1.3 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#exit
R3(config)#router eigrp 100
R3(config-router)#network 23.0.0.0 0.0.0.255
R3(config-router)#network 192.168.1.0 0.0.0.255
R3(config-router)#no auto-summary
R3(config-router)#

认证

  1. show ip route

  2. show ip protocol

  3. show ip rigrp neighbors
    使用该命令可以查看EIGRP邻居表

    H:这个是用于跟踪邻居的号码的,第一个建立邻居的号码为0,第二个建立邻居的为1,以此类推。
    Address:这个是从接口的邻居路由器收到了Hello分组从而获得的IP地址。
    Interface:与邻居交换Hello分组的接口。
    Hold:保持时间,从收到Hello分组时开始计时,若在Hold时间内没有收到Hello分组,那么路由器就会认为这个邻居处于Down状态了。在收到邻居发送的Hello分组时,它就会重置。默认它是Hello分组的3倍,这个是可以设置的。
    Uptime:路由器从邻居那里第一次接收到Hello分组后至今的时间,它是以小时、分钟、秒计算的。
    SRTT:平均往返定时器,EIGRP路由器发送Hello分组给邻居,到邻居收到分组及本地路由器收到该分组回应包的确定时间,单位为毫秒。这个定时器用于确定重传间隔,也被称为重传超时(RTO)。
    RTO:路由器将重传队列中的分组重传给邻居之前所等待的时间,以毫秒计算。
    Q:在队列中等待发送的EIGRP包数量 ,正常是0的,若这个数值很大,那么表示这个网络很拥挤。
    Seq:从邻居那里收到的最后一个更新、查询、应答分组的序列号。

注意:如果运行EIGRP路由协议的路由器不能建立邻居关系。从下面两个方面进行排错:一看AS号码是否相同,二看K值是否相同。如果上面两项有任何一项不同,是不可能建立起邻居关系的。但是如果邻居的HELLO间隔不同,却不影响邻居关系的建立。这一点和OSPF路由协议是不同的。
可以通过下面的命令来修改hello-interval和hold-time时间。
R1(config-if) # ip hello-interval eigrp <autonomous-system-number> <seconds>
R1(config-if) # ip hold-time eigrp <autonomous-system-number> <seconds>

  1. show ip eigrp topology
    该命令可以查看拓扑结构数据库,可以清晰地看到FD、AD的值

5.show ip eigrp interface
该命令可以查看运行EIGRP路由协议的接口的状况

  1. debug eigrp packets

    由于当前网络是收敛的,所以只有HELLO数据包发送和接收的报告。

EIGRP的高级配置

等价负载均衡(ECMP)与非等价负载均衡UCMP

  • 等价负载分担ECMP(Equal-Cost Multiple Path),是指到达同一目的地有多条等价链路,流量在这些等价链路上平均分配,不会考虑链路带宽的差异。等价链路是指到达目的地的cost值相等的链路/路径。
  • 非等价负载分担UCMP(Unequal-Cost Multiple Path),是指到达同一目的地有多条带宽不同的等价链路,流量根据带宽按比例分担到各条链路上。这样所有链路可根据带宽比例分担流量,提高链路带宽利用率。
    缺点:缺点是在路径间带宽差异大时,带宽利用率低。

非等价负载均衡(Unequal-Cost Load Balancing)

负载均衡是指在网络的多个出口上分发数据流量到目的地。负载均衡增加了网段的
使用,也增加了网络带宽的利用率。对于IP网络,Cisco IOS默认支持4 条等价链路的负
载均衡,最大支持6条。EIGRP支持不等价链路的负载均衡,使用variance命令,跟上一
个乘数,默认是1(即代表等价链路的均衡负载),variance值的范围是1~128,这个乘数
代表了可以接受的不等价链路的度量值的倍数,在这个范围内的链路都将被接受,并且被
加入路由表中。

配置案例

终端设备(End Devices):2台PC-PT
网络设备(NetWoek Devices):2个“2811”型号的路由器,需要配置好串行接口
网络拓扑示例:
需要注意的是设备之间的连接所选用的线路类型,一般情况下路由器和PC之间使用交叉线,两台路由器相连接使用串行线。

在路由器各端口附近的“.1、.2”表示的是端口的IP地址,例如R1的以太网口(Fa0/0)IP为10.1.1.1/24。
路由器R1的配置:

Router>enable
Router#configure terminal
Router(config)#hostname R1
R1(config)#interface FastEthernet0/0
R1(config-if)#ip address 10.1.1.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#interface Serial0/3/0
R1(config-if)#ip address 12.12.12.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#interface Serial0/3/1
R1(config-if)#ip address 21.21.21.1 255.255.255.0
R1(config-if)#clock rate 64000
R1(config-if)#no shutdown
R1(config-if)#exit
R1(config)#router eigrp 100
R1(config-router)#network 10.1.1.0 0.0.0.255
R1(config-router)#network 12.12.12.0 0.0.0.255
R1(config-router)#

路由器R2的配置:

Router>enable
Router#configure terminal
Router(config)#hostname R2
R2(config)#interface FastEthernet0/0
R2(config-if)#ip address 192.168.1.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#interface Serial0/3/0
R2(config-if)#ip address 12.12.12.2 255.255.255.0
R2(config-if)#bandwidth 64
R2(config-if)#no shutdown
R2(config-if)#interface Serial0/3/1
R2(config-if)#ip address 21.21.21.2 255.255.255.0
R2(config-if)#bandwidth 128
R2(config-if)#no shutdown
R2(config-if)#exit
R2(config)#router eigrp 100
R2(config-router)#network 12.12.12.0 0.0.0.255
R2(config-router)#network 21.21.21.0 0.0.0.255
R2(config-router)#network 192.168.1.0 0.0.0.255
R2(config-router)#no auto-summary
R2(config-router)#

设置主机A、B的IP地址、子网掩码和网关地址:
双击主机A、B,在“Desktop”界面找到“IP Configuration”,填写IP地址、子网掩码和默认网关

测试网络的连通情况:
双击主机A、B,在“Desktop”界面找到“Command Prompt”

  • show ip route
    在没有修改variance值之前,查看路由器R2的路由表和拓扑表

    从输出结果中可以看到:到网络10.1.1.0的路径只有一条,下一跳地址为21.21.21.1。
  • show ip eigrp topology

通过输出结果可以看出,通过21.21.21.1到达10.1.1.0网络的FD是20514560,通过12.12.12.1到达10.1.1.0网络的FD是40514560,所以EIGRP选择FD值小的放入路由表,但是同时看到,通过12.12.12.1到达10.1.1.0网络的AD(28160)小于通过21.21.21.1到达10.1.1.0网络的FD,满足可行性条件,所以被放到拓扑表中。

下面通过修改variance值来实现非等价负载均衡。在路由器R2上的配置如下:

R2#enable
R2#configure terminal
R2(config)#router eigrp 100
R2(config-router)#variance 2
R2(config-router)#

通过修改variance值,到网络10.1.1.0的路径变成两条,从而实现了非等价负载均衡。

手工路由汇总(Manual Route Summarization)

路由抖动是指重复地或经常冗余地公告和撤销路由,使路由器不得不反复计算去往目的网络的最佳路径。
倘若最佳路径改变,则路由器必须进一步公告这条新的最佳路由,同时撤销原先的路由,这种影响会蔓延到整个Internet上,以致大量增加路由器的CPU处理负担和网络的带宽。
路由抖动是Internet不稳定的主要因素,频繁的路由抖动不仅加重了路由器的CPU处理负担,增加了网络的带宽消耗,严重情况下还会导致网络的瘫痪。
对可以减轻路由抖动对网络的影响的两种方法:路由抑制路由聚合

  • 路由抑制的目的在于提高Internet路由表的总体稳定性,降低核心路由器的CPU处理负担,同时不影响正常路由的聚合时间。它最重要的作用首先是极大地减少了路由不稳定对外面网络的影响;其次是提高了对不稳定存在的意识,因为剧烈的路由或线路抖动会导致对不稳定域的持久抑制(利用对发生抖动的前缀进行抑制)。如果把路由抑制应用于尽可能靠近导致发生路由抖动的源的地方,它发挥的作用就越大越有用;
  • 路由聚合并不是针对路由抖动提出的,但它的一个优点是可以使其他路由器免受网络拓扑结构变化的影响,隐藏路由的不稳定,从而减轻路由抖动对整个网络的影响。
    路由抑制和路由聚合都可以减轻路由抖动对网络的影响。

路由汇总的目的是为了减少路由表的条目,避免路由抖动
EIGRP路由协议支持手工汇总,使用手工汇总的特点如下:
(1)可以基于接口来配置汇总
(2)当在接口做了手工汇总以后,路由器将创建一条指向null0口的路由,这样做是为了防止路由循环。
(3)当汇总之前的路由死机以后,汇总路由将自动从路由表里被删除。

Lo0:172.16.0.1/24 —> 10101100.00001000.000000|00.00000001
Lo1:172.16.1.1/24 —> 10101100.00001000.000000|01.00000001
Lo2:172.16.2.1/24 —> 10101100.00001000.000000|10.00000001
Lo3:172.16.3.1/24 —> 10101100.00001000.000000|11.00000001
----->172.16.0.0/22

EIGRP和IGRP的兼容性

EIGRP协议的特点是和IGRP协议的兼容。在一台路由器上同时运行这两个协议
如果AS号码相同,那么这两个协议会自动重分布

重分布是指连接到不同路由选择域的边界路由器在不同自主系统之间交换和通告路由选择信息的能力。

R1上运行IGRP协议,AS号码为100;R2上同时启用 EIGRP和IGRP协议,并且AS号码都为100;R3上运行EIGRP协议,AS号码为100。

配置案例

应该是Cisco不支持IGRP协议了,输入会显示无效,因此无法进行测试,直接放出配置命令。

路由器R1的配置:

Router>enable
Router#configure terminal
Router(config)#hostname R1
R1(config)#interface FastEthernet0/0
R1(config-if)#ip address 10.1.1.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#interface Serial0/3/0
R1(config-if)#ip address 12.12.12.1 255.255.255.0
R1(config-if)#clock rate 64000
R1(config-if)#no shutdown
R1(config-if)#exit
R1(config)#router igrp 100
R1(config-router)#network 10.0.0.0
R1(config-router)#network 12.0.0.0
R1(config-router)#

路由器R2的配置:

Router>enable
Router#configure terminal
Router(config)#hostname R2
R2(config)#interface Serial0/3/0
R2(config-if)#ip address 12.12.12.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#interface Serial0/3/1
R2(config-if)#ip address 23.23.23.2 255.255.255.0
R2(config-if)#clock rate 64000
R2(config-if)#no shutdown
R2(config-if)#exit
R2(config)#router igrp 100
R2(config-router)#network 12.0.0.0
R2(config-router)#exit
R2(config)#router eigrp 100
R2(config-router)#network 23.23.23.0 0.0.0.255
R2(config-router)#no auto-summary

路由器R3的配置:

Router>enable
Router#configure terminal
Router(config)#hostname R3
R3(config)#interface Serial0/3/0
R3(config-if)#ip address 23.23.23.3 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#interface FastEthernet0/0
R3(config-if)#ip address 192.168.1.3 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#exit
R3(config)#router eigrp 100
R3(config-router)#network 23.23.23.0 0.0.0.255
R3(config-router)#network 192.168.1.0 0.0.0.255
R3(config-router)#no auto-summary

关于EIGRP用到的DUAL算法

弥散更新算法(Diffusing Update Algorithm),EIGRP组件之一,为EIGRP提供最佳路由路径。
DUAL(扩散更新算法)是EIGRP确定最佳无环路径和无环备用路径的方法。

DUAL使用的几个术语

  1. 可行距离(feasible distance,FD)-----指路由器到达目的网络的最小度量。很重要的是最小两个字。如图:可见下图中A到达目的网络的可行距离为121(A->B->C->G->目的网络)。
  2. 报告距离(reported distance,RD)-----也叫做公布距离(AD),有邻居路由器公布的,如果说目的网络是源的话,就是由“上游路由器”公布的,因为“上游路由器”离目的网络应该比你近,这也构成了所谓的FC。上图中H、B、D的报告距离分别是30、21、140.

离目的网络更近的下一跳路由器,通常被称为下游路由器(Downstream Router),远一些称为上游路由器。

  1. 可行性条件(feasible condition, FC)-----是指报告距离比可行距离小的条件(RD或AD<FD)。这个条件很重要,是保证无环的根本。上图中的D并不满足此条件。
  2. 后继路由器(successor)-----满足可行条件并具有到达目的网络最短距离的相邻路由器,即为下一跳路由器。上图中的后继路由器为B。
  3. 可行后继路由器(feasible successor)-----满足FC但是没有被选作后继的一个邻居路由器。它相当于后继的一个backup。上图中的H即为可行后继路由器。可行后继路由器同时也减少了扩散计算的数量,提高了网络性能。
  4. 被动路由-----表明路由器当前有一个合法后继,并且EIGRP工作正常。在路由器上使用show ip eigrp topology可以查看eigrp的拓扑图,其中路由条目前的p就表示该路由当前为被动路由。
  5. 主动路由-----表示路由器已经失去了它的后继,它没有任何可用的可行后继,并且当前该路由器正在主动搜寻替代的路由以实现收敛。和6)一样,路由条目前的a表示当前为主动路由。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1264354.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

掌握 Node.js 事件循环,让代码更高效

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…

socket 一个完整的不错的示例

从客户端向服务器端发送信息时&#xff0c;在服务器端有打印显示&#xff1b; 检测环境常用&#xff0c;备份一下 0&#xff0c;公共头文件代码 //config.h#include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/socket.h> #inc…

Android中的多进程

在Android中也可以像pc一样开启多进程&#xff0c;这在android的编程中通常是比较少见的&#xff0c;以为在一个app基本上都是单进程工作就已经足够了&#xff0c;有一些特殊的场景&#xff0c;我们需要用多进程来做一些额外的工作&#xff0c;比如下载工作等。 在Android的An…

UI上传组件异步上传更改为同步

实现异步方法 JavaScript 异步 实现异步的五种实现方法_js异步-CSDN博客 这两种比较经常用。 因为上传组件是异步上传的通过Async和await配合使用可以上传完照片视频后返回的地址在继续走下去&#xff0c;而不是图片视频地址还未获取时就上传后端了。

leetcode算法之字符串

目录 1.最长公共前缀2.最长回文子串3.二进制求和4.字符串相乘 1.最长公共前缀 最长公共前缀 class Solution { public:string longestCommonPrefix(vector<string>& strs) {//法一&#xff1a;两两比较string ret strs[0];for(int i1;i<strs.size();i){ret f…

[栈溢出+参数跟踪] [ZJCTF 2019]Login

题目来源 buuctf——[ZJCTF 2019]Login 本题主要考察参数溯源的能力。 参考链接 https://zhuanlan.zhihu.com/p/570607303 题目信息 64位&#xff0c;ubuntu16&#xff0c;开了金丝雀 C风格的代码&#xff0c;并且将admin登录信息写入代码中。 溢出点不在这里&#xff0c;但是…

井盖倾斜怎么办?智能井盖传感器监测方法

井盖倾斜是一个紧迫的问题&#xff0c;如果不及时处理可能会导致道路安全性下降&#xff0c;进而增加车辆和行人发生意外的风险。为应对这一问题现已开发出智能井盖传感器&#xff0c;它可以持续监测井盖的状态&#xff0c;一旦发现倾斜等异常情况会立即发出警报。 在智慧城市的…

揭秘:软件测试中Web请求的完整流程!

在软件开发的过程中&#xff0c;测试是一个至关重要的环节。而在现代互联网应用中&#xff0c;Web请求是很常见的一个测试需求。本文将介绍Web请求的完整测试流程&#xff0c;帮助读者更好地理解软件测试的关键步骤。 一、测试准备阶段 在进行Web请求测试之前&#xff0c;测试…

【C】语言 sizeof和strlen的对比

目录 sizeof和strlen的对比 1.1 sizeof 1.2 strlen strlen的模拟实现 strlen介绍 1.3 sizeof 和 strlen的对比 sizeof和strlen的对比 1.1 sizeof 在学习操作符的时候&#xff0c;我们学习了 sizeof &#xff0c; sizeof 计算变量所占内存内存空间⼤⼩的&#xff0c;…

我试图通过这篇文章告诉你,什么是神奇的泛化调用。

关于 RPC 调用&#xff0c;大家肯定都是比较熟悉的了&#xff0c;就是在微服务架构下解决系统间通信问题的一个玩意。 其中的典型代表之一就是 Dubbo 了&#xff1a; 在微服务架构下&#xff0c;我们针对某个 RPC 接口&#xff0c;我们一般有两个角色。 服务消费者 (Dubbo Con…

【前端首屏加载速度优化(0): 谷歌浏览器时间参数】

DOMContentLoaded 浏览器已经完全加载了 HTML&#xff0c;DOM树构建完成&#xff0c;但是像是 <img> 和样式表等外部资源可能并没有下载完毕。 Load DOM树构建完成后&#xff0c;继续加载 html/css 中的外部资源&#xff0c;加载完成之后&#xff0c;视为页面加载完成。…

继电保护-变压器纵联差动保护MATLAB仿真模型

微❤关注“电气仔推送”获得资料&#xff08;专享优惠&#xff09; 原理概述 差动保护是在两端设置的保护&#xff0c;通过比较两端测回来的电气量&#xff0c;进而看是否需要动作&#xff0c;纵联差动保护是变压器主保护。 纵联差动保护基本原则 双绕组变压器实现纵联差动…

java反射和注解2-自定义注解

对反射有一定了解过后学习注解就会轻松许多&#xff0c;这篇文章会创建创建字段&#xff0c;方法&#xff0c;参数上面的注解&#xff0c;并且通过反射的形式将注解内容拿出来。 下面是自定义注解的简短讲解 1&#xff0c;自定义注解&#xff0c;创建一个只能修饰方法的注解 …

【外汇天眼】概率之道:规则交易背后的心态与风险控制

交易的结果&#xff0c;无外乎盈利和亏损。 对于这些结果&#xff0c;我们的心态管理很重要、很重要&#xff01; 这涉及到“保住江山”和“东山再起”。 先来说说交易盈利的结果 当一个人能够稳定盈利的时候&#xff0c;很容易产生自我麻痹、忘乎所以的飘飘然心态&#xff0…

C++基础 -9- 函数的默认参数

函数默认格式(图片代码段呈现) #include "iostream"using namespace std;void rlxy(int a100) {cout << a << endl; }int main() {rlxy();rlxy(99); }函数默认参数注意事项 函数的默认参数从左开始推导 错误写法 正确写法

一篇学会cron表达式

1、定义 Cron表达式是一种用于定义定时任务的格式化字符串。它被广泛用于Unix、Linux和类Unix系统中&#xff0c;用于在指定的时间执行预定的任务。Cron表达式由6个字段组成&#xff0c;每个字段通过空格分隔开。 在本文中&#xff0c;我们将学习如何理解和编写Cron表达式。 C…

高防服务器和高防CDN的区别是什么?

现今大环境下攻击问题愈发严峻&#xff0c;许多网站有遇到被攻击导致网站崩溃&#xff0c;资源消耗的问题&#xff0c;那么这时候高防就是给为站长&#xff0c;企业等的第一选择了&#xff0c;那边目前高防CDN和高防服务器这两种抵御DDoS攻击的两种主流防御&#xff0c;那种会更…

有趣的代码——猜数字游戏的实现

前面介绍过很多的C语言常识&#xff0c;但是我们都知道“兴趣是最好的老师”&#xff0c;所以&#xff0c;今天我们用之前讲过的一些知识&#xff0c;加上部分新补充的知识点&#xff0c;写一个“猜数字”的小游戏&#xff0c;来丰富我们的编程学习生活&#xff0c;感受来自C语…

win系列:电脑设置关闭屏幕和休眠时间不起作用解决方案

电脑设置关闭屏幕和休眠时间不起作用解决方案 一. 笔记本电脑30s自动锁屏&#xff0c;怎么设置都没用?方法一&#xff1a;使用快捷键方法二&#xff1a;开始菜单设置如果需要对锁屏进行背景等的设置&#xff0c;建议你采用这个方法来进行。方法三&#xff1a;控制面板设置怎么…

高等数学零基础篇复习笔记

预备章 零基础高等数学入门知识 第一节 集合、运算与关系 第二节 三角函数与反三角函数 三角函数的公式 反三角函数 第三节 常见不等式及数列 划重点 第一章 函数、极限与连续 第一节 函数及函数的初等特性 特殊函数 反函数 函数的初等特性 ①有界性 ②奇偶性 偶函数图像…