一,重分布的定义


      路由重分布,是指链接到不同路由选择域的边界路由器在不同自主系统之间交换和通告路由选择信息的能力。
 
 

二。重分布的原则(我们必须理解重分布的原则,否则对于重分布所产生的问题将无从下手)
 
       1,负责重分布的路由器必须具有以被重分布路由协议学到的路由条目或是具有被重分布路由协议进程下的接口时,重分布才能实现。
      2,负责重分布的路由器在重分布前后路由表条目不发生改变。
 
     下面通过一个个人认为比较经典的重分布实验才论证这个原则:
 
 
实验拓扑:
 
 

 
 
实验要求:如图配置各接口地址和路由协议;
                按箭头方向(顺势针)进行路由重分布;
                观察各路由器的路由条目。


在实验之前,我们不妨设想一下实验的结果:(ps:就像本人当初想的一样,衰~~~)
可能结果1:R1把rip-----》ospf,而ospf————》eigrp ,而eigrp-------》rip,哇!好大一个环路!无限的递归,嵌套........最后路由表将崩溃!
可能结果2:根本不会出现结果的情况,因为比如拿R2来说当它的2.2.2.2 绕了一个弯再回来的时候根本不会再加这条路由,因为本地已经有了优先级更高的直连2.2.2.2;可是R2应该可以学到R3的3.3.3.3,因为本地没有。相应的R3和R4也因如此。

好吧 其实上面两种设想不无道理,但是都是错的!关键是没有理解重分布的原则。
 
 
实验配置:




 
    第一步:配置各接口地址和路由协议(接口配置略)
 
R1:

router eigrp 100
network 14.1.1.1 0.0.0.0
auto-summary
!
router ospf 1
log-adjacency-changes
network 13.1.1.1 0.0.0.0 area 0
!
router rip
version 2
network 12.0.0.0
no auto-summary
 
R2:

router rip
version 2
network 0.0.0.0
no auto-summary
 
 
R3:
router ospf 1
log-adjacency-changes
network 0.0.0.0 255.255.255.255 area 0
 
 
R4:
 
router eigrp 100
network 0.0.0.0
no auto-summary
 
 
 
 
 
第二步:在R1上配置路由重分布:
 

router   rip
version 2
redistribute eigrp 100 metric 1 (距离矢量协议重分布时需指定metric)
router   ospf 1
redistribute rip subnets               (缺少关键字subnet,将无法对无类网络进行重分布)
router  eigrp 100
redistribute ospf 1 metric 10000 100 255 1 1500  距离矢量协议重分布时需指定metric
 
 
 
 
 
 
实现现象:
第一步完成后R1的路由表(未重分布):
 
R1#sh ip route rip
     2.0.0.0/32 is subnetted, 1 subnets
R       2.2.2.2 [120/1] via 12.1.1.2, 00:00:09, Serial0/0

R1#sh ip route ospf
     3.0.0.0/32 is subnetted, 1 subnets
O       3.3.3.3 [110/65] via 13.1.1.3, 00:06:15, Serial0/1

R1#sh ip route eigrp
     4.0.0.0/32 is subnetted, 1 subnets
D       4.4.4.4 [90/409600] via 14.1.1.4, 00:06:36, FastEthernet0/0
 
第二步完成后各路由器的路由表:
R1:
 
R1#sh ip route rip
     2.0.0.0/32 is subnetted, 1 subnets
R       2.2.2.2 [120/1] via 12.1.1.2, 00:00:09, Serial0/0

R1#sh ip route ospf
     3.0.0.0/32 is subnetted, 1 subnets
O       3.3.3.3 [110/65] via 13.1.1.3, 00:06:15, Serial0/1

R1#sh ip route eigrp
     4.0.0.0/32 is subnetted, 1 subnets
D       4.4.4.4 [90/409600] via 14.1.1.4, 00:06:36, FastEthernet0/0

以上验证了原则2:“ 负责重分布的路由器在重分布前后路由表条目不发生改变”

R2:

R2#sh ip route rip
     4.0.0.0/32 is subnetted, 1 subnets
R       4.4.4.4 [120/1] via 12.1.1.1, 00:00:05, Serial0/0   -----------------------------R1上以eigrp学到此条路由
     14.0.0.0/24 is subnetted, 1 subnets
R       14.1.1.0 [120/1] via 12.1.1.1, 00:00:05, Serial0/0------------------------------该接口在R1的eigrp进程下
--------来自eigrp的引入------------------------------------------
(ps:无3.3.3.3吧)


R3:

R3#sh ip route ospf
     2.0.0.0/32 is subnetted, 1 subnets
O E2    2.2.2.2 [110/20] via 13.1.1.1, 00:05:46, Serial0/1-----------------------------R1上以rip学到此条路由
     12.0.0.0/24 is subnetted, 1 subnets
O E2    12.1.1.0 [110/20] via 13.1.1.1, 00:05:47, Serial0/1
------------------------------该接口在R1的rip进程下
----------------来自rip的引入------------------------------------


R4:
R4#sh ip route eigrp
     3.0.0.0/32 is subnetted, 1 subnets
D EX    3.3.3.3 [170/307200] via 14.1.1.1, 00:06:26, FastEthernet0/0-----------------------------R1上以ospf学到此条路由
     13.0.0.0/24 is subnetted, 1 subnets
D EX    13.1.1.0 [170/307200] via 14.1.1.1, 00:06:26, FastEthernet0/0 
---------------------该接口在R1的ospf进程下
-------------------来自ospf的引入--------------------------------------------

可见未在相应路由进程下的条目无法被重分布,说明我们之前的假设是错误的!


以上验证了第一条原则: 1,负责重分布的路由器必须具有以被重分布路由协议学到的路由条目或是具有被重分布路由协议进程下的接口时,重分布才能实现。



只有正确理解的路由重分布的原则,才能正确处理后期因路由重分布所产生的路由环路,路由不优等问题,才能摒弃比如:“被重分发的路由不能再被重分布“的错误论断!。。。。



PS:觉得把原则说成“在负责重分布的路由器上,不管有没有进行重分布,被重分布的路由必须以被重分布路由协议的形式学到。”可能更加容易理解。   
                                  |
                                  |
                                 \/
         这是进行双点双向重分布时有时候同时只能有一个边界路由器可以成功重分布的最重要也是最关键因素!!