当网络中路由器的路由条目非常多时,可以通过路由汇总(又称路由汇聚或路由聚合)来减少路由条目数,加快路由收敛时间和增强网络稳定性。路由汇总的原理是,同一个自然网段内的不同子网的路由在向外(其他网段)发送时聚合成一个网段的路由发送。由于汇总后路由器将不会感知被汇总子网有关的变化,从而提高了网络稳定性,减少了不必要的路由器更新。
RIPv1是有类别路由协议,它的协议报文中没有携带掩码信息,只能识别A、B、C类这样的自然网段的路由,因此RIPv1无法支持路由聚合,也不支持不连续子网,所有路由会被自动汇总为有类路由。
RIPv2是一种无分类路由协议,报文中携带掩码信息,支持手动路由汇总和自动路由汇总两种方式。
■基于RIP进程的有类自动汇总:比如对于10.1.1.0/24(metric=2)和10.1.2.0/24(metric=3)这两条路由,聚合成自然网段路由10.0.0.0/8(metric=2)。自动汇总是按类聚合的,在华为设备上自动汇总是默认关闭的,可手动更改配置使自动汇总生效;
■基于接口的手动汇总:用户可以指定聚合路由。比如,对于10.1.1.0/24(metric=2)和10.1.2.0/24(metric=3)这两条路由,可以在此接口上配置聚合路由10.1.0.0/16(metric=2)。
在由三台路由器所组成的简单网络中,R3连接着多个网段,通过loopback来模拟多个网段,通过实验实现RIPv1自动汇总,RIPv2自动汇总和RIPv2手动汇总。
设备 | 接口 | IP地址 | 子网掩码 | 默认网关 |
---|---|---|---|---|
R1(AR2220) | serial 1/0/0 | 172.16.1.1 | 255.255.255.0 | N/A |
R2(AR2220) | serial 1/0/0 | 172.16.1.2 | 255.255.255.0 | N/A |
R2(AR2220) | serial 1/0/1 | 172.16.2.1 | 255.255.255.0 | N/A |
R3(AR2220) | serial 1/0/1 | 172.16.2.2 | 255.255.255.0 | N/A |
R3(AR2220) | loopback 0 | 10.1.1.1 | 255.255.255.0 | N/A |
R3(AR2220) | loopback 1 | 10.1.2.1 | 255.255.255.0 | N/A |
R3(AR2220) | loopback 2 | 10.1.3.1 | 255.255.255.0 | N/A |
R3(AR2220) | loopback 310.1.1.1 | 10.1.4.1 | 255.255.255.0 | N/A |
根据实验编址表进行相应的基本配置,并使用ping命令检查各直连链路的连通性。在这里只测试一个,其余的就不测试了。
[R1]interface serial 1/0/0
[R1-Serial1/0/0]ip address 172.16.1.1 24
[R2]interface serial 1/0/0
[R2-Serial1/0/0]ip address 172.16.1.2 24
[R2-Serial1/0/0]interface serial 1/0/1
[R2-Serial1/0/1]ip address 172.16.2.1 24
[R3]interface serial 1/0/1
[R3-Serial1/0/1]ip address 172.16.2.2 24
[R3]interface LoopBack 0
[R3-LoopBack0]ip address 10.1.1.1 24
[R3-LoopBack0]interface LoopBack 1
[R3-LoopBack1]ip address 10.1.2.1 24
[R3-LoopBack1]interface LoopBack 2
[R3-LoopBack2]ip address 10.1.3.1 24
[R3-LoopBack2]interface LoopBack 3
[R3-LoopBack3]ip address 10.1.4.1 24
[R3]ping 172.16.2.1
PING 172.16.2.1: 56 data bytes, press CTRL_C to break
Reply from 172.16.2.1: bytes=56 Sequence=1 ttl=255 time=50 ms
Reply from 172.16.2.1: bytes=56 Sequence=2 ttl=255 time=20 ms
[R1]rip 1
[R1-rip-1]network 172.16.0.0
[R2]rip 1
[R2-rip-1]network 172.16.0.0
[R3]rip 1
[R3-rip-1]network 172.16.0.0
[R3-rip-1]network 10.0.0.0
配置完成后在R1和R2上查看路由表,可以看到R3发送过来的路由条目10.0.0.0/8没有任何明细路由条目。
[R1]display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 10 Routes : 10
Destination/Mask Proto Pre Cost Flags NextHop Interface
10.0.0.0/8 RIP 100 2 D 172.16.1.2 Serial1/0/0
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
172.16.1.0/24 Direct 0 0 D 172.16.1.1 Serial1/0/0
172.16.1.1/32 Direct 0 0 D 127.0.0.1 Serial1/0/0
172.16.1.2/32 Direct 0 0 D 172.16.1.2 Serial1/0/0
172.16.1.255/32 Direct 0 0 D 127.0.0.1 Serial1/0/0
172.16.2.0/24 RIP 100 1 D 172.16.1.2 Serial1/0/0
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
[R2]display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 13 Routes : 13
Destination/Mask Proto Pre Cost Flags NextHop Interface
10.0.0.0/8 RIP 100 1 D 172.16.2.2 Serial1/0/1
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
172.16.1.0/24 Direct 0 0 D 172.16.1.2 Serial1/0/0
172.16.1.1/32 Direct 0 0 D 172.16.1.1 Serial1/0/0
172.16.1.2/32 Direct 0 0 D 127.0.0.1 Serial1/0/0
172.16.1.255/32 Direct 0 0 D 127.0.0.1 Serial1/0/0
172.16.2.0/24 Direct 0 0 D 172.16.2.1 Serial1/0/1
172.16.2.1/32 Direct 0 0 D 127.0.0.1 Serial1/0/1
172.16.2.2/32 Direct 0 0 D 172.16.2.2 Serial1/0/1
172.16.2.255/32 Direct 0 0 D 127.0.0.1 Serial1/0/1
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
在R3的Serial 1/0/1进行抓包,可以观察到RIPv1的协议报文中没有携带掩码信息,只有相应的网络号及metric值,即RIPv1只发布汇总后的有类路由,默认开启汇总,无法关闭。
在路由器上配置version 2
命令,运行RIPv2协议
[R1]rip 1
[R1-rip-1]version 2
[R2]rip 1
[R2-rip-1]version 2
[R3]rip 1
[R3-rip-1]version 2
配置完成后,对R3的serial 1/0/1进行抓包,可以观察到RIPv2报文中携带了掩码信息,支持自送汇总,默认是开启的,可以关闭。
查看R1和R2的路由表,可以看到,接收到的路由条目是具体的明细路由条目,而没有汇总路由,即此时RIPv2默认自动汇总并没有生效。
[R1]display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 13 Routes : 13
Destination/Mask Proto Pre Cost Flags NextHop Interface
10.1.1.0/24 RIP 100 2 D 172.16.1.2 Serial1/0/0
10.1.2.0/24 RIP 100 2 D 172.16.1.2 Serial1/0/0
10.1.3.0/24 RIP 100 2 D 172.16.1.2 Serial1/0/0
10.1.4.0/24 RIP 100 2 D 172.16.1.2 Serial1/0/0
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
172.16.1.0/24 Direct 0 0 D 172.16.1.1 Serial1/0/0
172.16.1.1/32 Direct 0 0 D 127.0.0.1 Serial1/0/0
172.16.1.2/32 Direct 0 0 D 172.16.1.2 Serial1/0/0
172.16.1.255/32 Direct 0 0 D 127.0.0.1 Serial1/0/0
172.16.2.0/24 RIP 100 1 D 172.16.1.2 Serial1/0/0
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
这是因为在华为设备上,以太网接口和串口都默认启用了水平分割功能。为了防止环路和不连续子网问题的产生,在启用了水平分割或毒性逆转的接口上,RIPv2的默认自动汇总就会失效,所以从R3通告过来的都是具体的明细路由条目。
要使RIPv2的默认自动汇总生效,有两种方法。
第一种方法,使用summary always
命令。配置该命令后,不论水平分割是否启用,RIPv2的自动汇总都生效。
[R3]rip 1
[R3-rip-1]version 2
[R3-rip-1]summary always
第二种方法,关闭相应接口下的水平分割功能。
[R3]interface serial 1/0/1
[R3-Serial1/0/1]undo rip split-horizon
使用以上任意一种方法后查看路由表,可以看到此时RIPv2自动汇总生效了。
[R1]display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 11 Routes : 11
Destination/Mask Proto Pre Cost Flags NextHop Interface
10.0.0.0/8 RIP 100 2 D 172.16.1.2 Serial1/0/0
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
172.16.0.0/16 RIP 100 2 D 172.16.1.2 Serial1/0/0
172.16.1.0/24 Direct 0 0 D 172.16.1.1 Serial1/0/0
172.16.1.1/32 Direct 0 0 D 127.0.0.1 Serial1/0/0
172.16.1.2/32 Direct 0 0 D 172.16.1.2 Serial1/0/0
172.16.1.255/32 Direct 0 0 D 127.0.0.1 Serial1/0/0
172.16.2.0/24 RIP 100 1 D 172.16.1.2 Serial1/0/0
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
配置手动汇总要先删除上面配置的自动汇总配置,在R3上面使用rip summary-address命令配置手动汇总。
[R3]rip 1
[R3-rip-1]undo summary
[R3]interface Serial 1/0/1
[R3-Serial1/0/1]rip split-horizon
[R3-Serial1/0/1]rip summary-address 10.1.0.0 255.255.248.0
配置完成后查看R1的路由表。
[R1]display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 10 Routes : 10
Destination/Mask Proto Pre Cost Flags NextHop Interface
10.1.0.0/21 RIP 100 2 D 172.16.1.2 Serial1/0/0
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
172.16.1.0/24 Direct 0 0 D 172.16.1.1 Serial1/0/0
172.16.1.1/32 Direct 0 0 D 127.0.0.1 Serial1/0/0
172.16.1.2/32 Direct 0 0 D 172.16.1.2 Serial1/0/0
172.16.1.255/32 Direct 0 0 D 127.0.0.1 Serial1/0/0
172.16.2.0/24 RIP 100 1 D 172.16.1.2 Serial1/0/0
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0