RIP路由协议快速入门

路由器的工作不外乎两个,一是路径选择,二是数据转发。进行数据转发相对容易一些,难的是如何判断到达目的网络的最佳路径。所以,路径选择就成了路由器最重要的工作。 
许多路由 协议 可以完成路径选择的工作,常见的有 RIP OSPF IGRP EIGRP协议 等等。这些算法中,我们不能简单的说谁好谁坏,因为算法的优劣要依据使用的环境来判断。比如 RIP协议 ,它有时不能准确地选择最优路径,收敛的时间也略显长了一些,但对于小规模的,没有专业人员维护的网络来说,它是首选的路由 协议 ,我们看中的是它的简单性。 

如果你手头正有一个小的网络项目,那么,就让我们来安排一个计划, 30 分钟读完本文(一读), 20 分钟再细看一遍本文提及的命令和操作方法(二读),用 30 分钟配置网络上的所有路由器(小网络,没有几台路由器可以配的),最后 20 分钟,检查一下网络工作是否正常。好了,一百分钟,你的 RIP 网络运转起来了。就这么简单,不信,请继续往下看。 

一、 RIP 是什么 

RIP
Routing   Information   Protocols ,路由信息 协议 )是使用最广泛的距离向量 协议 ,它是由施乐( Xerox )在 70 年代开发的。当时, RIP XNS Xerox   Network   Service ,施乐网络服务) 协议 簇的一部分。 TCP/IP 版本的 RIP 是施乐 协议 的改进版。 RIP 最大的特点是,无论实现原理还是配置方法,都非常简单。 

度量方法 

RIP
的度量是基于跳数( hops   count )的,每经过一台路由器,路径的跳数加一。如此一来,跳数越多,路径就越长, RIP 算法会优先选择跳数少的路径。 RIP 支持的最大跳数是 15 ,跳数为 16 的网络被认为不可达。 

路由更新 

RIP
中路由的更新是通过定时广播实现的。缺省情况下,路由器每隔 30 秒向与它相连的网络广播自己的路由表,接到广播的路由器将收到的信息添加至自身的路由表中。每个路由器都如此广播,最终网络上所有的路由器都会得知全部的路由信息。正常情况下,每 30 秒路由器就可以收到一次路由信息确认,如果经过 180 秒,即 6 个更新周期,一个路由项都没有得到确认,路由器就认为它已失效了。如果经过 240 秒,即 8 个更新周期,路由项仍没有得到确认,它就被从路由表中删除。上面的 30 秒, 180 秒和 240 秒的延时都是由计时器控制的,它们分别是更新计时器( Update   Timer )、无效计时器( Invalid   Timer )和刷新计时器( Flush   Timer )。 

路由循环 

距离向量类的算法容易产生路由循环, RIP 是距离向量算法的一种,所以它也不例外。如果网络上有路由循环,信息就会循环传递,永远不能到达目的地。为了避免这个问题, RIP 等距离向量算法实现了下面 4 个机制。 

水平分割( split   horizon )。水平分割保证路由器记住每一条路由信息的来源,并且不在收到这条信息的端口上再次发送它。这是保证不产生路由循环的最基本措施。 

毒性逆转( poison   reverse )。当一条路径信息变为无效之后,路由器并不立即将它从路由表中删除,而是用 16 ,即不可达的度量值将它广播出去。这样虽然增加了路由表的大小,但对消除路由循环很有帮助,它可以立即清除相邻路由器之间的任何环路。 

触发更新( trigger   update )。当路由表发生变化时,更新报文立即广播给相邻的所有路由器,而不是等待 30 秒的更新周期。同样,当一个路由器刚启动 RIP 时,它广播请求报文。收到此广播的相邻路由器立即应答一个更新报文,而不必等到下一个更新周期。这样,网络拓扑的变化会最快地在网络上传播开,减少了路由循环产生的可能性。 

