做个实验
R1 f0/0 10.1.12.1/24 f0/1 10.1.13.1/24 环回口0:10.1.22.2/24 环回口1: 172.16.1.2/24
R2 f0/0 10.1.12.2/24
R3 f0/0 10.1.13.3/24
开启rip
配置开启rip,注意R2上需要宣告两个网段,10.1.0.0和172.16.0.0
以R2为例,R2当前关闭了自动汇总
R2#show run | s rip
router rip
version 2
network 10.0.0.0
network 172.16.0.0
no auto-summary
查看此时R1从R2学到的路由
172.16.0.0/24 is subnetted, 1 subnets
R 172.16.1.0 [120/1] via 10.1.12.2, 00:00:01, FastEthernet0/0 //R1的环回口1网段
10.0.0.0/24 is subnetted, 3 subnets
C 10.1.13.0 is directly connected, FastEthernet0/1
C 10.1.12.0 is directly connected, FastEthernet0/0
R 10.1.22.0 [120/1] via 10.1.12.2, 00:00:01, FastEthernet0/0 //R1的环回口0网段
现在开启R2的自动汇总
命令如下:
R2(config)#router rip
R2(config-router)#auto-summary
查看开启自动汇总后的rip协议:
R2#show run | s rip
router rip
version 2
network 10.0.0.0
network 172.16.0.0
稍等一会,让R1学习到新的路由,现在去R1查看路由
172.16.0.0/16 is variably subnetted, 2 subnets, 2 masks
R 172.16.0.0/16 [120/1] via 10.1.12.2, 00:00:04, FastEthernet0/0
10.0.0.0/24 is subnetted, 3 subnets
C 10.1.13.0 is directly connected, FastEthernet0/1
C 10.1.12.0 is directly connected, FastEthernet0/0
R 10.1.22.0 [120/1] via 10.1.12.2, 00:00:04, FastEthernet0/0
对比如下:
R2关闭自动汇总:
172.16.0.0/24 is subnetted, 1 subnets
R 172.16.1.0 [120/1] via 10.1.12.2, 00:00:01, FastEthernet0/0
R2开启自动汇总,172.16.1.0/24子网会汇总成对应的主类网络172.16.0.0/16
172.16.0.0/16 is variably subnetted, 2 subnets, 2 masks
R 172.16.0.0/16 [120/1] via 10.1.12.2, 00:00:04, FastEthernet0/0
为什么10.0.0.0/24的子网没有自动汇总
以R2为例:
配置了rip后,172.16.1.0和10.1.22.0这两个网段会通过R2 F0/0接口向R1发送自己的直连路由。
依据是要发出去的路由所在的主网,和出接口即R2 F0/0接口所在的主网是否相同,如果不同就会把路由汇总成主类网络。
自动汇总的弊端
R3上增加一个环回口l0,ip是172.16.3.3/24如下图:
在R3上宣告172.16.0.0网段,打开自动汇总:
R3(config)#router rip
R3(config-router)#network 172.16.0.0
R3(config-router)#auto-summary
再查看R1上的路由:
R1#clear ip route * //清理之前的路由,重新获取
R1#show ip route
//路由结果如下:
R 172.16.0.0/16 [120/1] via 10.1.13.3, 00:00:11, FastEthernet0/1
[120/1] via 10.1.12.2, 00:00:27, FastEthernet0/0
10.0.0.0/24 is subnetted, 3 subnets
C 10.1.13.0 is directly connected, FastEthernet0/1
C 10.1.12.0 is directly connected, FastEthernet0/0
R 10.1.22.0 [120/1] via 10.1.12.2, 00:00:27, FastEthernet0/0
R2的172.16.1.0/24被汇总成主类172.16.0.0/16,R3的172.16.3.0/24被汇总成主类172.16.0.0/16。传给R1后,路由一样都是rip协议,跳数也都是1,出现了负载均衡。
如果R1要访问172.16.1.2可能数据会发给R3
衍生概念:不连续子网
如下图,两边的172.16.0.00/16子网,被中间的10.0.0.0/8子网隔开,这样的网络结构就是不连续子网,根据上面介绍,不连续子网如果打开自动汇总有可能出现数据转发错误。
关闭自动汇总后对比
R2、R3都关闭自动汇总,路由就不会被转换成主类网络
172.16.0.0/24 is subnetted, 2 subnets
R 172.16.1.0 [120/1] via 10.1.12.2, 00:00:00, FastEthernet0/0
R 172.16.3.0 [120/1] via 10.1.13.3, 00:00:00, FastEthernet0/1
手工汇总路由
如果多条路由处于相邻子网,可以手工汇总,目的是减少路由数量
如下图,R3增加了环回口0:3.1.1.0/24,环回口1:3.1.2.0/24
关闭所有路由器上rip的自动汇总,查看R1学到的R3环回口网段路由:
3.0.0.0/24 is subnetted, 2 subnets
R 3.1.2.0 [120/1] via 10.1.13.3, 00:00:21, FastEthernet0/1
R 3.1.1.0 [120/1] via 10.1.13.3, 00:00:21, FastEthernet0/1
3.1.1.0和3.1.2.0都是3.1.0.0的子网。
第三个字节 0000 00|01 0000 00|20,取前6位,后两位为0,组成汇总网络,3.1.0.0/22。R3上手工汇总路由命令:
R3(config)#int f0/0
R3(config-if)#ip summary-address 3.1.0.0 255.255.252.0
查看R1新学到的路由:
3.0.0.0/22 is subnetted, 1 subnets
R 3.1.0.0 [120/1] via 10.1.13.3, 00:00:04, FastEthernet0/1
手工汇总的注意点
1、要在网络的同一侧,比如R3的l0、l1都是R3的直连网段
2、R3通过F0/0像其他路由器告知已知网段l0、l1,所以手工汇总配置在F0/0上。
3、R1访问 3.1.1.0/24和3.1.2.0/24的下一跳都是10.1.13.3,此时可以通过汇总路由3.0.0.0/22访问到R3直连的明细子网(3.1.1.0/24和3.1.2.0/24),R3会自动将数据包转发到正确的子网。
手工汇总的意义
减少路由条目,减少资源开销