天天看点

CCNP精粹系列之七------有类路由和无类路由

                               有类路由和无类路由                        

 动态路由的路由协议包括有类路由协议和无类路由协议。

有类路由协议有RIP V1 , IGRP

无类路由协议有RIP V2,OSPF ,EIGRP,ISIS ,BGP

有类路由协议:

特性:1,路由更新时不包括子网掩码。

2,网络的自动汇总默认是开启的。

3,同一路由器的各个子网不在同一网段。

有类路由协议的原理。

1,          当路由协议收到路由后,如果该路由与路由器接受端口的IP地址,在同一主网,使用该端口的掩码作为路由掩码。

2当路由协议收到路由后,如果该路由与路由器接受端口的IP地址,不在同一主网,按照“类”的连接作路由汇总。

2,          同一网络的各个子网不能被其他的网络分隔。

Router(config)#host R1

R1(config)#int lo0

R1(config-if)#ip addr 10.2.0.1 255.255.0.0

R1(config-if)#int s1/0

R1(config-if)#ip addr 172.16.2.1 255.255.255.0

R1(config-if)#encap hdlc

R1(config-if)#clock rate 56000

R1(config-if)#no shut

R1(config-if)#exi

R1(config)#router rip

R1(config-router)#net 10.2.0.0

R1(config-router)#net 172.16.2.0

Router(config)#host R2

R2(config)#int s1/0

R2(config-if)#ip addr 172.16.2.2 255.255.255.0

R2(config-if)#encap hdlc

R2(config-if)#no shut

R2(config)#int s1/1

R2(config-if)#ip addr 172.16.1.1 255.255.255.0

R2(config-if)#encap hd;c

R2(config-if)#clock rate 56000

R2(config-if)#exit

R2(config)#router rip

R2(config-router)#net 172.16.2.0

R2(config-router)#net 172.16.1.0

R2(config-router)#exit

Router(config)#host R3

R3(config)#int lo0

R3(config-if)#ip addr 10.3.1.1 255.255.0.0

R3(config-if)#int s1/1

R3(config-if)#ip addr 172.16.1.2 255.255.255.0

R3(config-if)#encap hdlc

R3(config-if)#no shut

R3(config-if)#exit

R3(config)#router rip

R3(config-router)#net 10.3.1.0

R3(config-router)#net 172.16.1.0

R1#

R1#show ip ro

     172.16.0.0/24 is subnetted, 2 subnets

R       172.16.1.0 [120/1] via 172.16.2.2, 00:00:15, Serial1/0

分析:R1学习R2   172.16.1.1路由时,由于它的主网是172.16.0.0,而自己接受端口的主网也是172.16.0.0,显然是同一主网,所以按照有类路由协议路由原理,使用接受端口的掩码即172.16.2.1的掩码作为路由掩码。所以R1路由表中有172.16.0.0/24的路由 。

C       172.16.2.0 is directly connected, Serial1/0

     10.0.0.0/16 is subnetted, 1 subnets

C       10.2.0.0 is directly connected, Loopback0

两个直连路由就不做解释了。

疑问:10.3.1.0 ???????????R1上为什么会学习不到呢?

这个问题要先从R2上分析,R3要将10.3.1.1发送个R2,它的主网是10.0.0.0,而R2的接受端口的主网是172.16.0.0, 显然不在同一主网,按照“类”的连接做路由汇总,10.3.1.1是A类ip,而R2中没有10网段的路由,直接进行更新,还有一种情况是,R2中存在10网段的路由,那样的 话就得比较路由的发送者,同一发送者,直接更新,不同发送者,按照路由度量大小,越小越好,好的留下,坏的丢弃。这里 仅仅是 第一种情况,所以R2上会学到10.0.0.0/8的路由。同理,R2将10.0.0.0/8的路由发送给R1,主网是10.0.0.0,和R1上接受端口172.16.2.1的主网不是同一主网,按照“类”的连接做路由汇总,属于A类路由,不同上面的是这里属于第二种情况,R1中存在10.0.0.0的路由,显然不是同一发送者,本路由器的10.2.0.1的路由度量是0,而邻居发送来的10.0.0.0的路由度量是2,显然保留自己的IP,丢弃发送来的,所以R1上是学习不到10.3.1.1的路由的。

R2#

R2#show ip ro

C       172.16.1.0 is directly connected, Serial1/1

R    10.0.0.0/8 [120/1] via 172.16.2.1, 00:00:09, Serial1/0

R3要将10.3.1.1发送个R2,它的主网是10.0.0.0,而R2的接受端口的主网是172.16.0.0, 显然不在同一主网,按照“类”的连接做路由汇总,10.3.1.1是A类ip,而R2中没有10网段的路由,直接进行更新,所以R2上会学到10.0.0.0/8的路由。

R3#show ip ro

R       172.16.2.0 [120/1] via 172.16.1.1, 00:00:12, Serial1/1

C       10.3.0.0 is directly connected, Loopback0

  RIP V1特性:

1,          路由更新是广播更新 。

2,          自动汇总是开启的,且不能关闭。

3,          不支持变长掩码。

有类路由协议转发数据包的原理;

1,按照最长匹配原则。

2,如果包的目的地对应地具体路由不存在,但存在默认路由,用默认路由转发该包,如果不存在默认路由,包被丢弃。

4,          如果包的目的地址的具体路由不存在,但路由表中存在与该目的地在同一主网的其他子网的路由:

   A,如果命令 IP classless 开启,且不存在默认路由,用默认路由转发该包。

A,如果命令 IP classless 没开启,包被丢弃。

(config)# IP classless

// IP classless默认开启的。

无类路由协议:

特性;

1,路由更新时包括子网掩码。

2,支持变长掩码。

3,组播更新路由。

4,自动汇总是开启的,但可以关闭。

5,          支持手工路由汇总。

RIP V2

1,属于距离矢量路由协议。

2,路由的度量是跳数。

3,          每隔30秒发送路由更新。

4,          支持默认4条最多6条等开销路径做负载均衡。

5,          发送路由更新时,累计距离

6,          最大有效跳数是15

7,          属于无类路由协议

8,          支持变长掩码。

9,          组播更新路由信息。

10,      自动汇总是开启的,但可以关闭,支持手工汇总。

     本文转自shenleigang 51CTO博客,原文链接:http://blog.51cto.com/shenleigang/150685,如需转载请自行联系原作者

继续阅读