抑制计时( holddown   timer )。一条路由信息无效之后,一段时间内这条路由都处于抑制状态,即在一定时间内不再接收关于同一目的地址的路由更新。如果,路由器从一个网段上得知一条路径失效,然后,立即在另一个网段上得知这个路由有效。这个有效的信息往往是不正确的,抑制计时避免了这个问题,而且,当一条链路频繁起停时,抑制计时减少了路由的浮动,增加了网络的稳定性。 

即便采用了上面的 4 种方法,路由循环的问题也不能完全解决,只是得到了最大程度的减少。一旦路由循环真的出现,路由项的度量值就会出现计数到无穷大( Count   to   Infinity )的情况。这是因为路由信息被循环传递,每传过一个路由器,度量值就加 1 ,一直加到 16 ,路径就成为不可达的了。 RIP 选择 16 作为不可达的度量值是很巧妙的,它既足够的大,保证了多数网络能够正常运行,又足够小,使得计数到无穷大所花费的时间最短。 

邻居 

有些网络是 NBMA Non-Broadcast   MultiAccess ,非广播多路访问)的,即网络上不允许广播传送数据。对于这种网络, RIP 就不能依赖广播传递路由表了。解决方法有很多,最简单的是指定邻居( neighbor ),即指定将路由表发送给某一台特定的路由器。 

RIP
的缺陷 

RIP
虽然简单易行,并且久经考验,但是也存在着一些很重要的缺陷,主要有以下几点: 
过于简单,以跳数为依据计算度量值,经常得出非最优路由; 
度量值以 16 为限,不适合大的网络; 
安全
性差,接受来自任何设备的路由更新; 
不支持无类 IP 地址和 VLSM Variable   Length   Subnet   Mask ,变长子网掩码); 
收敛缓慢,时间经常大于 5 分钟; 
消耗带宽很大。 

二、路由器怎么配 

路由器本身就是一台有多个网络接口的计算机,同普通计算机一样,它也有中央处理器( CPU )、系统主存( RAM )和只读存储器( ROM )等部件。 

除此之外,一个很重要的部分是它的网络接口( Interface ),为了连结不同类型的网络,路由器的网络接口种类繁多,比如应用在局域网中的以太、快速以太、令牌环接口,应用于广域网的 V.35 RS232 ISDN   BRI   PRI 接口等等。 
路由器的外存储器主要有两种: NVRAM Non-Volatile   RAM ,非易失性 RAM )和 Flash (闪存)。 NVRAM 存储路由器的配置文件, Flash 用于存放操作系统 IOS Internet   Operating   System )。 

配置模式 

CISCO
路由器最基本的配置模式有两种:用户( user )和特权( privileged )。在用户模式下,只能显示路由器的状态,特权模式还可以更改路由器的配置。 

特权模式下可以进入安装( setup )模式、全局配置( global   config )模式,局部配置( sub   config )模式。  
安装模式提供菜单提示,引导用户进行路由器的基本配置。新路由器第一次启动后,自动进入安装模式。 
全局配置模式中可以改变路由器的全局参数,如主机名、密码等等。 
局部配置改变路由器的局部参数,例如某一个网络接口的配置、某一种路由 协议 的配置等等。
配置方法 

路由器的配置可以使用多种方法,下面这五种是最常见的: 
使用超级终端类的工具通过串行口登录控制台( console   port )。 
将调制解调器连结至路由器的辅助口( auxiliary   port ),远程拨号登录控制台。 
远程登录( telnet )至路由器的某一 IP  地址,通过 VTY virtue   terminal   line ,虚拟终端)方式访问路由器。 
编辑配置文件,并通过 TFTP 上传至路由器。 
通过网络 管理 软件( network   management   system )远程设置路由器参数。 

安装路由器 

假设我们的项目网络中只有三台路由器。它们放在北京、上海和天津,名字分别叫 testBJ testSH testTJ 。我们采用 B 类保留 IP 地址 172.16.0.0 ,共划分了四个子网 172.16.1.0 172.16.2.0 172.16.3.0 172.16.4.0 ,子网掩码均为 255.255.255.0

