动态路由——RIP篇
1、动态路由简述
**什么是动态路由:**各台路由器之间运行某种协议(算法),通过收发数据包的形式互相学习未知路径
动态路由的追求:
1)收敛速度快
2)选择路径佳
3)占用资源少
动态路由的分类:
1、基于AS的分类
AS:Autonoumous System,自治系统。
AS编号的范围:0-65535,其中0-64511为公有AS,64512-65535为私有AS号
IGP:内部网关协议(AS之内)——RIP、OSPF、ISIS、EIGRP(Cisco私有
EGP:外部网关协议(AS之间)–BGP
2、IGP协议的分类:
距离矢量(DV):RIP、EIGRP——路由器之间共享路由表(路由器发送更新时,发送的是自己的路由表)
链路状态(LS):OSPF、ISIS——路由器之间发送拓扑
3、基于更新时是否携带子网掩码
有类路由:不带(带的是主类掩码)//路由器收到路由信息时不看掩码,直接查看此IP属于哪个主类网,然后按主类的掩码将其写入路由表(掩码不显示,但是是按主类的掩码去算和转发的)
无类路由:携带掩码
RIP
RIP:Routing Information Protocol,路由信息协议
1、基本概念:
标准的DV型协议,分为三个版本——RIPv1、RIPv2、RIPng(IPv6)
基于UDP 端口号520
功能:
- 周期更新机制:更新时间30S——确认,保活。 //并不是一定是30S,而是26-30之间的一个随机数,防止所有路由器同时发包造成网络卡顿
- 支持等开销负载均衡
- 管理距离默认为120,以跳数(经过路由器的数量)作为度量值,最大为15,16跳表示不可达
2、RIPv1和RIPv2的区别
- 更新方式:RIPv1使用广播(255.255.255.255)更新,RIPv2使用组播更新(224.0.0.9)
- RIPv1更新时不带掩码;RIPv2更新时携带掩码
- RIPv2支持手工认证——邻居间的身份核实(通过密钥进行)
3、RIP的数据包
RIP只有一个数据包,既update包——更新包,是一个携带路由条目的数据包
4、RIP的破环机制 - 水平分割–同一条路由条目,从此口入不从此口出,终极目标为了消除重复更新;只能破除线型拓扑和星型拓扑,也可以解决一部分出环的情况。
- 毒性逆转水平分割–触发更新–专用于网络断开的情况
当update包的跳数为16跳时,代表不可达,此时路由器接到update包时,将此路径删除并将发来的包原样发回,来达到一个确认的目的。//由于水平分割原理,从此口进,不从此口出,但是此时又将update包原样发回,所以就叫毒性 逆转水平分割 - 抑制计时器
网络结构发生变化:
1)新增
2)断开
3)设备无法通信
5、RIP的基本配置
1)RIPV1版本
R1(config)#router rip //启动协议
R1(config-router)#version 1 //选择版本,若不选择,默认是升级版本1
宣告目的:
1、激活接口
2、路由
// RIP仅支持主类宣告
R1(config-router)#network 1.0.0.0
R1(config-router)#network 12.0.0.0
2)RIPv2版本
R1(config)#router rip //启动协议
R1(config-router)#version 2 //选择版本,若不选择,默认是升级版本1
R1(config-router)#no auto-summary //关闭自动汇总。(若不关闭,则在往出发路由条目,会自动按照主类进行汇总)
宣告目的:
1、激活接口
2、路由
// RIP仅支持主类宣告
R1#show ip route //查看路由表
1.0.0.0/24 is subnetted, 1 subnets
C 1.1.1.0 is directly connected, Loopback1
2.0.0.0/24 is subnetted, 1 subnets
R 2.2.2.0 [120/1] via 12.1.1.2, 00:00:26, Serial2/1
3.0.0.0/24 is subnetted, 1 subnets
R 3.3.3.0 [120/2] via 12.1.1.2, 00:00:08, Serial2/1
23.0.0.0/24 is subnetted, 1 subnets
R 23.1.1.0 [120/1] via 12.1.1.2, 00:00:22, Serial2/1
12.0.0.0/24 is subnetted, 1 subnets
C 12.1.1.0 is directly connected, Serial2/1
通过路由表得出:RIP路由条目在表中使用字母R表示,管理距离为120,使用跳数作为度量,其中时间为更新时间,
此时间为正向计数,正常情况下不会超过30s.
6、RIP扩展配置
1)手工认证–邻居间的身份核实,仅RIPv2支持
R1(config)#key chain r1 //创建密钥链
R1(config-keychain)#key 1
R1(config-keychain-key)#key-string 1234 //配置密钥
R1(config)interface serial 2/1 //同邻居相连的接口
R1(config-if)#ip rip authentication key-chain r1 //调用密钥
2)汇总–自身若拥有可以汇总的多个网段时,可以在发出更新的接口上配置汇总。
R1(config)#interface serial 2/1 //更新发出的接口
R1(config-if)#ip summary-address rip 1.1.0.0 255.255.252.0
3)缺省路由–在连接运营商的边界路由器的协议内配置
R3(config)#router rip
R3(config-router)#default-information originate
4)被动接口–只接收不发送协议报文,一般用于连接用户的接口,禁止用于路由器之间的接口
R1(config)#router rip
R1(config-router)#passive-interface fastEthernet 0/0
5)加快收敛速度–修改RIP的计时器
RIP计时器:
更新时间 30s-确认、保活
失效时间 180s
抑制时间 180s
刷新时间 240s
R1(config)#router rip
R1(config-router)#timers basic ?
<1-4294967295> Interval between updates for RIP //更新时间
R1(config-router)#timers basic 10 ?
<1-4294967295> Invalid //失效时间
R1(config-router)#timers basic 10 60 ?
<0-4294967295> Holddown //抑制时间
R1(config-router)#timers basic 10 60 60 ?
<1-4294967295> Flush 刷新时间
R1(config-router)#timers basic 10 60 60 80
建议:修改时间建议维持原有的倍数关系
7、干涉选路
定义:在控制层面流量进或出的接口上,对更新包中的度量进行加大;起到干涉选路的作用
R1(config)#router rip
R1(config-router)#offset-list 1 in 3 serial 2/1
8、关于V1和V2的兼容性问题
默认v1设备收发V1路由;v2收发V2路由;升级版本1设备收V1/2发V1;
其实无论设备现在运行的是什么版本,都可以修改接口的收、发版本信息;
r1(config)#interface s1/1
r1(config-if)#ip rip receive version 1 2
r1(config-if)#ip rip send version 1 2
V2设备若将接口修改为V1发送,那么可以发出正常V1的路由;
但V1设备若将接口修改为V2发送,那么路由实际还是不携带掩码,只是可以让V2设备学习这些路由;
9、关于RIPV1的连续性子网问题
连续子网—母网相同,掩码长度一致;
在V1的RIP中,若本地即将共享给邻居的路由与本地和邻居直连网段为连续子网,那么本地将携带主机位发送路由给邻居,邻居在接收到存在主机位的路由时,将使用与邻居直连网段的掩码来添加到这些路由中;
若网络地址本身没有形成连续子网,可以使用第二地址来构建
R4(config)#interface serial 2/0
R4(config-if)#ip address 172.16.3.1 255.255.255.0 secondary
第二地址