OSPF 和 EIGRP 如何处理 2 条完全相同的路由?

网络工程 路由 ospf eigrp
2021-07-10 00:25:08

如果你参考这张图,

eigrp-ospf-问题图

ospf 和eigrp 会共享10 右边的网络给他们的邻居吗?

我在两个不同的场景中一次使用一个协议而不是同时运行两个协议来问这个问题。

根据我的理解,像 ospf 这样的链路状态协议会这样做,而作为距离矢量协议的 eigrp 将仅共享一条路由,但在这种情况下,假设两条路由完全相同,那么将如何处理?

3个回答

ospf 和eigrp 会共享10 右边的网络给他们的邻居吗?

根据我的理解,像 ospf 这样的链路状态协议会这样做,而作为距离矢量协议的 eigrp 将仅共享一条路由,但在这种情况下,假设两条路由完全相同,那么将如何处理?

默认情况下,路由器会将通过 EIGRP 学习到的路由安装到路由表中。这是因为 EIGRP 的管理距离比 OSPF 低。

还需要注意的是,两条学习到的路由都将保留在各自的路由过程中。因此,路由器知道两者,但在路由时只会选择一条路由。

路由器按以下顺序选择路由:

  1. 前缀长度- 最长匹配的路由优先。前缀长度胜过所有其他路由属性。
  2. 管理距离- 如果有多个路由到具有相同前缀长度的目的地,则首选具有最低管理距离的协议学习的路由。
  3. 度量- 如果同一协议学习到多条具有相同前缀长度的路由,则首选度量最低的路由。(如果这些路由中的两条或更多条具有相同的度量,则可能会在它们之间进行负载平衡。)

Jeremy Stretch在此处深入探讨了路线选择的详细信息和示例,做得非常好


编辑:

我在两个不同的场景中一次使用一个协议而不是同时运行两个协议来问这个问题。

在所有条件相同且路由过程支持的情况下,将发生等价负载均衡。

路由器处理负载平衡的确切方式取决于您的配置、IOS 版本以及可能的路由器平台。思科通过以下文件深入探讨了这个问题。


它在路由表中是什么样子的?

以下是具有等价路由的 EIGRP 说话路由器的输出示例10.1.1.0/24

ROUTER2#show ip route
[...omitted text...]
      10.0.0.0/8 is variably subnetted, 5 subnets, 2 masks
D        10.1.1.0/24 [90/30720] via 10.1.3.2, 00:00:17, FastEthernet1/0
                     [90/30720] via 10.1.2.2, 00:00:17, FastEthernet0/0
C        10.1.2.0/24 is directly connected, FastEthernet0/0
L        10.1.2.1/32 is directly connected, FastEthernet0/0
C        10.1.3.0/24 is directly connected, FastEthernet1/0
L        10.1.3.1/32 is directly connected, FastEthernet1/0

以下是 OSPF 的示例:

ROUTER2#show ip route
[...omitted text...]
      10.0.0.0/8 is variably subnetted, 5 subnets, 2 masks
O        10.1.1.0/24 [110/2] via 10.1.3.2, 00:00:02, FastEthernet1/0
                     [110/2] via 10.1.2.2, 00:00:02, FastEthernet0/0
C        10.1.2.0/24 is directly connected, FastEthernet0/0
L        10.1.2.1/32 is directly connected, FastEthernet0/0
C        10.1.3.0/24 is directly connected, FastEthernet1/0
L        10.1.3.1/32 is directly connected, FastEthernet1/0

如果我正确理解您的问题,R2 将学习到 10 网络的两条路径。假设度量相等,两种协议都会将两条路由放入路由表中,路由器将在它们之间进行负载平衡。R1 当然只会学习一条路径——通过 R2。

@tdurden 为您提供了很好的参考,以了解 Cisco 路由器如何执行负载平衡。

思科通过他们所谓的“流”来管理流量。当流量到达时,对 5 元组进行评估:* 协议(TCP、UDP、ICMP、OSPF、EIGRP)* 源 IP 地址 * 源端口 * 目标 IP 地址 * 目标端口

标识为现有流一部分的所有后续流量都通过同一链路发送,以避免出现乱序数据包(例如没有序列号的 UDP 语音对话)。在负载平衡的情况下,它有效地分配每个流循环。

如果您在观看 youtube 视频时 ping,由于 ICMP 是无状态的,ICMP 响应可能会在链接之间交替,而观看 youtube 视频基本上是固定到链接的。

EIGRP 和 OSPF 都支持等价负载平衡。

EIGRP支持不等价负载均衡,但必须通过在小环境下通常会失败的可行性条件;并且备用路线最终未使用。

在 OSPF 中,两条路由的成本都是 2。因此,流量将平等地流经两个

[110/2] 通过 10.1.3.2, 00:00:02, FastEthernet1/0

[110/2] 通过 10.1.2.2、00:00:02、FastEthernet0/0

在 EIGRP 中,两条路由的成本均为 30720。因此,流量将通过 10.1.3.2、00:00:17、FastEthernet1/0 等量流经 [90/30720]

[90/30720] 通过 10.1.2.2,00:00:17,FastEthernet0/0