1、RIP overview:
1. rip是tcp/ip协议开发的第一个路由选择标准;是一个distance
vector协议,协议号为17;利用UDp来封装数据,用520端口发
送接受更新。
2. rip适用于小型网络,路由器数目不大于15台(默认16台不可
达),广播更新。
3. 发送和接收的更新为路由表条目,并且每个更新包最多携带25
条路由条目。
4. 基本原理:每个启动RIP协议的端口发出目标为
255.255.255.255的广播(RIP Request message),其邻居路由
器收到后发送他所知道的路由表信息(Response message),
同时在发出后出端口的时候将hop count加1(如果路由表中显
示的跳数为“1”则表示通告路由器是与自己直连的)以上过程
周期性执行(默认30秒一次);当接收方收到更新后就作如下
处理:
⑴更新信息是自己没有的,则加入路由表。
⑵更新信息的目标是自己有的,则比较跳数,如果比自己原有的小
则更新路由表;
如果跳数比较大或为不可达(跳数大于15),则看更新信息的源地址(即为自己
去往目标的下一跳),是否与自己原来的下一跳一样,如果不一样则丢弃此更新;
如果一样,这时为了防止有不断变化的产生会启动抑制计时器(Holddown timer)
默认180秒,同时将该路由设为不可达,如果在180秒后还收到同样的更新消息
则接受。
⑶对于接受的更新在加入路由表的同时会附加一个无效计时器
(Invalidation timer)
默认180秒,即在180秒后还没收到相关更新信息则认为不可达设跳数为16,如
果在过60秒(一共240秒)还没收到则从路由表中删除该条路由(刷新计时器
(flush timer))。这样做的好处是防止了路由黑洞
⑷为了防止同时发更新造成广播风暴,随机设置一个25.5~30秒的数值以实
现不同
时送更新,这就是debug时看到的更新间隔不为30秒的原因。
5. 产生的问题和解决:
⑴环路问题:A-B-C-①:设网络收敛后,ABC为三台路由器,①为一个网段如
果该网段发生故障,则C可以知道,其将①设为不可达(hop=16)然后等待下一
次更新时间去向B发送更新,但是如果B先更新,C会收到这样一条消息说:“B
可以去①跳数为2跳,那么C比较后(比16小)更新路由表;问题产生了当有数
据发向①时,B将数据转给C,C在将数据给B不断循环直到TTl=0。
※解决1:split horizion:只进不出(从某一端口收到的更新不在从此端口发出)
※解决2:reverse router:从某一端口收到的更新在从此端口出去时跳数设为为16
※解决3:采用触发更新(全路由表更新)
⑵同上问题如果ABC成环路则上述方法就时效了,所以采用最大跳数16,即大于
15跳即表示不可达。(出现此问题的现象是一开始正常,但逐渐变得越来越慢)
⑶路由黑洞:对于接受的更新在加入路由表的同时会附加一个无效计时器
(Invalidation timer)默认180秒,即在180秒后还没收到相关更新信息则认为不可
达设跳数为16,如果在过60秒(一共240秒)还没收到则从路由表中删除该条路
由这个为刷新计时器(flush timer)。
6. V1和V2的边界路由器X支持v1,v2;v1通过他向其他路由器更
新,v2也同样,但是,当X转发某以版本的更新后下一跳不是
指向X而是要求转发路由器。
7. 路由表中next hop 0.0.0.0表示源地址为下一跳。
2、RIP V1
1. 只支持等价负载均衡(对于跳数相同的多条路径),最大支
持6条的负载均衡,默认为 4条。
2. 以跳数为度量值
3. 每30秒更新路由表一次,广播更新
4. 有类路由(classful),no vlsm
5. 无认证功能,所以要实现安全可通过passive-interface和neihbor
来实现。
6. 主网络号相同,sm相同的子网叫做连续子网,当为连续子网
时RIP可传送子网信息(实际上是通过接口上的sm来实现
的),当同一网络号时会发送带子网信息的ip号而不是主网络
号,接受方收到后会将此ip号与自己的接受接口的sm与,如
果主机位不为0(即说明两个掩码不同)则会认为这是一条主
机路由加入路由表sm为/32此时可通过升级为V2来更正。
7. 对于不连续子网他们之间传送网络号而不传送子网信息,这
样就产生了问题,可采用辅助ip地址加以解决。ip add 192.168.0.1 255.255.255.0 secondary
8. 对于RIP V1的有类路由当需要寻址时先检查网络号有的化在
看有无子网,有的化在检查子网决定转发或丢弃,无子网则
可直接转发给网络号。
3、RIP V2
1. defind in rfc 1721,1222,2453
2. 无类路由,更新时发送sm,支持vlsm
3. 组播更新(22
4.0.0.9)
4. 支持手动路由汇总
5. 支持md5验证
4、相关配置
1. 基本配置:
router rip 进入配置
network 主网络号发布端口
version <1,2> rip版本设置(默认为1)
no version恢复默认值发送v1接受v1,v2
no auto-summary 关闭自动汇总
sh ip protocol查看当前路由器的所有启动的协议
sh ip route查看路由表
sh ip route rip 查看rip的路由表
sh ip rip database查看rip数据库
2. passive-interface 接口号 当发布范围过广时可以在rip配置
内加入命令:表示被动接受,不发送rip
3. neighbor 目标接口ip地址表示以单播发送rip更新(如对端
口做了passive后)
4. 增大跳数:如增加了一条串口链路作为冗余备份,但发现跳数