路由、有类和无类路由协议的汇总问题.docx
关于主类边界路由、有类和无类路由协议的汇总问题Classful 协议,翻译过来应该是有类协议,而不是主类协议。其特点是更新时不发送子网掩码,在 主类网络边界路由器上自动进行汇总。基于这个特点,Classful 协议 (有类协议)一般应用于相同子网,且相同掩码的网络。下面来详细说明Classful 协议如何进行汇总:首先,要明确一个概念主类边界路由器。 主类指 A.B.C 类 IP 地址,边界路由器指网络地址不同的边界路由器。例如某个Router 上配置了多个网段,其中某些网段的信息必须通过某一个特定的网段向其他Router 进行通告,而这个特定的网段与其他网段分属不同的主类网络,那么这个Router就是主类边界路由器,如处于A类的122.0.0.0 与B类的 129.0.0.0 之间的路由器就是边界路由器;若该路由器各个接口配置的IP 是同一主类网络的不同子网,如配有主类为B 类 IP 地址 172.16.1.0/24 与 172.17.1.0/24 的路由器,也可称为主类边界路由器。Classful 协议在主类边界路由器上自动汇总分以下几种情况:1)对于相同主类网络的子网,如果 mask与出口接口的mask相同,则把该子网通过外出接口发布出去;2)对于相同主类网络的子网,如果 mask与出口接口的mask不同,则把该子网丢弃;3)对于不同主类网络的子网,无论 mask与出口接口的mask是否相同,把该网 段汇总成主类网络发布出去。用下面的实验验证一下:R1、R2和R3三台路由器,R1的s1/1与R2的s1/0相连,R2的s1/1与R3的s1/0相连,拓扑如下:(R1)s1/0 s1/0(R2)s1/1 s1/0(R3)R1 上的 IP 配置如下:s1/0 : 10.0.0.1/24loopback0 : 10.0.1.1/24loopback1 : 10.0.2.1/25loopback2 : 11.0.0.1/24loopback3 : 11.0.1.1/25R2上的配置如下:s1/0 : 10.0.0.2/24s1/1 : 172.16.0.2/24R3上的配置如下:s1/0 : 172.16.0.1/24首先,在R1和R2上配置上述IP,并配置RIPvl协议:R1(config)#router ripR1(config-router)#net 10.0.0.0R1(config-router)#net 11.0.0.0R2(config)#router ripR2(config-router)#net 10.0.0.0然后,在R2上查看路由表,显示如下:172.16.0.0/24 is subnetted, 1 subnetsC 172.16.0.0 is directly connected, Serial1/110.0.0.0/24 is subnetted, 2 subnetsC 10.0.0.0 is directly connected, Serial1/0R 10.0.1.0 120/1 via 10.0.0.1, 00:00:16, Serial1/0R 11.0.0.0/8 120/1 via 10.0.0.1, 00:00:16, Serial1/0可以发现,R1 上 loopback0 的 10.0.1.0/24 已经通过10.0.0.1 (也就是R1的s1/0)这个外出接口发布给 R2了;而loopbackl的10.0.2.0/25 ,由于mask 是/25,与外出接口 s1/1的/24不同,所以被丢弃,因此 R2没有学习到R1上 loopback1 的网段。R1 上 loopback2 的 11.0.0.0/24 与 loopback3 的 11.0.1.0/25 , 由于与外出接口 s1/0分属于不同的主类网络,所以无论是/24还是/25的mask,统统被汇总成了主类网络11.0.0.0/8 发布给R2。现在,从R2上试着ping R1的各个接口,只有10.0.2.1 无法ping通,因为 loop1 的 10.0.2.0/25 被丢弃了。接下来,配置R3的IP,并在R2和R3上继续配置RIPvl: R2(config)#router ripR2(config-router)#net 172.16.0.0 R3(config)#router rip R3(config-router)#net 172.16.0.0 查看R3的路由表,显示如下: 172.16.0.0/24 is subnetted, 1 subnets C 172.16.0.0 is directly connected, Serial1/0 R 10.0.0.0/8 120/1 via 172.16.0.2, 00:00:15, Serial1/0 R 11.0.0.0/8 120/2 via 172.16.0.2, 00:00:15, Serial1/0现在可以看下R2 的路由表里有那些路由信息:10.0.0.0/24 10.0.1.0/2411.0.0.0/8 还有 172.16.0.0/24 ;其中 172.16.0.0/24 是与 R3直连的网段,R2 须通过该网段把它知道的其他网段的路由信息发布给R3,所以172.16.0.0/24网段所在的s1/1就是其他网段路由信息通往 R3的外出接口。现在不难理解 R3 路由表了R2上的10.0.0.0/24 和10.0.1.0/24 与外出接口 s1/1分属不同 主类网络,所以它们被汇总成了10.0.0.0/8 。最后在R3上Ping R1的各个接口: 一切似乎很正常,但是ping 10.0.2.1时,显示的既不是!!!也不是. 而是U.U.U。因为当R1对外宣告的时候, loopback1-10.0.2.0/25,由于 mask是/25 ,与外出接口 s1/1 的/24 不同,所以被丢弃,因此R2没有学习到R1上loopback1的网段,同样R3也无法学习到,因 此路由表中没有到达loopback1的路径,U.U.U表示目的主机不可达。其实有类无类协议的区别就在于是否支持VLSM可变长子网掩码)。有类的不发送掩码,不支持VLSM无类的反之。默认情况下无类协议和有类协议一样, 在边界路由器上自动进行汇总(OSPF不在边界自动汇总);而无类协议可以关 闭自动汇总功能,改用手工方式进行汇总。无类协议的好处是什么呢?还是继续实验看看:拓扑还是上面的拓扑,只是改一下IP 信息。(R1)s1/0 s1/0(R2)s1/1 s1/0(R3)R1 上的 IP 配置如下:s1/0 : 172.16.1.1/24 loopback0 : 10.0.1.1/24R2上的配置如下:s1/0 : 172.16.1.2/24s1/1 : 172.16.0.2/24 loopback0:10.0.3.1/24 R3上的IP配置如下: s1/0 : 172.16.0.1/24 loopback0 : 10.0.2.1/24然后在 3台 Router 上配置的RIPv1, 由于 R1 上 loopback0 的 10.0.1.0/24 与外出 接 口 s1/1 的 172.16.1.0/24 分 属 不 同 主 类 网 络 , 所 以 被 自 动 汇 总 成 10.0.0.0/8 发布给R2,而R3上loopback。的10.0.2.0/24 也同理被自动汇总 成了 10.0.0.0/8 发给了 R2。R2开骂了: “你大爷的!你们到底谁是10.0.0.0/8 ? ” 这就是一个不连续的子网在有类协议中的尴尬,所以就有了 RIPv2版本。但不是敲一个version 2命令就万事大吉了的,因为升级到v2虽然可以支持VLSMT,但是只有这步路由器还是无法区分不连续子网,因为默认情况下无类协议和有类协议一样,在边界路由器上会自动进行汇总;而无类协议可以关闭这个自动汇总功能,改用手工方式进行汇总,在每台 Router上RIPv2进程下关闭自动汇总,即发布 no auto-summary 的命令就可以让路由器区分不连续子网了。详细过程见下面配置:先shut掉R2的loopback0 ,配置RIPv1时,R2路由表显示如下: 172.16.0.0/24 is subnetted, 2 subnetsC 172.16.0.0 is directly connected, Serial1/1C 172.16.1.0 is directly connected, Serial1/0R 10.0.0.0/8 120/1 via 172.16.1.1, 00:00:12, Serial1/0120/1 via 172.16.0.1, 00:00:26, Serial1/1 -止匕时 R2对左右两边“半信半疑”然后,激活R2的loopback0 , R2路由表如下: 172.16.0.0/24 is subnetted, 2 subnetsC 172.16.0.0 is directly connected, Serial1/1C 172.16.1.0 is directly connected, Serial1/0 10.0.0.0/24 is subnetted, 1 subnetsC 10.0.3.0 is directly connected, Loopback0 -此时 R2只“相信自己”接着,把RIPv1 升级到 v2, R2 路由表如下:172.16.0.0/24 is subnetted, 2 subnets C 172.16.0.0 is directly connected, Serial1/1 C 172.16.1.0 is directly connected, Serial1/0 10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks C 10.0.3.0/24 is directly connected, Loopback0 R 10.0.0.0/8 120/1 via 172.16.1.1, 00:00:02, Serial1/0 120/1 via 172.16.0.1, 00:00:02, Serial1/1 -止匕时 R2 “集思广益”最后, no auto-summary, R2 路由表如下: 172.16.0.0/24 is subnetted, 2 subnets C 172.16.0.0 is directly connected, Serial1/1C 172.16.1.0 is directly connected, Serial1/0 10.0.0.0/24 is subnetted, 3 subnetsR 10.0.2.0 120/1 via 172.16.0.1, 00:00:02, Serial1/1C 10.0.3.0 is directly connected, Loopback0R 10.0.1.0 120/1 via 172.16.1.1, 00:00:01, Serial1/0