Advertisement

TCP/IP 协议之动态路由协议 RIP

阅读量:

目录

一、动态路由协议

二、RIP

三、总结


一、动态路由协议

1.路由的概念

ip数据报在网络上传播从源端经过具体的路径到达目的端,这就是路由,而路由器中就有一张路由表,记录了很多的路由信息。

我们在命令行中使用 route print -4 命令打印路由表,结果如下:
IPv4路由表

我们重点来看网络目标和接口这两项,网络目标表示到达的目的地,可以是一个主机地址或者是一个网络地址。

接口表示从哪个接口转发数据报,以便能到达该网络目标。

2.路由表中的信息来源

在没有使用动态路由协议之前,向路由表中添加路由信息是使用静态路由:

静态路由是由管理员在路由器中手动配置的固定路由,路由明确地指定了包到达目的地必须经过的路径,除非网络管理员干预,否则静态路由不会发生变化。静态路由不能对网络的改变作出反应,所以一般说静态路由用于网络规模不大、拓扑结构相对固定的网络。

特点:

1、它允许对路由的行为进行精确的控制

2、减少了网络流量

3、是单向的

4、配置简单

3.静态路由缺点

当网络规模比较大时,使用静态路由需要做很多工作,而且不能自适应环境,如果某条路由阻断,可能会导致数据不能正确传输,由此我们需要一种动态的自学习路由协议。

4.思科模拟器静态路由配置实例

网络拓扑图:

Router 1 和192.168.3.0 网不是直接相连的,需要配置静态路由,同理,Router 2 和 192.168.1.0 网不是直接相连的,需要配置静态路由。

Router 1 配置:

复制代码
 Router#conf t

    
 Enter configuration commands, one per line.  End with CNTL/Z.
    
 Router(config)#ip route 192.168.3.0 255.255.255.0 192.168.2.2
    
 Router(config)#exit
    
 Router#
    
 %SYS-5-CONFIG_I: Configured from console by console
    
  
    
 Router#show ip route 
    
 Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
    
    D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
    
    N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
    
    E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
    
    i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
    
    * - candidate default, U - per-user static route, o - ODR
    
    P - periodic downloaded static route
    
  
    
 Gateway of last resort is not set
    
  
    
 C    192.168.1.0/24 is directly connected, FastEthernet0/0
    
 C    192.168.2.0/24 is directly connected, FastEthernet0/1
    
 S    192.168.3.0/24 [1/0] via 192.168.2.2
    
 Router#
    
    
    
    

重点是:Router(config)#ip route 192.168.3.0 255.255.255.0 192.168.2.2 用来设置静态路由

192.168.3.0 表示希望到达的网络号, 255.255.255.0 是子网掩码,192.168.2.2 表示到达该网络的入口ip。


Router 2 配置:

复制代码
 Router#conf t

    
 Enter configuration commands, one per line.  End with CNTL/Z.
    
 Router(config)#ip route 192.168.1.0 255.255.255.0 192.168.2.1
    
 Router(config)#exit
    
 Router#
    
 %SYS-5-CONFIG_I: Configured from console by console
    
  
    
 Router#show ip route 
    
 Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
    
    D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
    
    N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
    
    E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
    
    i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
    
    * - candidate default, U - per-user static route, o - ODR
    
    P - periodic downloaded static route
    
  
    
 Gateway of last resort is not set
    
  
    
 S    192.168.1.0/24 [1/0] via 192.168.2.1
    
 C    192.168.2.0/24 is directly connected, FastEthernet0/1
    
 C    192.168.3.0/24 is directly connected, FastEthernet0/0
    
 Router#
    
    
    
    

4.测试

我们用ping命令来测试网络的连通性

*在主机PC0上 ping PC

复制代码
 PC>ping 192.168.3.1

    
  
    
 Pinging 192.168.3.1 with 32 bytes of data:
    
  
    
 Reply from 192.168.3.1: bytes=32 time=16ms TTL=126
    
 Reply from 192.168.3.1: bytes=32 time=17ms TTL=126
    
 Reply from 192.168.3.1: bytes=32 time=16ms TTL=126
    
 Reply from 192.168.3.1: bytes=32 time=8ms TTL=126
    
  
    
 Ping statistics for 192.168.3.1:
    
     Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
    
 Approximate round trip times in milli-seconds:
    
     Minimum = 8ms, Maximum = 17ms, Average = 14ms
    
  
    
 PC>
    
    
    
    

这表示两个网络已经连通。