基本配置 

将包装中附带的串行电缆一端连接到 Beijing 路由器的 console 口上,另外一端连接到计算机的 com 口上。启动超级终端程序( Win95/NT 中),作适当配置,连接路由器。给路由器加电,连续键入数个回车,出现如下提示符,显示路由器处于用户模式。 

testBJ>
 

由用户模式转入特权模式,使用 enable 命令。 

testBJ>
  enable  

testBJ#
 

UNIX 主机一样, “#” 代表特权( root )用户的系统提示符,它表示你进入了特权模式。与 enable 作用相反,即从特权模式返回用户模式的命令是 disable 。 

特权模式下,可以使用 config   terminal 命令进入全局配置模式。全局配置模式下,可以使用一些配置子项的名称进入局部配置模式。返回的方法都是 exit 命令。其中,从局部配置模式直接返回特权模式的命令是 end 。如下所示。 

testBJ#config
  terminal  

Enter
  configuration   commands,   one   per   line.   End   with   CNTL/Z.  

testBJ(config)#router
  rip  

testBJ(config-router)#exit
 

testBJ(config)#exit
 

testBJ#
 

CISCO
  IOS 的一个非常引人的特色是它的命令行帮助,一个 ? 解决了所有的问题。 ? 可以显示当前模式下的命令列表,可以显示命令全称,还可以显示命令的参数和帮助信息。在任何对命令不确定的地方键入 ? ,系统会给出提示信息。 

CISCO
路由器还支持命令简写功能,只要不引起歧义,可以用命令的前几个字符替代整个命令,这样,配置时的打字工作量就小多了。 

路由器的全部配置信息都保存在配置文件中,当前正在使用的配置文件是 running-config ,它存放在系统内存里,我们在特权模式下对配置的修改会立即反映到 running-config 中。 startup-config 是存储在 NVRAM 中的配置文件,只有它是掉电不丢失的,所以如果想使所做的修改到下一次启动时仍然有效,就必须保存当前配置。存盘命令如下: 

testBJ#copy
  running-config   startup-config  

Building
  configuration...  

[OK]
 

testBJ#
 

更改路由器名、密码 
路由器的名字可以用 hostname 命令修改。 

Router(config)#hostname
  testBJ  

testBJ(config)#
 

enable
  password enable   secret 命令可以修改特权模式的密码。 

testBJ(config)#enable
  password   cisco  

testBJ(config)#enable
  secret   cisco  

进入 line   console 局部配置模式下,修改 console 登录密码;进入 line   vty 局部配置模式,修改 telnet 登录的密码。 login 命令指出需要登录,修改密码的命令都是 password 。 

testBJ(config)#line
  console   0  

testBJ(config-line)#login
 

testBJ(config-line)#password
  cisco  

testBJ(config-line)#exit
 

testBJ(config)#line
  vty   0   4  

testBJ(config-line)#login
 

testBJ(config-line)#password
  cisco  

测试连通性 

打开其余两台路由器,按上述方法进行配置,然后就可以检查它们之间是否连通了。 

测试线路连通性的方法有三种, ping traceroute telnet ping 可以检测目的地是否可达; trace 不仅检测连通性,还给出到达目的地所经过的路径; telnet 测试应用层软件的连通性,如下所示。 

testBJ#ping
  172.16.4.2  

Type
  escape   sequence   to   abort.  

Sending
  5,   100-byte   ICMP   Echos   to   172.16.4.2,   timeout   is   2   seconds:  

!!!!!
 

Success
  rate   is   100   percent   (5/5),   round-trip   min/avg/max   =   24/25/28   ms  

testBJ#traceroute
  172.16.4.2  

Type
  escape   sequence   to   abort.
 

你可能感兴趣的:(职场,Cisco,休闲,rip)