• 在正常工作期间,网络资源的使用率非常低;仅在稳定网络上传输 hello 数据包.
  • 当发生更改时,仅传播路由表更改,而不传播整个路由表;这可减少路由协议自身放在网络上的负载.
  • 网络拓扑更改的快速收敛时间(在某些情况下,收敛几乎是瞬时的)。
  • EIGRP是一种增强型距离矢量协议,它依靠扩散更新算法(DUAL)来计算到达网络中目的地的最短路径。

    EIGRP有两个主要版本:版本0和版本1。早于10.3(11)、11.0(8)和11.1(3)的Cisco IOS®版本运行EIGRP的早期版本;有些信息不适用于旧版本。建议使用EIGRP中的更高版本,因为它包含许多性能和稳定性增强功能。

    典型的距离矢量协议在计算到达目的地的最佳路径时保存此信息:距离(总度量或距离,如跳数)和矢量(下一跳)。 例如,图1中网络中的所有路由器都运行路由信息协议(RIP)。 路由器Two通过检查每条可用路径的跳数来选择到达网络A的路径。

    由于通过路由器3的路径是三跳,通过路由器1的路径是两跳,路由器2选择通过路由器1的路径,同时丢弃从路由器3获得的信息。如果路由器1和网络A之间的路径断开,路由器2丢失所有与目的地的连接,直至路由表的路由结束为止(3次更新时间,或90秒),并且路由器3重新通告路由(RIP中每30秒发生一次)。 如果没有包含任何抑制时间,路由器2需要花费90到120秒才能将路径从路由器1切换到路由器3。

    EIGRP并不依赖完全的定期更新来重新收敛,而是从它的每个邻居通告中构建一个拓扑表(数据不会被丢弃),并通过在拓扑表中搜索可能的无环路由进行收敛,或者,如果它没有找到其他路由,则会查询其邻居。路由器 Two 保存它从路由器 One 和 Three 收到的信息。它把通过路由器1的路径选为最佳路径(后继路由),把通过路由器3的路径选为无环回路径(可行后继路由)。 当通过路由器1的路径不可用时,路由器2检查其拓扑表,当找到可行后继路由器时,立即开始使用通过路由器3的路径。

    从此简要说明中,显而易见 EIGRP 必须提供以下内容:

  • 它所用于在给定时间只发送所需更新的系统;这可通过邻居发现和维护实现

  • 确定路由器获知哪些路径是无环路的一种方法

  • 一个从网络上所有路由器的拓扑表中清除不良路由的进程

  • 搜索邻居以查找通往丢失目的地的路径的过程

  • 这些要求都依次涵盖。

    邻居发现和维护

    为了在整个网络中分配路由信息,EIGRP 使用非周期性的增量路由更新。也就是说,EIGRP 只在这些路径更改时发送有关已更改路径的路由更新。

    如果仅发送路由更新,则无法发现通过相邻路由器的路径何时不再可用。您不能使路由超时,并期望从邻居收到一个新的路由表。EIGRP依靠邻居关系在整个网络中传播路由表更改;当两台路由器在公用网络上看到hello数据包时,它们会成为邻居。

    EIGRP 在高带宽链路上每隔 5 秒发送一次 hello 数据包;而在低带宽多点链路上则每隔 60 秒发送一次。

  • 5 秒 hello:

  • 广播介质,如以太网、令牌环和 FDDI

  • 点对点串行链路,例如PPP或HDLC租用电路、帧中继点对点子接口和ATM点对点子接口

  • 高带宽(大于 T1)多点电路,如 ISDN PRI 和帧中继

  • 60 秒 hello:

  • T1 带宽或更慢的多点电路,如帧中继多点接口、ATM 多点接口、ATM 交换虚拟电路和 ISDN BRI

  • EIGRP 发送 hello 数据包的速率称为 hello 间隔,您可以使用 ip hello-interval eigrp 命令,根据每个接口对它进行调整。保持时间是路由器不接收hello数据包时将邻居视为活动状态的时间量。保持时间通常是呼叫间隔的三倍,默认情况下为15秒和180秒。您可以使用 ip hold-time eigrp 命令调整保持时间。

    注意: 如果您更改了hello间隔,则不会自动调整保持时间以适应此更改。您必须手动调整保持时间以反映配置的hello间隔。

    即使 hello 和保持计时器不匹配,两个路由器也可能成为 EIGRP 邻居。保持时间包含在hello数据包中,因此即使呼叫间隔和保持计时器不匹配,每个邻居都可以保持活动状态。虽然没有直接的方法来确定路由器上的hello间隔,但您可以从相邻路由器上的 show ip eigrp neighbors 命令的输出中推断出该间隔。

    如果从Cisco设备获得 show ip eigrp neighbors 命令的输出,则在启用JavaScript的情况下,您可以使用 Cisco CLI分析器 显示潜在问题和解决方法。

    router#show ip eigrp neighbors
    IP-EIGRP neighbors for process 1
    H   Address       Interface   Hold Uptime   SRTT   RTO  Q  Seq  Type
                                            (sec)         (ms)       Cnt Num
    1   10.1.1.2      Et1           13 12:00:53   12   300  0  620
    0   10.1.2.2      S0           174 12:00:56   17   200  0  645
    rp-2514aa#show ip eigrp neighbor
    IP-EIGRP neighbors for process 1
    H   Address        Interface   Hold Uptime   SRTT   RTO  Q  Seq  Type
                                            (sec)         (ms)       Cnt Num
    1   10.1.1.2       Et1           12 12:00:55   12   300  0  620
    0   10.1.2.2       S0           173 12:00:57   17   200  0  645
    rp-2514aa#show ip eigrp neighbor
    IP-EIGRP neighbors for process 1
    H   Address        Interface   Hold Uptime   SRTT   RTO  Q  Seq  Type
                                            (sec)         (ms)       Cnt Num
    1   10.1.1.2       Et1           11 12:00:56   12   300  0  620
    0   10.1.2.2       S0           172 12:00:58   17   200  0  645

    命令输出的Hold列中的值决不能超过保持时间,并且决不能小于保持时间减去Hello间隔(当然,除非您丢失了Hello数据包)。 如果Hold列的范围通常介于10和15秒之间,则hello间隔为5秒,保持时间为15秒。如果Hold列的范围通常较宽(介于120和180秒之间),则hello间隔为60秒,保持时间为180秒。如果数字似乎不符合某个默认计时器设置,请检查相邻路由器上的相关接口。Hello计时器和保持计时器可能是手动配置的。

    注意: EIGRP不会通过辅助地址建立对等关系。所有 EIGRP 流量都源自接口的主地址。

  • 当您在多路访问帧中继网络(例如点对多点)上配置EIGRP时,请在 frame-relay map 语句中配置 broadcast 关键字。没有 broadcast 关键字,不会在两个 EIGRP 路由器之间建立邻接关系。 有关详细信息,请参阅 帧中继配置和故障排除综合指南
  • 对于 EIGRP 可以支持的邻居数量,没有任何限制。支持的邻居的实际数量取决于设备功能,例如:

  • 交换信息的量,如发送的路由数

  • 拓扑复杂性

  • 网络稳定性

  • 构建拓扑表

    现在这些路由器相互通信,它们之间又在谈论什么?当然是它们的拓扑表!EIGRP 不同于 RIP 和 IGRP,它不依靠路由器中的路由(或转发)表来保留其运行所需的所有信息。但是,它会建立第二个表(拓扑表),并从该表将路由安装在路由表中。

    注意: 自 Cisco IOS 版本 12.0T 和 12.1 起,RIP 保留它自己的数据库,并从该数据库将路由安装到路由表中。

    要查看运行EIGRP的路由器的拓扑表的基本格式,请发出 show ip eigrp topology 命令。拓扑表包含构建到达每个可达网络的一组距离和矢量所需的信息,以及:

  • 上游邻居报告的到此目标的路径上的最低带宽

  • 路径可靠性

  • 最短路径最大传输单元 (MTU)

  • 路由源(外部路由将被标记)

  • 如果从Cisco设备获得 show ip eigrp topology 命令的输出,则可以使用 Cisco CLI分析器 显示潜在问题和解决方法。要使用Cisco CLI分析器,必须启用JavaScript。

    EIGRP 度量

    EIGRP 使用到目标网络的路径上的最低带宽和总延迟计算路由度量。建议不要配置其他度量,因为它可能导致网络中的路由环路。带宽和延迟度量是根据到目标网络的路径中的路由器接口上所配置的值决定的。

    例如,在图2中,路由器1计算到达网络A的路径。

    它从该网络的两条通告开始:一条通过路由器 Four,最低带宽为 56,总延迟为 2200;另一条通过路由器 Three,最低带宽为 128,延迟为 1200。路由器 One 选择度量最小的路径。

    计算指标。EIGRP在扩展带宽和延迟度量时计算总度量。EIGRP使用以下公式扩展带宽:

  • 带宽 = (10000000/bandwidth(i)) * 256

    其中,bandwidth(i) 是到目标网络的路由上所有传出接口的最低带宽(以千位为单位表示)。

  • EIGRP使用此公式来扩展延迟:

  • 延迟 = delay(i) * 256

    其中,delay(i) 是在到目标网络的路由上的接口上配置的延迟的总和,单位为十微秒。 show ip eigrp topology 或 show interface 命令中显示的延迟以微秒为单位,因此在此公式中使用该值前必须将其除以 10。 使用延迟是因为它显示在接口上。

  • EIGRP使用这些标度值,来确定到网络的总度量值:

  • 度量=([K1 *带宽+(K2 *带宽)/(256 — 负载)+ K3 *延迟] * [K5 /(可靠性+ K4)])* 256

  • 注意: 必须仔细规划后使用 K 值。不匹配的 K 值会阻止建立邻居关系,这可能导致网络无法收敛。

    注意: 如果K5 = 0,公式将变为度量=([k1 *带宽+(k2 *带宽)/(256 — 负载)+ k3 *延迟])* 256。

    K 的默认值如下:

  • K1 = 1

  • K2 = 0

  • K3 = 1

  • K4 = 0

  • K5 = 0

  • 对于默认行为,您可以按如下所示简化公式:

    metric = bandwidth + delay 

    Cisco 路由器不执行浮点运算,因此在每个计算阶段,都需要四舍五入到最接近的整数才能正确计算度量。

    在本示例中,通过路由器 Four 的总成本为:

    inimum bandwidth = 56k 
    total delay = 100 + 100 + 2000 = 2200 
    [(10000000/56) + 2200] x 256 = (178571 + 2200) x 256 = 180771 x 256 = 46277376

    通过路由器 Three 的总成本为:

    minimum bandwidth = 128k 
    total delay = 100 + 100 + 1000 = 1200 
    [(10000000/128) + 1200] x 256 = (78125 + 1200) x 256 = 79325 x 256 = 20307200  

    要到达网络A,路由器1选择通过路由器3的路由。

    注意: 使用的带宽和延迟值是在路由器到达目的网络下一跳的接口上配置的。例如,路由器 Two 使用在其以太网接口上配置的延迟通告网络 A;路由器 Four 添加了在其以太网上配置的延迟,路由器 One 添加了在其串行端口上配置的延迟。

    可行距离、报告距离和可行后继路由

    可行距离是通往目的网络路径的最佳度量,包括通告该路径的邻居的度量。报告距离是沿到目标网络的路径的总度量,由上游邻居通告。可行后继路由是报告距离小于可行距离(当前最佳路径)的路径。 图 3 说明了此过程:

    路由器 One 看到它有两个到网络 A 的路由:一个通过路由器 Three,另一个通过路由器 Four。

  • 通过路由器 Four 的路由成本为 46277376,报告距离为 307200。

  • 通过路由器 Three 的路由成本为 20307200,报告距离为 307200。

  • 注意: 在每种情况下,EIGRP都会计算向网络通告路由的路由器所报告的距离。换句话说,从路由器 4的报告距离是从路由器 4到达网络 A 的度量,而从路由器 3的报告距离则是从路由器 3 到达网络 A 的度量。EIGRP选择通过路由器3的路由作为最佳路径,使用通过路由器3的度量作为可行距离。由于通过路由器4到达此网络的报告距离小于可行距离,因此路由器1 会将通过路由器4的路径视为可行后继路由。

    当路由器 1和 3之间的链路断开时,路由器1 会对它所知道的通往网络 A 的每条路径进行检查,并发现它有一个通过路由器 4 的可行后继路由。路由器1使用此路由,它使用通过路由器4的度量作为新的可行距离。网络立即收敛,并且对下游邻居的更新将是路由协议中的唯一流量。

    图4所示场景更为复杂。

    从路由器 One 到网络 A 有两个路由:一个通过度量为46789376的路由器2,另一个通过度量为20307200的路由器4。路由器1选择这两个度量中较低者作为到达网络A的路由,此度量成为可行距离。查看通过路由器2的路径,看它是否符合可行后继路由器的条件。路由器 2 的报告距离为 46277376,该距离大于可行距离,因此该路径不是可行后继路由。如果此时您要查看路由器1的拓扑表(使用 show ip eigrp topology ),您只会看到一个条目,表示网络A通过路由器4。(实际上,路由器One的拓扑表中有两个条目,但只有一个条目是可行后继路由器,因此另一个条目不会显示在 show ip eigrp topology 中;通过 show ip eigrp topology all-links ,您可以看到不是可行后继路由的路由。

    假设路由器1和路由器4之间的链路断开。路由器One发现它丢失了通向网络A的唯一路由,并查询其每个邻居(在本例中仅路由器2)以查看它们是否具有通向网络A的路由。由于路由器Two确实具有通向网络A的路由,因此它会响应查询。由于路由器 1不再具有通过路由器4 的更好路由,它会接受此通过路由器 2到网络 A 的路由。

    发现路径是否无环路

    EIGRP 如何使用可行距离、报告距离和可行后继路由的概念来确定路径是否有效且不是环路?在图4a中,路由器Three检查通往网络A的路由。由于水平分割已禁用(例如,如果这些是多点帧中继接口),因此路由器Three显示通往网络A的三个路由:通过路由器 4、通过路由器2(路径是 2、1、3、4)和通过路由器 1(路径是 1、2、3、4)。

    如果路由器 Three 接受所有这些路由,将导致路由环路。路由器 Three 认为它能通过路由器 Two 到达网络 A,但是通过路由器 Two 的路径经过路由器 Three 才能到达网络 A。如果路由器4和路由器3之间的连接断开,路由器3认为它可以通过其他路径之一到达网络A,但由于确定可行后继路由的规则,它绝不会使用这些路径作为备用路径。查看指标以了解原因:

  • 通过路由器 Four 到网络 A 的总度量:20281600

  • 通过路由器 Two 到网络 A 的总度量:47019776

  • 通过路由器 One 到网络 A 的总度量:47019776

  • 由于通过路由器4的路径具有最佳度量,因此路由器 3将此路由安装在转发表中,并使用 20281600 作为它到网络 A 的可行距离。然后,路由器 3再计算通过路由器 2 和 1到网络 A 的报告距离:通过路由器 Two 的路径的报告距离为 47019776,通过路由器 One 的路径的报告距离为 47019776。由于这两个度量都大于可行距离,因此路由器 Three 不会将其中任何一个路由作为网络 A 的可行后继路由进行安装。

    假设路由器 Three 和 Four 之间的链路断开。路由器 3向它的每个邻居查询通向网络 A 的替代路由。路由器 2 收到查询,由于该查询来自其后继路由,因此它会在其拓扑表中搜索其他每个条目以查看是否存在可行后继路由。拓扑表中唯一的其他条目来自路由器 1,其报告距离等于最后获知的通过路由器 3 的最佳度量。由于通过路由器1的报告距离不小于最后获知的可行距离,因此路由器2将此路由标记为不可达,并向它的每个邻居(在本例中,只有路由器1)查询通向网络 A 的路径。

    路由器 Three 也向路由器 One 发送针对网络 A 的查询。路由器 1检查其拓扑表,并发现到网络 A 的唯一其他路径是通过路由器 2的路径,其报告距离等于最后获知的通过路由器3的可行距离。再一次,由于通过路由器 2 的报告距离不小于最后获知的可行距离,因此此路由不是可行后继路由。路由器 1将此路由标记为不可达,并向其唯一的其他邻居(路由器2)查询通向网络 A 的路径。

    这是第一个级别的查询。路由器Three已查询其每个邻居,以尝试找到通向网络A的路由。反过来,路由器One和Two将路由标记为不可达,并询问各自的其它邻居,以尝试找到通向网络A的路径。当路由器 Two 收到路由器 One 的查询时,它会检查其拓扑表,并注意到该目标已被标记为不可达。路由器 Two 向路由器 One 回复网络 A 不可达。当路由器 One 收到路由器 Two 的查询时,它也发送回网络 A 不可达的回复。路由器 One 和 Two 都已得出网络 A 不可达的结论,然后它们回复原始路由器 Three 的查询。网络已收敛,所有路由都返回被动状态。

    水平分割与毒性逆转

    在上一个示例中,水平分割不显示EIGRP如何使用可行距离和报告距离来确定路由是否可能是环路。但是,在某些情况下,EIGRP 也使用水平分割来防止路由环路。在详细了解EIGRP如何使用水平分割之前,请先了解水平分割的定义及其工作方式。水平分割规则规定:

  • 永远不从通过其获知路由的接口通告该路由。

  • 例如,在图4a中,如果路由器1通过单个多点接口(例如帧中继)连接到路由器2和路由器3,而路由器1从路由器2获知了网络A,则它不会将到达网络A的路由从同一接口通告回路由器3。路由器 One 假设路由器 Three 将直接从路由器 Two 获知网络 A。

    毒性反转是避免路由环路的另一种方法。其规则规定:

  • 一旦通过某个接口获知路由,便通过该同一接口将其通告回为不可达路由。

  • 例如,图4a中的路由器启用了毒性反转。当路由器 1 从路由器 2 获知网络 A 时,它会通过其到路由器 2 和 3 的链路通告网络 A 为不可达网络。如果路由器3显示通过路由器1到网络 A 的任何路径,它将由于不可达通告删除该路径。EIGRP 结合这两个规则来帮助防止路由环路。

    在下列情况下,EIGRP 使用水平分割或将路由通告为不可达路由:

  • 两台路由器处于启动模式(它们首次交换拓扑表)

  • 通告拓扑表更改

  • 查询已发送

  • 查看每个案例。

    当两个路由器首次成为邻居时,它们在启动模式期间交换拓扑表。对于路由器在启动模式期间收到的每个表条目,它都将以最大度量(毒化路由)向其新邻居通告回同一条目。

    拓扑表更改

    在图5中,路由器1使用变量来平衡两个串行链路之间发往网络A的流量;即路由器2和路由器4之间的56k链路,以及路由器3和路由器4之间的128k链路。

    路由器 Two 将通过路由器 Three 的路径视为可行后继路由。如果路由器2和4之间的链路断开,路由器2只需在通过路由器3的路径重新融合即可。由于水平分割规则规定,您绝不能从获知路由的接口向外通告路由,路由器2通常不会发送更新。但是,这为路由器 One 留下了一个无效的拓扑表条目。

    当路由器更改其拓扑表,使路由器到达网络的接口发生更改时,它会关闭水平分割,毒药会使旧路由从所有接口转发出去。在本例中,路由器2 将关闭此路由的水平分割,并将网络 A 通告为不可达网络。路由器 One 听到此通告,并将其通过路由器 Two 到网络 A 的路由从其路由表中清除。

    只有当路由器收到来自它用于查询中目标的后继路由的查询或更新时,查询才会导致水平分割。查看图6中的网络。

    路由器Three收到来自路由器Four的有关路由器10.1.2.0/24(它通过路由器One到达)的查询。如果Three由于链路抖动或其他临时网络条件而没有该目标的后继路由,则会向它的每个邻居发送查询;在本例中,为路由器 One、Two 和 Four。但是,如果路由器Three收到来自路由器One的针对目标10.1.2.0/24的查询或更新(如度量更改),它不会将查询发回路由器One,因为路由器One是通向此网络的后继路由器。它只向路由器 Two 和 Four 发送查询。

    停滞在活动状态的路由

    回答查询可能需要很长时间。如果是,发出查询的路由器会放弃并清除与未应答路由器的连接,这会重新启动邻居会话。这被称为停滞在活动状态 (SIA) 的路由。如果只是查询到达网络另一端的时间和回复返回的时间过长,将发生最基本的 SIA 路由。例如,在图7中,路由器1记录了大量来自路由器2的SIA路由。

    在经过一些调查后,问题范围缩小到路由器2和3之间的卫星链路上的延迟。对于此类问题,有两种可行的解决方案。第一种是增加路由器在声明路由SIA之前发送查询后等待的时间。可使用 timers active-time 命令更改此设置。

    但是,更好的解决方案是重新设计网络,以减小查询的范围(以便只有极少的查询通过卫星链路)。 本文的 查询范围 部分介绍了查询范围。但是,查询范围本身不是报告的 SIA 路由的常见原因。通常,网络中的某些路由器无法回答查询,原因如下:

  • 路由器太忙,无法回答查询(通常是由于CPU使用率较高)。

  • 路由器存在内存问题,无法分配内存来处理查询或生成应答数据包。

  • 两台路由器之间的电路不正常;没有足够的数据包来维持邻居关系,但路由器之间丢失了一些查询或应答。

  • 单向链路(由于故障,数据包只能向一个方向流动的链路)

  • 查找路由器不接收或应答查询的原因。

  • 第一步很简单。如果记录控制台消息,快速查看日志将显示通常标记为SIA的路由。第二步稍微困难。用于收集此信息的命令是 show ip eigrp topology active

    Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, 
           r - Reply status 
    A 10.2.4.0/24, 0 successors, FD is 512640000, Q 
        1 replies, active 00:00:01, query-origin: Local origin 
             via 10.1.2.2 (Infinity/Infinity), Serial1 
        1 replies, active 00:00:01, query-origin: Local origin 
             via 10.1.3.2 (Infinity/Infinity), r, Serial3 
        Remaining replies: 
             via 10.1.1.2, r, Serial0

    显示 R 的所有邻居尚未回复(活动计时器显示路由已处于活动状态的时间长度)。 这些邻居无法显示在Remaining replies部分;它们可以出现在其他RDB中。请特别注意那些具有未处理回复且已处于活动状态一段时间(通常为两到三分钟)的路由。多次运行此命令,您就会开始看到哪些邻居未响应查询(或者哪些接口似乎有许多未响应的查询)。 检查此邻居,查看它是否始终等待任何邻居的回复。重复此过程,直至找到始终不回答查询的路由器。您可以查找有关到此邻居的链路、内存或 CPU 使用率的问题,或此邻居的其他问题。

    如果问题出在查询范围,不要增加SIA计时器;而是缩小查询范围。

    本节将研究涉及重分发的不同方案。所列示例显示了配置重分发所需的最低要求。重分配可能会潜在地导致问题,如不理想的路由、路由环路或缓慢的收敛。要避免这些问题,请参见避免由于重分发而引起的问题部分。

    两个 EIGRP 自治系统之间的重分配

    图8显示路由器配置为:

    路由器 One

    router eigrp 2000 
    !--- The "2000" is the autonomous system 
     network 172.16.1.0 0.0.0.255 
       

    路由器 Two

    router eigrp 2000 
     redistribute eigrp 1000 route-map to-eigrp2000
     network 172.16.1.0 0.0.0.255 
    router eigrp 1000 
     redistribute eigrp 2000 route-map to-eigrp1000
     network 10.1.0.0 0.0.255.255
    route-map to-eigrp1000 deny 10
    match tag 1000
    route-map to-eigrp1000 permit 20
    set tag 2000
    route-map to-eigrp2000 deny 10
    match tag 2000
    route-map to-eigrp2000 permit 20
    set tag 1000

    路由器 Three

    router eigrp 1000 
     network 10.1.0.0 0.0.255.255

    路由器Three通过自治系统1000将网络10.1.2.0/24通告给路由器Two;路由器Two将此路由重分发到自治系统2000并将其通告给路由器One。

    注意:来自EIGRP 1000的路由在重分发到EIGRP 2000之前标记为1000。当来自 EIGRP 2000 的路由重分配回 EIGRP 1000 时,具有 1000 标记的路由将被拒绝以确保拓扑无环路。关于路由协议之间重分配的详细信息,请参阅重分配路由协议

    对于路由器1:

    one#show ip eigrp topology 10.1.2.0 255.255.255.0 
    IP-EIGRP topology entry for 10.1.2.0/24 
      State is Passive, Query origin flag is 1, 1 Successor(s), FD is 46763776 
      Routing Descriptor Blocks: 
      172.16.1.2 (Serial0), from 172.16.1.2, Send flag is 0x0 
          Composite metric is (46763776/46251776), Route is External 
          Vector metric: 
            Minimum bandwidth is 56 Kbit 
            Total delay is 41000 microseconds 
            Reliability is 255/255 
            Load is 1/255 
            Minimum MTU is 1500 
            Hop count is 2 
          External data: 
            Originating router is 172.16.1.2 
            AS number of route is 1000 
            External protocol is EIGRP, external metric is 46251776 
            Administrator tag is 1000 (0x000003E8)

    请注意,虽然路由器1和2之间的链路带宽为 1.544 Mb,但是该拓扑表条目中显示的最低带宽为 56k。这意味着EIGRP会在两个EIGRP自治系统之间重新分配时保留所有度量。 

    到/从其他协议的重分配

    EIGRP和其他协议(例如RIP和OSPF)之间的重分发与所有重分发的工作方式相同。在协议之间重新分发时使用默认度量。在EIGRP和其他协议之间进行重分发时,您需要注意以下两个问题:

  • 重分发到EIGRP的路由并不总是汇总信息 — 有关说明,请参见“汇总”部分。

  • 外部 EIGRP 路由的管理距离为 170。

  • 在图9中,路由器1通过接口Serial 0配置了到网络172.16.1.0/24的静态路由:

    ip route 172.16.1.0 255.255.255.0 Serial0

    并且路由器 One 还有一条针对此静态路由目标的 network 语句:

    router eigrp 2000 
     network 10.0.0.0 
     network 172.16.0.0 
     no auto-summary 

    路由器One会重分布此路由,即使它不会重分布静态路由,因为EIGRP将此视为直连网络。在路由器 Two 上,这将如下所示:

    two#show ip route 
            10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks 
        C       10.1.1.0/24 is directly connected, Serial0
        D       10.1.2.0/24 [90/2169856] via 10.1.1.1, 00:00:47, Serial0
             172.16.0.0/24 is subnetted, 1 subnets 
        D       172.16.1.0 [90/2169856] via 10.1.1.1, 00:00:47, Serial0

    通向172.16.1.0/24的路由在路由器Two上显示为内部EIGRP路由。

    EIGRP 中有两种汇总形式:自动汇总和手动汇总。

    EIGRP 每次穿过两个不同的主要网络之间的边界时会执行自动汇总。例如,在图10中,路由器2只将10.0.0.0/8网络通告给路由器1,因为路由器2用于到达路由器1的接口位于不同的主网络中。

    在路由器1上,它如下所示:

    one#show ip eigrp topology 10.0.0.0 
    IP-EIGRP topology entry for 10.0.0.0/8 
      State is Passive, Query origin flag is 1, 1 Successor(s), FD is 11023872 
      Routing Descriptor Blocks: 
      172.16.1.2 (Serial0), from 172.16.1.2, Send flag is 0x0 
          Composite metric is (11023872/10511872), Route is Internal 
          Vector metric: 
            Minimum bandwidth is 256 Kbit 
            Total delay is 40000 microseconds 
            Reliability is 255/255 
            Load is 1/255 
            Minimum MTU is 1500 
            Hop count is 1

    此路由在任何情况下都不会标记为汇总路由;它看起来像内部路由。度量是汇总路由中的最佳度量。虽然在10.0.0.0网络中有带宽为56k的链路,但此路由的最小带宽为256k。

    在具有汇总的路由器上,将汇总地址创建为null0的路由:

    two#show ip route 10.0.0.0 
    Routing entry for 10.0.0.0/8, 4 known subnets 
      Attached (2 connections) 
      Variably subnetted with 2 masks 
      Redistributing via eigrp 2000 
    C       10.1.3.0/24 is directly connected, Serial2 
    D       10.1.2.0/24 [90/10537472] via 10.1.1.2, 00:23:24, Serial1 
    D       10.0.0.0/8 is a summary, 00:23:20, Null0 
    C       10.1.1.0/24 is directly connected, Serial1

    通向10.0.0.0/8的路由通过Null0标记为汇总。此汇总路由的拓扑表条目如下所示:

    two#show ip eigrp topology 10.0.0.0 
    IP-EIGRP topology entry for 10.0.0.0/8 
      State is Passive, Query origin flag is 1, 1 Successor(s), FD is 10511872 
      Routing Descriptor Blocks: 
      0.0.0.0 (Null0), from 0.0.0.0, Send flag is 0x0 
              (Note: The 0.0.0.0 here means this route is originated by this router.) 
          Composite metric is (10511872/0), Route is Internal 
          Vector metric: 
            Minimum bandwidth is 256 Kbit 
            Total delay is 20000 microseconds 
            Reliability is 255/255 
            Load is 1/255 
            Minimum MTU is 1500 
            Hop count is 0

    要让路由器 Two 通告 10.0.0.0 网络的组件,而不是汇总,请在路由器 Two 上的 EIGRP 进程中配置 no auto-summary:

    在路由器 Two 上:

    router eigrp 2000 
     network 172.16.0.0 
     network 10.0.0.0 
     no auto-summary

    关闭自动汇总后,路由器1现在可以看到 10.0.0.0 网络的所有组件:

    one#show ip eigrp topology 
    IP-EIGRP Topology Table for process 2000 
    Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, 
           r - Reply status 
    P 10.1.3.0/24, 1 successors, FD is 46354176 
             via 172.16.1.2 (46354176/45842176), Serial0 
    P 10.1.2.0/24, 1 successors, FD is 11049472 
             via 172.16.1.2 (11049472/10537472), Serial0 
    P 10.1.1.0/24, 1 successors, FD is 11023872 
             via 172.16.1.2 (11023872/10511872), Serial0 
    P 172.16.1.0/24, 1 successors, FD is 2169856 
             via Connected, Serial0

    有关外部路由汇总的一些注意事项,稍后的“外部路由自动汇总”部分将介绍这些注意事项。

    EIGRP允许您使用手动总结来总结几乎任何位边界上的内部和外部路由。例如,在图11中,路由器2将192.168.1.0/24、192.168.2.0/24和192.168.3.0/24总结到CIDR块192.168.0.0/22中。

    路由器Two的配置如下所示:

    two#show run 
    interface Serial0 
     ip address 10.1.50.1 255.255.255.0 
     ip summary-address eigrp 2000 192.168.0.0 255.255.252.0 
     no ip mroute-cache 
    two#show ip eigrp topology 
    IP-EIGRP Topology Table for process 2000 
    Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, 
           r - Reply status
    P 10.1.10.0/24, 1 successors, FD is 45842176 
             via Connected, Loopback0 
    P 10.1.50.0/24, 1 successors, FD is 2169856 
             via Connected, Serial0 
    P 192.168.1.0/24, 1 successors, FD is 10511872 
             via Connected, Serial1 
    P 192.168.0.0/22, 1 successors, FD is 10511872 
             via Summary (10511872/0), Null0 
    P 192.168.3.0/24, 1 successors, FD is 10639872 
             via 192.168.1.1 (10639872/128256), Serial1 
    P 192.168.2.0/24, 1 successors, FD is 10537472 
             via 192.168.1.1 (10537472/281600), Serial1

    查看接口Serial0下的ip summary-address eigrp命令和通过Null0的汇总路由。在路由器1上,这被视为内部路由:

    one#show ip eigrp topology 
    IP-EIGRP Topology Table for process 2000 
    Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, 
           r - Reply status 
    P 10.1.10.0/24, 1 successors, FD is 46354176 
             via 10.1.50.1 (46354176/45842176), Serial0 
    P 10.1.50.0/24, 1 successors, FD is 2169856 
             via Connected, Serial0 
    P 192.168.0.0/22, 1 successors, FD is 11023872 
             via 10.1.50.1 (11023872/10511872), Serial0

    外部路由的自动汇总

    EIGRP不会自动汇总外部路由,除非同一个主网络的某个组件是内部路由。图12显示了以下内容:

    路由器Three使用redistribute connected 命令将通往192.168.2.0/26和192.168.2.64/26的外部路由注入到EIGRP,如列出的配置所示。

    路由器 Three

    interface Ethernet0 
     ip address 192.168.2.1 255.255.255.192 
    interface Ethernet1
     ip address 192.168.2.65 255.255.255.192
    interface Ethernet2
     ip address 10.1.2.1 255.255.255.0
    !router eigrp 2000 
     redistribute connected 
     network 10.0.0.0 
     default-metric 10000 1 255 1 1500

    对应于路由器 Three 上的此配置,路由器 One 上的路由表显示:

    one#show ip route
         10.0.0.0/8 is subnetted, 2 subnets 
    D       10.1.2.0 [90/11023872] via 10.1.50.2, 00:02:03, Serial0 
    C       10.1.50.0 is directly connected, Serial0 
         192.168.2.0/26 is subnetted, 1 subnets 
    D EX    192.168.2.0 [170/11049472] via 10.1.50.2, 00:00:53, Serial0 
    D EX    192.168.2.64 [170/11049472] via 10.1.50.2, 00:00:53, Serial0

    虽然自动汇总一般会导致路由器 Three 将 192.168.2.0/26 和 192.168.2.64/26 路由汇总到一个主要网络目标 (192.168.2.0/24),但它不会执行该操作,因为两个路由都是外部路由。但是,如果您将路由器2和路由器3之间的链路重新配置为192.168.2.128/26,并在路由器2和路由器3上为此网络添加network语句,则路由器2上会生成192.168.2.0/24 auto-summary。

    路由器 Three

     interface Ethernet0 
     ip address 192.168.2.1 255.255.255.192 
    interface Ethernet1
     ip address 192.168.2.65 255.255.255.192
    interface Serial0 
     ip address 192.168.2.130 255.255.255.192 
    router eigrp 2000 
     network 192.168.2.0

    现在路由器 Two 生成 192.168.2.0/24 的汇总:

    two#show ip route 
    D       192.168.2.0/24 is a summary, 00:06:48, Null0
       

    并且路由器 One 仅显示汇总路由:

     one#show ip route 
         10.0.0.0/8 is subnetted, 1 subnets 
    C       10.1.1.0 is directly connected, Serial0 
    D    192.168.2.0/24 [90/11023872] via 10.1.50.2, 00:00:36, Serial0

    查询过程和范围

    当路由器处理来自邻居的查询时,这些规则将如表中所示适用。

    邻居(非当前后继路由)

    回复当前后继路由信息.

    后继路由器

    尝试查找新的后继路由;如果成功,则回复新信息;如果不成功,则将目标标记为不可达,并查询除前一个后继路由以外的所有邻居.

    查询前没有通过此邻居的路径

    回复当前已知的最佳路径.

    查询前不知道

    回复目标不可达.

    邻居(非当前后继路由)

    如果没有这些目标的当前后继路由(通常如此),则以不可达方式回复。

    如果有好的后继路由,则回复当前路径信息.

    后继路由器

    尝试查找新的后继路由;如果成功,则回复新信息;如果不成功,则将目标标记为不可达,并查询除前一个后继路由以外的所有邻居.

    当上表中的操作发现网络在新拓扑上收敛之前接收和回复查询的路由器数量时,它会影响网络中的查询范围。要查看这些规则如何影响查询的管理方式,请查看图13中的网络,该网络在正常条件下运行。

    对于网络192.168.3.0/24(最右侧),这是预期结果:

  • 路由器 One 有两条到 192.168.3.0/24 的路径:

  • 通过路由器 Two,距离为 46533485,报告距离为 20307200

  • 通过路由器 Three,距离为 20563200,报告距离为 20307200

  • 路由器1选择通过路由器 3的路径,并将通过路由器2 的路径保留为可行后继路由

  • 路由器 Two 和 Three 显示一条通过路由器 Four 到 192.168.3.0/24 的路径

  • 假设 192.168.3.0/24 发生故障。此网络上预期的活动是图13a到图13h说明了此过程。

    路由器 Five 将 192.168.3.0/24 标记为不可达,并查询路由器 Four:

    当路由器4收到来自后继路由器的查询时,它会尝试查找通向此网络的新可行后继路由器。它找不到路由器,因此将192.168.3.0/24标记为不可达,并查询路由器Two和Three:

    随后,路由器2和3发现它们丢失了到 192.168.3.0/24 的唯一可行路由,并将其标记为不可达;它们都向路由器 One 发送查询:

    假设路由器1首先收到来自路由器3的查询,并将该路由标记为不可达。然后,路由器 One 收到来自路由器 Two 的查询。虽然有另一种可能,但最终结果都是一样的。

    路由器 One 对这两个查询都回复不可达;路由器 One 现在对于 192.168.3.0/24 处于被动状态:

    路由器 Two 和 Three 回复来自路由器 Four 的查询;路由器 Two 和 Three 现在对于 192.168.3.0/24 处于被动状态:

    当路由器Five收到来自路由器Four的应答时,它会从路由表中删除网络192.168.3.0/24;路由器5现在对网络192.168.3.0/24处于被动状态。路由器5将更新发送回路由器4,以便从其他路由器的拓扑和路由表中删除该路由。

    虽然可以有其他查询路径或命令进行处理,但是当该链路断开时,网络中的所有路由器都会处理对网络192.168.3.0/24的查询。有些路由器可以处理多个查询(本例中为Router One)。 实际上,如果查询以不同的顺序到达路由器,则某些路由器会处理三四个查询。这是 EIGRP 网络中无限查询的很好示例。

    汇总点如何影响查询范围

    查看同一网络中通往10.1.1.0/24的路径:

  • 路由器2有10.1.1.0/24网络的拓扑表条目,通过路由器1的成本为46251885。

  • 路由器3有10.1.1.0/24网络的拓扑表条目,通过路由器1的成本为20281600。

  • 路由器4有一个用于10.0.0.0/8网络的拓扑表条目(因为路由器2和路由器3通过路由器3自动汇总到主网络边界),度量为20307200(通过路由器2的报告距离高于通过路由器3的总度量,因此通过路由器2的路径不是可行后继路由)。

  • 如果 10.1.1.0/24 断开,路由器1会将其标记为不可达,然后向它的每个邻居(路由器 2 和3)查询通向该网络的新路径:

    路由器Two收到来自路由器One的查询后,将该路由标记为不可达(因为该查询来自其后继路由器),然后查询路由器Four和Three:

    路由器3在收到来自路由器1的查询时,会将目标标记为不可达,并查询路由器2和4:

    路由器4收到路由器2和路由器3的查询后回答说10.1.1.0/24不可达(路由器4不知道有问题的子网,因为它只有10.0.0.0/8路由):

    路由器 Two 和 Three 相互回复 10.1.1.0/24 不可达:

    由于路由器2和 3现在没有未处理的查询,因此它们都向路由器1回复 10.1.1.0/24 不可达:

    在本例中,查询由路由器2和路由器3上的自动总结界定。路由器5不参与查询过程,也不参与网络的重新收敛。查询还可能受到手动汇总、自治系统边界和分配列表的限制。

    自治系统边界如何影响查询范围

    如果路由器在两个EIGRP自治系统之间重分布路由,它将在进程的常规规则内回复查询,并向另一个自治系统启动新查询。例如,如果到与路由器3连接的网络的链路断开,路由器 3会将路由标记为不可达,并向路由器 2查询新的路径:

    路由器 2回复此网络不可达,并且在自治系统 200 中向路由器1发送查询。一旦路由器3收到其原始查询的回复,它将从其表中删除该路由。路由器 Three 现在对于此网络处于被动状态:

    路由器 One 回复路由器 Two,路由进入被动状态:

    当原始查询未在整个网络中传播时(受到自治系统边界的限制),原始查询将以新查询的形式渗进第二个自治系统。这可以防止网络中卡在活动(SIA)问题,因为它限制了查询在得到应答之前必须通过的路由器数量。但是,这并不能解决必须处理查询的每个路由器的整体问题。此方法可能使问题更严重,并阻止自动汇总本来要汇总的路由(除非主网络中有一个外部组件,否则不会汇总外部路由)。

    分配列表如何影响查询范围

    EIGRP 中的分配列表不会阻塞查询的传播,而是将所有查询回复都标记为不可达。以图16为例。

    在图16中:

  • 路由器3有一个在其串行接口上应用的分配列表,只允许该路由器通告网络 B。

  • 路由器 One 和 Two 不知道网络 A 通过路由器 Three 可达(路由器 Three 不用作路由器 One 和 Two 之间的中转点)。

  • 路由器3使用路由器1作为通向网络A的首选路径,而不使用路由器2作为可行后继路由器。

  • 当路由器1丢失了与网络 A 的连接时,它会将该路由标记为不可达,并向路由器 3发送查询。由于其串行端口上的分配列表,路由器 Three 不会通告到网络 A 的路径。

    路由器 Three 将此路由标记为不可达,然后查询路由器 Two:

    路由器 Two 检查其拓扑表并发现它有一个到网络 A 的有效连接。查询不受路由器Three中的分发列表的影响:

    路由器 Two 回复网络 A 可达;路由器 Three 现在有一个有效路由:

    路由器3对路由器1的查询进行回复,但分配表会让路由器3发送网络A不可达的回复,即使路由器3具有到达网络A的有效路由:

    管理传输数据包的速度

    有些路由协议收敛时会占用低带宽链路上的所有可用带宽(适应网络中的变化)。EIGRP可避免这种拥塞,并管理网络上传输数据包的速度,因此它仅使用一部分可用带宽。EIGRP的默认配置是最多使用可用带宽的50%,但可以通过以下命令进行更改:

    router(config-if)#
    ip bandwidth-percent eigrp 2?
      <1-999999>  Maximum bandwidth percentage that EIGRP can use

    实质上,每次EIGRP将要在接口上传输的数据包排入队列时,它都会使用此公式来确定发送数据包前等待的时间:

    ip bandwidth-percent eigrp 2

  • (8 * 100 * 以字节为单位的数据包大小) / (以 kbps 为单位的带宽 * 带宽百分比)

  • 例如,如果 EIGRP 在 56k 带宽的串行接口上对数据包排队,并且数据包大小为 512 字节,则 EIGRP 将等待:

  • (8 * 100 * 512 字节) / (56000 比特/秒 * 50% 带宽) (8 *100 * 512) / (56000 * 50) 409600 / 2800000 0.1463 秒

  • 这样,在EIGRP发送数据包之前,该链路上至少可以传输512字节的数据包(或数据包组)。定步计时器确定发送数据包的时间,并以毫秒为单位。上例中数据包的步调时间为0.1463秒。show ip eigrp interface中有一个显示步调计时器的字段:

    outer#show ip eigrp interface
    IP-EIGRP interfaces for process 2	
                        Xmit Queue   Mean   Pacing Time   Multicast    Pending
    Interface    Peers  Un/Reliable  SRTT   Un/Reliable   Flow Timer   Routes
    Se0            1        0/0        28       0/15         127           0
    Se1            1        0/0        44       0/15         211           0
    router#

    显示的时间是最大传输单元 (MTU)(可在接口上发送的最大数据包)的步调间隔。

    有两种方法可将默认路由加入 EIGRP 中:重新分发静态路由或汇总到0.0.0.0/0。如果要将所有流向未知目的地的流量提取到网络核心的默认路由,请使用第一种方法。此方法通告与Internet的连接。例如:

    ip route 0.0.0.0 0.0.0.0 x.x.x.x (next hop to the internet) 
    router eigrp 100 
     redistribute static 
     default-metric 10000 1 255 1 1500

    重分发到EIGRP的静态路由不必是到网络0.0.0.0。如果使用其他网络,则必须使用ip default-network命令将网络标记为默认网络。 

    如果总结,则只有当您想要为远程站点提供默认路由时,默认路由才起作用。由于汇总是按接口配置的,因此您可以使用分发列表或其他机制来防止默认路由传播到网络的核心。请注意,到 0.0.0.0/0 的汇总会覆盖从任何其他路由协议获知的默认路由。使用此方法在路由器上配置默认路由的唯一方法是配置到0.0.0.0/0的静态路由。(从Cisco IOS软件12.0(4)T开始,您还可以在ip summary-address eigrp命令末尾配置管理距离,以便本地总结不会覆盖0.0.0.0/0路由)。

    router eigrp 100 
     network 10.0.0.0 
    interface serial 0 
     encapsulation frame-relay 
     no ip address 
    interface serial 0.1 point-to-point 
     ip address 10.1.1.1 
     frame-relay interface-dlci 10 
     ip summary-address eigrp 100 0.0.0.0 0.0.0.0

    EIGRP在路由表中最多添加四条等价路由,然后路由器对其进行负载均衡。负载均衡类型(每个数据包或每个目标)取决于路由器中执行的交换类型。但是,EIGRP也可以在不等价链路上实现负载均衡。

    注意:使用max-paths,可以将EIGRP配置为使用最多六个等价路由。

    如果有四条路径通往给定目标,这些路径的度量为:

  • 路径 1:1100

  • 路径 2:1100

  • 路径 3:2000

  • 路径 4:4000

  • 默认情况下,路由器在路径1和2上放置流量。使用EIGRP,您可以使用 variance命令指示路由器也在路径3和4上放置流量。此变量是一个乘数:流量将放置在度量小于最佳路径乘以差量的任何链路上。要在路径1、2和3上实现负载均衡,请使用variance 2,因为1100 x 2 = 2200,大于通过路径3的度量。同样,要添加路径4,请在router eigrp命令下发出variance 4。有关详细信息,请参阅 IGRP 和 EIGRP 中不等价路径负载均衡 (Variance) 的工作方式

    路由器如何在这些路径之间分配流量?它用通过每条路径的度量来除最大度量,四舍五入到最接近的整数,然后使用此数字作为流量份数。

    router#show ip route 10.1.4.0 
    Routing entry for 10.1.4.0/24 
      Known via "igrp 100", distance 100, metric 12001 
      Redistributing via igrp 100, eigrp 100 
      Advertised by igrp 100 (self originated) 
                    eigrp 100 
      Last update from 10.1.2.2 on Serial1, 00:00:42 ago 
      Routing Descriptor Blocks: 
      * 10.1.2.2, from 10.1.2.2, 00:00:42 ago, via Serial1 
          Route metric is 12001, traffic share count is 1 
          Total delay is 20010 microseconds, minimum bandwidth is 1000 Kbit 
          Reliability 1/255, minimum MTU 1 bytes 
          Loading 1/255, Hops 0

    对于本示例,流量份数如下:

  • 对于路径 1 和 2:4000/1100 = 3

  • 对于路径 3:4000/2000 = 2

  • 对于路径 4:4000/4000 = 1

  • 路由器通过路径1发送前三个数据包,通过路径2发送后三个数据包,通过路径3发送后两个数据包,通过路径4发送下一个数据包。路由器在通过路径1发送后三个数据包时重新启动并继续此模式。

    注意:即使配置了差异,如果报告距离大于该特定路由的可行距离,EIGRP也不会通过非等价路径发送流量。有关详细信息,请参阅可行距离、报告距离和可行后继路由部分。

    当您最初配置EIGRP时,如果您尝试影响EIGRP度量,请记住以下两个基本规则:

  • 带宽必须始终设置为接口的实际带宽;多点串行链路和其他不匹配的介质速度情况是此规则的例外情况。

  • 延迟必须始终用于影响EIGRP路由决策。

  • 由于 EIGRP 使用接口带宽确定发送数据包的速率,因此正确设置这些值非常重要。如果有必要影响 EIGRP 选择的路径,则始终使用延迟来实现此目的。

    在带宽较低时,带宽有对总度量的影响更大;在带宽较高时,延迟对总度量的影响更大。

    在重分发中使用管理标记

    外部管理标记可以中断EIGRP和其他协议之间路由环路的重新分配。如果在路由重分发到EIGRP时标记路由,则可以阻止从EIGRP重分发到外部协议。不能修改从外部路由获知的默认网关的管理距离,因为在 EIGRP 中,管理距离的修改只适用于内部路由。为了提高度量,请使用带 prefix-list 的 route-map;请勿更改管理距离。配置这些标记的基本示例如下,但本示例不显示用于中断重分发循环的整个配置。

    路由器Three将路由重分发到EIGRP,它显示:

    three#show run 
    interface Loopback0 
     ip address 172.19.1.1 255.255.255.0 
    interface Ethernet0 
     ip address 172.16.1.1 255.255.255.0 
     loopback 
     no keepalive 
    interface Serial0 
     ip address 172.17.1.1 255.255.255.0 
    router eigrp 444 
     redistribute connected route-map foo  
     network 172.17.0.0 
     default-metric 10000 1 255 1 1500 
    access-list 10 permit 172.19.0.0 0.0.255.255 
    route-map foo permit 10 
     match ip address 10 
     set tag 1 
    three#show ip eigrp topo 
    IP-EIGRP Topology Table for process 444 
    Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, 
           r - Reply status 
    P 172.17.1.0/24, 1 successors, FD is 2169856 
             via Connected, Serial0 
             via Redistributed (2169856/0) 
    P 172.16.1.0/24, 1 successors, FD is 281600 
             via Redistributed (281600/0) 
    P 172.19.1.0/24, 1 successors, FD is 128256, tag is 1 
             via Redistributed (128256/0)

    路由器Two将路由从EIGRP重分发到RIP,它显示:

    two#show run 
    interface Serial0 
     ip address 172.17.1.2 255.255.255.0 
    interface Serial1 
     ip address 172.18.1.3 255.255.255.0 
    router eigrp 444 
     network 172.17.0.0 
    router rip 
     redistribute eigrp 444 route-map foo 
     network 10.0.0.0 
     network 172.18.0.0 
     default-metric 1 
    no ip classless 
    ip route 10.10.10.10 255.255.255.255 Serial0 
    route-map foo deny 10 
     match tag 1 
    route-map foo permit 20 
    two#show ip eigrp topo 
    IP-EIGRP Topology Table for process 444 
    Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, 
           r - Reply status 
    P 172.17.1.0/24, 1 successors, FD is 2169856 
             via Connected, Serial0 
    P 172.16.1.0/24, 1 successors, FD is 2195456 
             via 172.17.1.1 (2195456/281600), Serial0 
    P 172.19.1.0/24, 1 successors, FD is 2297856, tag is 1 
             via 172.17.1.1 (2297856/128256), Serial0

    请注意172.19.1.0/24上的标记1。

    路由器One接收由路由器2重分发的RIP路由,它显示:

    one#show run
    interface Serial0 
     ip address 172.18.1.2 255.255.255.0 
     no fair-queue 
     clockrate 1000000 
    router rip 
     network 172.18.0.0 
    one#show ip route 
    Gateway of last resort is not set 
    R    172.16.0.0/16 [120/1] via 172.18.1.3, 00:00:15, Serial0 
    R    172.17.0.0/16 [120/1] via 172.18.1.3, 00:00:15, Serial0 
         172.18.0.0/24 is subnetted, 1 subnets 
    C       172.18.1.0 is directly connected, Serial0

    请注意,172.19.1.0/24已不存在。

    了解EIGRP命令输出

    show ip eigrp traffic

    此命令用于显示有关EIGRP命名配置和EIGRP自治系统(AS)配置的信息。此命令的输出显示了相邻EIGRP路由器之间交换的信息。此表后面提供了每个输出字段的说明。

    show ip eigrp traffic

  • Hello sent/received显示发送和接收的hello数据包(发送–1927/接收 — 1930)的数量

  • 发送/接收的更新显示发送和接收的更新数据包数(发送–20/接收–39)

  • 发送/接收的查询表示发送和接收的查询数据包(发送–10/接收–18)

  • Replies sent/received显示发送和接收的应答数据包数(发送–18/接收–16)

  • Acks sent/received表示发送和接收的确认数据包数(发送–66/接收–41)

  • SIA-Queries sent/received表示发送和接收的活动查询数据包中停滞的数量(sent-0/received-0)

  • SIA-Replies sent/received显示发送和接收(sent-0/received-0)的活动应答数据包中停滞的数量

  • Hello进程ID是Hello进程标识符(270)

  • PDM Process ID代表协议相关模块Cisco IOS进程标识符(251)

  • Socket Queue显示IP to EIGRP Hello Process socket queue counters(current-0/max-2000/highest-1/drops-0)

  • Input Queue显示到EIGRP PDM套接字队列计数器的EIGRP Hello进程(current-0/max-2000/highest-1/drops-0)

  • A 表示活动。这也可以显示P,表示被动。

  • 10.2.4.0/24 是目标或掩码。

  • 0 successors 显示可用于此目标的后继路由(或路径)的数量;如果 successors 大写,则表示路由正在转变。

  • FD is 512640000 显示可行距离,这是到达此目标的最佳度量或当路由进入活动状态时已知的最佳度量。

  • 可以使用set tagmatch tag命令使用路由映射设置/或过滤标记。

  • Q 表示查询挂起。此字段也可能是:U,表示更新挂起;或R,表示应答处于待定状态。

  • 1 replies 显示未处理的回复数。

  • active 00:00:01 显示此路由已处于活动状态的时间长度。

  • query origin:Local origin 显示此路由发起查询。此字段也可以是多源,这意味着多个邻居已发送有关此目标的查询,但并未发送后继路由;或后继来源,表示后继来源发起查询。

  • via 10.1.2.2显示此路由是从其IP地址为10.1.2.2的邻居获知的。此字段也可为:Connected,如果网络被直接连接到此路由器;已重分布,如果此路由在此路由器上重分布到EIGRP;或 Summary,如果这是在此路由器上生成的汇总路由。

  • (Infinity/Infinity)显示到达通过第一个字段相邻设备的路径度量和通过第二字段相邻设备的报告距离。

  • r显示已查询此邻居并等待回复。

  • Q是此路由的发送标志,表示有查询挂起。此字段也可以是U,这意味着更新处于挂起状态;或R,表示应答处于待定状态。

  • Serial1 是通过其可到达此邻居的接口。

  • Via 10.1.1.2显示已查询邻居并需要回复。

  • r显示已查询此邻居路由且尚未收到回复。

  • Serial0 是通过其可到达此邻居的接口。

  • 通过10.1.2.2(512640000/128256),Serial1显示该路由已使用(表示当存在多条等价路由时,下一路径/目标采用哪条路径)。

  • State is Passive表示网络处于被动状态,换句话说,它不查找通向此网络的路径。在稳定网络中,路由几乎总是处于被动状态。
  • Query origin flag is 1 如果此路由处于活动状态,该字段将提供关于查询发起方的信息。
  • 0:此路由处于活动状态,但并未发起查询(它在本地查找可行后继路由)。
  • 1:此路由器发起针对该路由的查询(或路由处于被动状态)。
  • 2:针对此查询的多次扩散计算。此路由器已经收到来自多个源的针对此路由的多个查询。
  • 3:获知该网络的路径并查询另一路由的路由器。
  • 4:此路由的多个查询源,包括此路由器。这类似于2,但也意味着存在描述此路径未处理的查询的查询源字符串。
  • 2后继路由器意味着有两个通向此网络的可行路径。

  • FD is 307200 显示到此网络的最佳当前度量。如果路由处于活动状态,则显示之前用于将数据包路由到此网络的路径的度量。
  • 路由描述符块每个条目都描述一条到达网络的路径。

  • 10.1.1.2 (Ethernet1)流到网络和接口(下一跳通过该接口到达)的下一跳。

  • from 10.1.2.2 是此路径信息的源。

  • Send flag is

  • 0x0:如果有与此条目相关的数据包需要发送,则这表示数据包的类型。

  • 0x1:此路由器已收到对此网络的查询,需要发送单播应答。

  • 0x2:此路由处于活动状态,必须发送组播查询。

  • 0x3:此路由已更改,必须发送组播更新。

  • Composite metric is (307200/281600) 显示到网络的总计算成本。括号中的第一个数字是通过此路径到达网络的总开销,以及到达下一跳的开销。括号中的第二个数字是报告距离,或者换句话说,是下一跳路由器使用的成本。

  • Route is Internal 表示此路由在此 EIGRP 自治系统 (AS) 内发起。 如果路由被重分配到此 EIGRP AS 中,此字段将指示该路由是外部路由。

  • 向量权值显示EIGRP用于计算网络成本的个别权值。EIGRP 不在整个网络中传播总成本信息;而是传播矢量度量,并且每个路由器分别计算成本和报告距离。

  • Minimum bandwidth is 10000 Kbit 显示到此网络的路径上的最低带宽。

  • Total delay is 2000 microseconds 显示到此网络的路径上的延迟总和。

  • Minimum MTU is 1500 此字段不在度量计算中使用。

  • 跳数为2,这不在度量计算中使用,但确实可以限制 EIGRP AS 的最大大小。默认情况下,EIGRP接受的最大跳数为100,不过最大跳数可以配置为220(带有度量最大跳数)。

  • 如果路由是外部路由,则包含此信息。此表后面提供了每个输出字段的说明。

  • 始发路由器显示,这台路由器将该路由注入到EIGRP AS。

  • External AS 显示此路由来自的自治系统(如果有一个)。

  • External Protocol 显示此路由来自的协议(如果有一个)。

  • external metric 显示外部协议中的内部度量。

  • 可使用set tag和match tag命令使用路由映射设置和/或过滤管理员标记。

  •