二、RIP

1.Internet的构成

Internet是以一组自治系统(AS,Autonomous System)的方式组织的,在自治系统内部和多个自治系统之间使用不同的路由协议。

2.RIP协议

RIP(Routing Information Protocol,路由信息协议)是一种内部网关协议(IGP),是一种动态路由选择协议,用于自治系统(AS)内的路由信息的传递。RIP协议基于距离矢量算法(DistanceVectorAlgorithms),使用“跳数”(即metric)来衡量到达目标地址的路由距离。这种协议的路由器只关心自己,o9kk周围的世界,只与自己相邻的路由器交换信息,范围限制在15跳(15度)之内,再远,它就不关心了。其实RIP跳数的范围是(1-16),不过16就表示没有到达该网络的路由,也就是网络不可达。

3.RIP封装

4.RIP报文格式

采用这种20字节格式的RIP报文可以通告多达25条路由,为保证20 * 25 + 4 = 504 小于512字节。(RIP是一个基于UDP协议的,并且RIP-1(版本1)的数据包不能超过512字节。)

5.RIP协议运行流程

R I P常用的U D P端口号是5 2 0。

(1)• 初始化:在启动一个路由守护程序时,它先判断启动了哪些接口,并在每个接口上发送 一个请求报文,要求其他路由器发送完整路由表。在点对点链路中,该请求是发送给其 他终点的。如果网络支持广播的话,这种请求是以广播形式发送的。目的 U D P 端口号是 5 2 0(这是其他路由器的路由守护程序端口号)。

这种请求报文的命令字段为 1 ,但地址系列字段设置为 0 ,而度量字段设置为 1 6 。这是一 种要求另一端完整路由表的特殊请求报文。

(2)• 接收到请求。如果这个请求是刚才提到的特殊请求,那么路由器就将完整的路由表发送 给请求者。否则,就处理请求中的每一个表项:如果有连接到指明地址的路由,则将度 量设置成我们的值,否则将度量置为 1 6 (度量为 1 6 是一种称为“无穷大”的特殊值,它 意味着没有到达目的的路由)。然后发回响应。

(3)• 接收到响应。使响应生效,可能会更新路由表。可能会增加新表项,对已有的表项进行 修改,或是将已有表项删除。

(4)• 定期选路更新。每过 3 0 秒,所有或部分路由器会将其完整路由表发送给相邻路由器。发 送路由表可以是广播形式的(如在以太网上),或是发送给点对点链路的其他终点的。

(5) • 触发更新。每当一条路由的度量发生变化时,就对它进行更新。不需要发送完整路由表, 而只需要发送那些发生变化的表项。 每条路由都有与之相关的定时器。如果运行 R I P 的系统发现一条路由在 3 分钟内未更新, 就将该路由的度量设置成无穷大( 1 6 ),并标注为删除。这意味着已经在 6 个 3 0 秒更新时间里 没收到通告该路由的路由器的更新了。再过 6 0 秒,将从本地路由表中删除该路由,以保证该 路由的失效已被传播开。

6.度量

R I P所使用的度量是以跳 ( h o p )计算的。所有直接连接接口的跳数为 1

Router 1 到network 1 跳数为1,到network 2 的跳数也为1

Router 2 到network 1跳数为2,到network 2 的跳数为1

7.问题

这种方法看起来很简单,但它有一些缺陷。首先, R I P没有子网地址的概念。例如,如果 标准的B类地址中16 bit的主机号不为0,那么R I P无法区分非零部分是一个子网号,或者是一个 主机地址。有一些实现中通过接收到的R I P信息,来使用接口的网络掩码,而这有可能出错。
其次,在路由器或链路发生故障后,需要很长的一段时间才能稳定下来。这段时间通常 需要几分钟。在这段建立时间里,可能会发生路由环路。在实现 R I P时,必须采用很多微妙的 措施来防止路由环路的出现,并使其尽快建立。 RFC 1058 [Hedrick 1988a]中指出了很多实现 R I P的细节。
采用跳数作为路由度量忽略了其他一些应该考虑的因素。同时,度量最大值为 1 5则限制 了可以使用R I P的网络的大小

三、总结

1.RIP是一种内部网关协议

2.端口号是UDP 520

3.使用跳数作为度量值,最大可用跳数值是15

4. 在实现 R I P时,必须采用很多微妙的 措施来防止路由环路的出现,并使其尽快建立

全部评论 (0)

还没有任何评论哟~