第一次配置GNS3路由器,连接了4台路由器(可以互相ping通),路由协议是router eirgp 10
。
show ip route
这是R4:
D 192.100.106.0/24 [90/2273792] via 192.100.101.2, 00:04:15, Serial1/1
D 192.100.104.0/24 [90/2273792] via 192.100.102.2, 00:04:13, Serial1/0
D 192.100.105.0/24 [90/1766912] via 192.100.102.2, 00:04:13, Serial1/0
192.100.102.0/24 is variably subnetted, 2 subnets, 2 masks
D 192.100.102.0/24 is a summary, 00:04:25, Null0
C 192.100.102.0/30 is directly connected, Serial1/0
D 192.168.0.0/24 [90/1764352] via 192.100.102.2, 00:04:13, Serial1/0
D 192.100.103.0/24 [90/2273792] via 192.100.102.2, 00:04:15, Serial1/0
[90/2273792] via 192.100.101.2, 00:04:16, Serial1/1
C 192.168.1.0/24 is directly connected, FastEthernet0/0
192.100.101.0/24 is variably subnetted, 2 subnets, 2 masks
D 192.100.101.0/24 is a summary, 00:04:26, Null0
C 192.100.101.0/30 is directly connected, Serial1/1
当我跟踪路由时R5从R4(接口 192.100.105.2),路径始终为R4->R2->R5。有时我需要(随机)它选择另一条路径来R5, 例如R4->R3->R5。 我该怎么做?
答案1
有两种方法可以解决这一问题:
1) 在 R4 上禁用 CEF。没有 CEF 意味着进程切换,通常会恢复为按数据包进行负载平衡。
no ip cef
或者
2) 在每个出站接口上启用每个数据包负载共享,同时仍然启用 CEF(不推荐用于实际场景,因为您将在目标主机上收到无序数据包)
ip cef
int fa0/0
ip load sharing-per packet
注意:这通常适用于中转(通过 R4 的流量,而不是源自 R4 的流量)。在您的示例中,如果您从 R4 发起跟踪路由,我的经验是路由器通常会交替将数据包发送到其可用的第一跳路径。如果您没有看到这种行为,您能否确认在 R4 的路由表中有两条通往目的地的有效路由?
答案2
现在包含了 show IP route,很明显您的问题是您在路由表中没有两条等价路由来平衡流量负载。您的 192.100.105.0/24 路由语句应该与 192.100.103.0/24 相同。
D 192.100.103.0/24 [90/2273792] via 192.100.102.2, 00:04:15, Serial1/0
[90/2273792] via 192.100.101.2, 00:04:16, Serial1/1
但你只有一条路线。检查带宽和延迟在 R2 到 R5 与 R3 到 R5 之间的链路上(显示接口串行 n/n)。它们需要匹配。一旦您在路由表中为 192.100.105.0/24 获得两条路由,您的跟踪路由应该会适当平衡。如果您希望通过路由器的流量逐个数据包平衡,则另一个答案仍然有效。