动态路由协议RIP

一. 动态路由
1. 简单了解
我们知道,路由分静态路由和动态路由。
平常来说,静态路由用的比较多,但是在大型网络中,还是得用动态路由,不然一个一个跳得累死你,一直跳到你绝望为止。
静态路由是单向的,需要管理员手动配置;动态路由是在路由器上启用某动态路由协议。
不同的动态路由协议是不一样的,启用了动态路由协议后,进行自己直连的网段的宣告,从而相邻的路由器就可以学习到相邻的路由器所宣告的网段。
举个例子,张三认识李四,李四认识王五,那么张三就可以通过李四认识王五。
比如是这样的一个网络。R1连着10网段和20网段,然后它把这两个网段宣告给与自己直连的路由器,即R2。
这时候R2就学习到了10网段和20网段,同时R2自己还连着30网段,所以它现在就会10,20,30三个网段了。然后再宣告给自己直连的路由器,即R1和R3。
R1和R3就学习到了10,20,30这三个网段。R3同时连着40网段,它现在就会了10,20,30,40四个网段。然后再宣告给R2,R2就会了,R2再宣告给给R1和R3,R1也会。
这样所有的路由器学会了所有的网段。
2. 常见的动态路由
- RIP:路由信息协议(距离矢量路由协议)
- OSPF:开放式最短路径优先
- BGP:边界网关协议
- EIGRP:增强内部网关路由协议
- IS-IS:中间系统到中间系统
每个协议的算法都不一样的。
我们这里主要讲一下RIP
3. 动态路由的特点
- 减少管理员的工作量
- 增加网络带宽
4. 什么是内部,什么是边界
AS(自治系统):运行相同的路由协议的路由器属于同一个AS
通过AS内连接外部的路由器,这时候就需要有外部网关
- 内部网关路由协议(IGP):用于在单一AS内去决策路由的,比如RIP,OSPF等
- 外部网关路由协议(EGP): 用于连接不同的AS,比如BGP
比如这个网络,左面的三个设备用RIP协议,他们三儿是同一个AS;右面的两个路由器用OSPF协议,他们俩是同一个AS。
我们现在有两个不同AS的两个路由器想要连接,就需要用到BGP。
所以这两个路由器不仅要用内部的协议,还要用外部的协议,然后它俩才能互相宣告。
5. 动态路由需要考虑的内容
(1) 度量值
度量值:跳数,带宽,负载,时延,成本……
假如说跳数为3,意味着它只能从自己开始跳三个路由器
比如这个网络中,红色的路由器可以学习到并且只能学习到这个范围的网段。
(2) 收敛
收敛:使所有路由器的路由表都达成一致的状态
你可以理解为全部学习完。
在这里,红色路由器需要学习三次才可以全部学习完,红色的是第一次学习,蓝色的是第二次学习,黄色的是第三次学习。
如果在复杂的网络中,会需要学习好几次,收敛就慢。
(3) AS
刚才讲过了。
二. RIP动态路由协议
1. 基本概念
它是一种内部网关路由协议,在单一AS中内的路由器协议。
靠跳数来衡量到达目的的距离。最大15跳,16跳表示不可达,每个30秒向相邻的路由器发送路由更新消息,采用UDP的520端口。
下图是初始状态
然后我们配置RIP,在第一个更新周期里面,路由器会向相邻的路由器发送他自己的路由表。
第一个周期:
R1从R2中学到30网段;R2从R1和R4中学到10网段和40网段;R3从R2中学习到20网段。
第二个周期:
这样所有的路由器的路由表达成一致,路由器收敛完成。
RIP动态路由协议是从相邻的路由器去学习对应的路由条目
2. RIP的版本
RIP有两个版本:
(1) RIPv1
RIPv1称为有类路由协议,采用标准子网掩码
特点:
- 采用广播更新
- 不支持VLSM(可变长子网掩码,非标准子网掩码)
- 自动路由汇总,不可关闭
- 不支持不连续子网
广播更新有个bug,就是它是向所有设备发送广播。
这个R4它没有RIP,意味着我们不需要给它发送RIP信息,但是R1会给所有与他相连的路由器发送广播,那么R4接不接,人间R4跟你都没关系,当然不会接收了,这样就会导致过多的流量产生。
那么我们有没有方式让它只向运行RIP的设备发呢?
自动路由汇总的意思就是说,他会把路由表的数据自动汇总成一个网段。
比如路由表里头有两个网段,192.168.10.0/24 和 192.168.20.0/24,RIP就会把他们自动汇总成 192.168.0.0/16
(2) RIPv2
RIPv2是无类路由协议(可以使用非标准子网掩码)
特点:
- 组播更新(只会向运行RIP的路由器发送更新消息)
- 支持VLSM
- 自动汇总,可以关闭
- 支持不连续的子网
3. RIP的配置
(1) RIPv1
这样一个网络
接口处我就用.254
这样的来简写了,比如网段是192.168.30.0/24
,.254
就是192.168.30.254
我们简单配置一下IP地址
之后就可以配置RIP了。
1 | 路由器2 |
其他的也一样。
我们看一下路由表
可以看到,自动生成了一堆路由条目。
我们直接ping一下
可以看到能ping通
他是现在每个路由器上进行ARP广播,然后在进行ICMP,所以它一开始的两个是 time out
(1) RIPv2
我们整一个非标准的子网掩码的网络
配置一下IP,注意子网掩码是 255.255.255.192
我们进行配置RIP宣告
1 | 路由器1 |
其他的同理
我们看一下路由表
可以看到它把路由表汇总成了一个 192.168.1.0/24的网段。
那么如果你不想要自动汇总怎么办呢?
1 | router rip |
如果不想汇总的话,这个代码记得在设置RIP前就用,要不然之后需要全部路由器重新设置IP。