两台路由器之间的 RIP 路由中断

网络工程 思科 路由 路由器 撕裂
2021-07-05 17:27:30

有 2 个路由器连接如下:

Network1 ----- (172.16.1.1/24) Router 1 (172.16.3.1/30) ------ (172.16.3.2/30) Router 2 ------ (172.16.2.1/24) Network 2

我尝试使用 RIP 协议为动态路由添加地址,为路由器 1 添加 172.16.1.0 和 172.16.3.0,为路由器 2 172.16.3.0 和 172.16.2.0 添加地址,但在这两种情况下它们默认分配给 172.16.0.0,并且这是行不通的。有什么建议?

2个回答

在这两种情况下,它们默认分配为 172.16.0.0,并且不起作用

我稍微修改了你的 ascii 艺术以减少滚动......听起来你是说你不能从 N2 到达 N1 ......

Broken RIPv1 topology
=====================

N1 ---- (172.16.1.1/24) R1 (172.16.3.1/30) ----- (172.16.3.2/30) R2 ----- (172.16.2.1/24) N2

有类路由协议概述

RIPv1 是一种有类路由协议……因此,它在通告路由时不会将网络掩码与路由相关联。有类路由协议会​​做一些不直观的事情......

  1. 他们只在掩码匹配的接口上通告路由(这是你的问题)
  2. 它们会在主要网络边界自动汇总(请参阅下面的奖励材料)

接口网络掩码

为了使您的拓扑正常工作,您的掩码必须在所有 RIPv1 接口上匹配,除非您使用无类路由协议(例如 RIPv2、EIGRP、OSPF 或 ISIS)。如果您需要使用 RIPv1,请重新配置您的拓扑,使所有接口都具有匹配的掩码,如下所示...

Functional RIPv1 topology
=========================

N1 ---- (172.16.1.1/24) R1 (172.16.3.1/24) ----- (172.16.3.2/24) R2 ----- (172.16.2.1/24) N2

赠品:RIPv1 自动汇总示例

由于这也往往会绊倒人们,因此我提供了一个 RIPv1 自动摘要动态示例。

当我在下面提到主要网络边界时,我指的是A 类、B 类和 C 类 IPv4 网络的经典定义......

  • A 类(8 位网络掩码):1.0.0.0/8 - 127.0.0.0/8
  • B 类(16 位网络掩码):128.0.0.0/16 - 191.255.0.0/16
  • C 类(24 位网络掩码):192.168.0.0/24 - 223.255.255.0/24

继续 RIPv1 自动汇总示例...为简单起见,我将使用匹配的 /24 接口网络掩码。

Lo0:
192.168.1.0/24
Lo1:
1.1.2.0/24
+----+                  +----+                     +----+
| R1 +------------------+ R2 +---------------------+ R3 |
+----+                  +----+                     +----+
          1.1.1.0/24              172.16.1.0/24

router rip               router rip                 router rip
 version 1                version 1                  version 1
 network 192.168.1.0      network 1.0.0.0            network 172.16.0.0
 network 1.0.0.0          network 172.16.0.0

The routing table on R3 contains:
C     172.16.1.0/24
R     1.0.0.0/8        <--- 1.1.1.0/24 and 1.1.2.0/24 are "hidden" by the 
                            classful summary at R2

R     192.168.1.0/24   <--- 192.168.1.0/24 passes transparently through R2
                            since it's a Class C network itself and is not 
                            summarized at R2

R1和R2通过1.0.0.0/8主网的子网连接,所以在R1和R2之间通告了1.1.1.0/24和1.1.2.0/24;但是,R2和R3之间的链路不在1.0.0.0/8,因此R2对1.0.0.0/8的子网和172.16.0.0/16的子网进行自动汇总。

当汇总主要网络的子网时,它们会被汇总的路由隐藏......当 1.1.1.0/24 和 1.1.2.0/24 汇总为 1.0.0.0/8 时,这会发生在 R2。Cisco 路由器无法在 RIP 版本 1 下禁用自动汇总(但它们可以用于 RIPv2)。

这不是自动摘要的情况。自动摘要仅适用于主要网络边界。因此,您需要拥有 172.16.xx 和 172.17.xx 等才能汇总网络。

你看到的是,RIP 只支持路由过程下的有类网络。因此,即使您输入 172.16.3.0,它也会将其转换为 172.16.0.0。

您可以在 RIP 版本 2 中使用无类路由。它在路由进程配置下看起来是有类的,但它会正确地通告路由。

请使用sh ip protocols检查您正在运行的版本。

如果它不起作用,那么我怀疑您正在运行版本 1。