a---------------------b------------------------c---------------------d
l0 152.1.11.1/28 l0 152.1.3.1/24
e0 152.1.10.1/24
s0 152.1.1.1/30 s1 152.1.1.5/30 s1 152.1.2.1/24
///////////// router a /////////////
int lo0
int e0
int s0
router os 64
///////////// router b ////////////
int s0
int s1
router os 64
/////////////// router c ////////////////
int s0
int s1
router os 64
router rip
//////////// router d ////////////
int lo0
int s0
router rip
//////////////// 监视和测试配置 ////////////
////////// router c /////////
show ip ro
O IA 152.1.10.0/24 [110/138]
O IA 152.1.1.0/30
R 152.1.3.0/24
注意还没有A上LO0接口的路由:152.1.11.0/28。因为还未被通告。
/////// router a ///////
router os 64
//////////// router c //////////
show ip ro
O E2 152.1.11.0/28 [110/20]
O IA 152.1.10.0/24
O IA 152.1.1.0/30
R 152.1.3.0/24
///////// router c ///////////
router os 64
////////// router a /////////
sh ip ro
O E2 152.1.3.0/24
O E2 152.1.2.0/24
O IA 152.1.1.4/30
此时,在路由器D上仅知道一个网络152.1.10.0/24,因为所有其他网络都是超过24位范围来子网化的。记住RIP是一个分类协议,是不传送子网信息的。
为使这些路由重分发到RIP中,我们可以对这两个网络用24位掩码创建静态路由,然后再将这些路由重分布到RIP中,或者我们可以在OSPF中汇总这些路由。
////// router c ///////
ip route 152.1.11.0 255.255.255.0 s0
ip route 152.1.1.0 255.255.255.0 s0
router rip
这时我们再在C上show ip ro
R 152.1.11.0/24
R 152.1.1.0/24
R 152.1.10.0/24
现在从路由器C上删除静态路由和重分布静态命令,来实验第二个方法(在OSPF中汇总这些路由到24位掩码),为达此目的,我们需使用OSPF区域范围(AREA RANGE)命令和OSPF地址汇总命令(SUMMARY ADDRESS)。
此实验中两种情况都遇到了。网络152.1.11.0/28是一个外部路由,因为它被重分布到OSPF进程中。网络152.1.11.0/30是一个非骨干网OSPF区域(区域1)
注意:地址汇总命令仅汇总那些来自其他路由协议正被重分布到OSPF的路由。area range命令用于在OSPF区域间路由汇总。area range命令用在区域边界路由器上。而地址汇总命令用在自治系统边界路由器上(ASBR)
在路由器A的OSPF进程下加入OSPF地址汇总命令,该命令将网络152.1.11.0/28汇总为152.1.11.0/24,这些网络就会被传播到路由器D。
//// ROUTER A ////
router os 64
//// router b ////
router os 64
当使用相互重分布时必须小心以避免路由环。度量和水平分割会有助于防止路由环,但配置distribute-list以使路由器不能通告非法路由是个好主意。为验证这一原理,使路由器C的接口S1的水平分割失效。
//// router c ////
int s1
路由D上用命令DEBUG IP RIP显示C的更新报文。
C上加distribute-list列表
//// router c ////
access-list 1 permit 152.1.1.0 0.0.0.255
access-list 1 permit 152.1.11.0 0.0.0.255
access-list 1 permit 152.1.10.0 0.0.0.255
router rip