RIP(Routing Information Protocol)---路由信息协议
路由信息协议RIP是基于距离矢量算法的路由协议,利用跳数来作为计量标准。多用于小型网络中。
基本概念:
1.版本
RIPv1、 RIPv2和RIPng,前两者用于IPv4, 后者IPV6
2.距离矢量型
3.基于UDP协议进行封装,端口号520.
4.RIP基于组播进行数据包发送,组播地址---->224.0.0.9
5.存在周期更新机制----30s周期更新(应答报文)----保活,确认。
6.RIP的开销值(度量值)----以跳数计算开销值,最大15跳----开销值越小越优。
数据包的开销值==本地的开销值+1(开销值若到16,则路由器自动将该路由项从路由表中删除)
RIP算法----贝尔曼福特算法
1.当接收到数据包中含有本地路由表中没有的路由项时,则直接加载到本地路由表
2当接收到的数据包中含有本地路由表已经具备的路由项,切下一跳地址相同,则将该路由项更新至本地路由表。
3.当接收到的数据包中含有本地路由表已经具备的路由项,但下一跳地址不相同,则比较Cost值,若
本地路由表中的cost值大,则将数据包中的路由项更新至本地路由表。
4.当接收到的数据包中含有本地路由表已经具面的路由项,且下一跳地址不同,则比较cost值,若本地路由表中的cost值较小,则不进行更新。
RIP数据报文
request包----请求报文
response包----应答报文
RIP工作原理
(1)路由建立
路由器运行RIP后,会首先发送路由更新请求,收到请求的路由器会发送自己的RIP路由进行响应;网络稳定后,路由器会周期性发送路由更新信息。
(2)距离矢量的计算
RIP度量的单位是跳数,其单位是1,也就是规定每一条链路的成本为1,而不考虑链路的实际带宽、时延等因素,RIP最多允许15跳。
RIP利用度量来表示它和所有已知目的地间的距离。
当一个RIP更新报文到达时,接收方路由器和自己的RIP路由表中的每一项进行比较,并按照距离矢量路由算法对自己的RIP路由表进行修正。
(3)环路
当网络发生故障时,RIP网络有可能产生路由环路。可以通过水平分割、毒性反转、触发更新等技术来避免环路的产生。
常规路由器更新和定时
当路由收敛完成后,路由器会以30s一次的频率发送应答报文(周期更新)。
邻居路由器收到应答报文时,会设置一个180s的时间(超时时间)
如果180s内没有收到邻居路由器发来得到应答报文,本地路由器会认为邻居出现了问题,并将下一跳为邻居接口的IP地址的路由项的开销值设置为16。并且向自身周围还存在的邻居发送该路由项
经过120s时间后,删除该路由项。
RIP的计时器
更新计时器
每台启动了RIP协议的路由器都有一个属于自己的更新计时器。
计时器周期---30S
注意:当接收到请求报文时,必须立刻发送响应报文
无效计时器
每台路由器上的每个路由项都会有一个无效计时器。
计时器时间---更新计时器的六倍----180S-----每次路由条目被更新时,计时器刷新。
当计时器时间为0时,会认为该路由项已经无效,也就是说该路由项所指的目的地址不可达,路由器会将该路由项的Cost值设置为16,并向外进行传输。
垃圾收集计时器
120S
发送四次周期更新后,删除该路由。
实际环境中,该计时器的时间并非是120S整,而是在90-120S之间。
抑制计时器-----cisco专属
延迟定时器:为避免触发更新引起广播风暴而设置的一个随机的延迟定时器,延迟时间为1~5s。
RIP周期更新
使用response报文进行更新操作
周期更新的原因:
RIP本身没有确认机制和保活机制,UDP传输是不可靠的传输
RIP环路问题
解决方法:
触发更新----加快路由收敛速度
当某一个路由器中的路由项发生改变时,不需要等待下一次周期更新的到来,就可以直接将发生改变的路由项发送出去。
仅能降低环路产生的可能性,但是不能完全避免环路的产生。
水平分割
如果有一个X/Y的路由项从路由器的某接口学习到,那么在周期更新发送时,该路由项就不能
从该接口发出(只进不出)。
毒性逆转
如果有一个X/Y的路由项从路由器的某接口进入,那么在周期更新时,虽然还会从该接
发出,但会将cost值设置为16。
若毒性逆转和水平分割同时开启,则按照毒性逆转规则进行。
水平分割和毒性逆转原理相同,但做法不同,所以只能选择其中一个和触发更新搭配使用。---华为默认开启水平分割。
RIP的基本配置
RIPv1
[r1]rip 1 ----启动RIP协议,并配置进程号,进程号仅具备本地意义。
[r1-rip-1]version 1 ----选择RIP版本
[r1-rip-1]network 12.0.0.0 ----宣告地址,激活接口并发布路由
宣告:
需要宣告所有直连网段,必须按照主类地址宣告
RIPv2
[r1]rip 1
[r1-rip-1]version 2
[r1-rip-1]undo summary ----关闭自动汇总功能,如果不关闭,宣告的属于同一个主类的路由就会自动汇总;该功能在华为上不需要配置,因为华为默认关闭自动汇总功能。
[r1-rip-1]network 192.168.0.0
RIPv1和RIPv2的区别
更新时是否携带掩码
RIPv1不携带真实掩码
RIPv2携带真实掩码
RIPv2支持自动汇总功能
更新方式
RIPv1使用广播发送
RIPv2使用组播发送,组播地址224.0.0.9
RIPv2支持手工认证
RIP扩展配置
1.手工汇总
去往多个可以汇总的目标网段范围,且具备相同下一跳,则可以不用具体的多个路由条目,仅写一条汇总目标的路由即可。
[r1-GigabitEthernet0/0/0]rip summary-address 10.1.0.0 255.255.252.0
2.缺省路由
—般配置方向为指向与运营商相连的边界路由器上。
缺省路由的下发具备强制性条件,做配置的边界路由器上必须存在一条缺省路由RIP的缺省路由一般配置在边界路由器上。
[r2-rip-1]default-route originate
3.静默接口
配置了静默接口的接口无法主动发送数据包,只能被动接受。----一般配置在连接用户的接口上。当静默接口接收到RIP报文后,会改变接口状态,恢复数据收发。
[r1-rip-1]silent-interface GigabitEthernet 0/0/0
4.手工认证
路由器之间的身份核实,需要同时在双方路由器相连的接口上配置。
[r1-GigabitEthernet0/O/0]rip authentication-mode simple cipher 123456
加快收敛----减少计时器时间[r1-rip-1]timers rip 10 60 40----三个时间分别对应更新计时器、无效计时器、垃圾收集计时器,单位S
注意:修改时,三个计时器的时间倍数不要改变。
RIP优缺点
优点:
RIP 协议非常适合小型网络 - 易于理解和配置。
RIP 路由保证支持几乎所有的路由器。
RIP 不需要每次网络拓扑更改时都进行更新。
缺点:
占用资源过多----RIP 可能会造成流量瓶颈,因为它每 30 秒广播一次更新,由于 RIP 中的任何路由更新都会占用大量带宽,因此关键 IT 流程的资源是有限的。
选路不佳----RIP 的跳数限制为 15 跳,因此超出该距离的任何路由器都被视为无穷大,因此无法访问。
收敛速度很慢----当任何链接出现故障时,选择替代路线需要花费大量时间。
RIP 不支持同一路由上的多条路径,这可能会产生更多的路由环路,使用固定跳数度量来选择最佳路由时,根据实时数据比较路由时,RIP 无法工作,由于重复的过程,这会导致数据包丢失和网络操作过载。5.仅支持小规模网络
OSPF----开放式最短路径优先协议
基本概念
协议使用范围----IGP
链路状态型协议----传递拓扑
传递真实掩码信息----无类别路由协议
OSPF版本
OSPFv1(测试版本)
OSPFv2----lPv4
OSPFv3----lPv6
SPF算法
OSPF传递的是LSA信息(链路状态通告)
OSPF更新方式
触发更新:周期链路状态刷新-----30min
OSPF更新地址---组播:(224.0.0.5/)224.0.0.6
OSPF开销值==参考带宽/实际带宽(参考带宽默认为100Mbps)
OSPF进行跨层封装----基于IP协议进行封装,协议号89
OSPF区域化结构
OSPF为了适应大中型网络环境,进行了结构化部署------区域划分
区域划分的特点:区域内部传递拓扑信息,区域间传递路由信息。
区域划分是基于路由器接口的。
区域编号----32bit
(1)区域0-----骨干区域
(2)非骨干区域----非0区域
区域划分规则
(1)所有的非骨干区域都必须和骨干区域直接相连----星型拓扑
(2)骨干区域唯一
●区域边界路由器----ABR
(1)同时属于多个区域,且至少有一个接口属于骨干区域。
(2)在骨干区域中至少存在一个活跃的邻居。
骨干区域 :作为中央实体,其他区域与之相连,骨干区域编号为 0,在该区域中,各种类型的 LSA 均允许发布。
标准区域 :除骨干区域外的默认的区域类型,在该类型区域中,各种类型的 LSA 均允许发布。
数据包类型(5种报文)
类型
描述
用途
1
Hello
用来发现邻居、选举DR/BDR,维护OSPF邻居关系
2
DBD(数据库描述)
用在数据库交换过程中,确立主/从关系,交换LSA包头,以及确定首个序列号
3
LSR(链路状态请求)
用在DBD交换过程中,请求本路由器已知的特定LSA
4
LSU(链路状态更新)
用来向已发出LSR数据包,以请求特定LSA的邻居,发送完整的LSA
5
LSack(链路状态确认)
用来确认本路由器已收到的LSU数据包
三个阶段
邻居发现:通过发送Hello报文形成邻居关系。
. 10S发送一次hello报文,来确认邻居的存在。
. 如果一个dead time时间没有收到邻居发送给自己的hello报文,则认为邻居不存在,deadtime一般 为hello时间的四倍,默认情况下为4OS。
.Router-ID------RID。
(1)全域唯一,标识路由器的身份
(2)使用IP地址的表示形式
路由通告:邻居间发送链路状态信息形成邻接关系。
路由计算:根据最短路径算法算出路由表。
四张表
邻居表:主要记录形成邻居关系路由器。
链路状态数据库:记录链路状态信息。
OSPF路由表:通过链路状态数据库得出。
全局路由表:OSPF路由与其他比较得出。
七种状态机
.down---关闭状态---启动ofps协议,发出hello报文就进入下一状态。
.init----初始化状态---当收到hello报文中,存在本地RID值是进入下一状态。
.2-way--双向通讯状态--邻居关系建立的标志。
条件匹配:匹配成功进入下一阶段,反之停留在邻居关系阶段。
.exstart--预启动状态---使用未带有信息的DBD报文进行主从关系选举。RID大的为主。
.exchange--准交换-使用携带目录信息的DBD包进行目录共享。
.loading--加载状态--邻居间使用LSR/LSU/LSACK三种报文来获取完整的拓扑信息。
.full---转发状态---拓扑信息交换完成后进入该状态---邻接关系建立的标志。
条件匹配
设备接口角色
指定路由器------DR
备份指定路由器-----BDR
其他路由器----DRother
角色之间的关系
DR与BDR----邻接
DR与DRother---邻接
BDR与DRother---邻接
DRother与DRother----邻居
OSPF条件匹配的情况
在以太网网络中-----必须进行条件匹配
在点到点网络中-----不需要进行条件匹配
选举规则
优先级,默认为1,0-255,越大越优
RID,越大越优
选举范围
一个广播域,进行一次条件匹配。
条件匹配是属于非抢占模式----一旦选举成功,不会因为新加入的设备而重新选举。
OSPF工作过程
OSPF协议启动后,路由器A向本地所有启动了OSPF协议的直连接口,使用组播地址224.0.0.6发送hello报文。
.该hello报文中携带了本地的全域唯一的RID值。
.当对端路由器B接收到该报文后,也会回复hello报文
.该hello报文中携带了A的RID值。
.此时,A与B建立邻居关系,并生成邻居表。
.邻居关系建立后,邻居之间进行条件匹配,匹配失败则停留在邻居关系,仅使用hello报文保活。
.若匹配成功,则可以开始建立邻接关系。
.邻接间共享DBD报文,将本地与邻接之间的DBD报文进行对比,查找本地没有的LSA信息,之后使用LSR来询问,对端使用LSU回复具体的LSA信息,之后本地使用LSAck报文进行确认。
.该过程全部完成后,生成数据库表(LSDB)。
.在之后,本地基于数据厍表,后用SPF算法,计算到达所有未知网段的最短路径,然后将其加载到本地的OSPF路由表中。
.并将OSPF路由表中的部分路由加载到本地全局路由表中。
.此时,路由器完成路由收敛工作。
.最后,使用hello报文进行周期保活,并且每30min进行一次链路状态刷新。
基本配置
1.启动OSPF协议,配置进程号(仅具有本地意义),手工配置RID值
若没有配置RID值,则设备自动生成(环回接口最大IP>物理接口最大IP)
[r1]ospf 1 router-id 1.1.1.1
2.配置区
o[r1-ospf-1]area 0
3.宣告:激活接口,发布拓扑或路由
(1)宣告网段
[r1ospf-1-area-0.0.0.0]network 1.1.1.0 0.0.0.255
反掩码:32位二进制,使用点分十进制表示,由连续0+连续1
(2)接口宣告方式-----精准宣告
[r1-ospf-1-area-0.0.0.0]network 12.0.0.1 0.0.0.0
OSPF邻居表
[r2]display ospf peer---查看OSPF邻居
[r2]display ospf peer brief ----查看OSPF邻居简表
OSPF数据库表
[r2]display ospf lsdb -----查看OSPF数据库表
OSPF路由表
[r2]display ospf routing ---查看OSPF路由表
OSPF优先级====10
reset ospf 1 process -----重置OSPF进程
OSPF扩展配置
修改OSPF默认参考带宽
[r2-ospf-1]bandwidth-reference 10000-----修改参考带宽,<两端均需要修改>
修改接口优先级,从而干涉条件匹配
[r1-GigabitEthernet0/0/0]ospf dr-priority 10-----在接口修改
[r1-GigabitEthernet0/0/0]ospf dr-priority 0 ---优先级修改为0,代表放弃选举
手工汇总
[r2-ospf-1-area-0.0.0.0]abr-summary 192.168.0.0 255.255.252.0
必须在ABR上配置
汇总的明细路由来源在那个区域,进入那个区域进行配置
缺省路由
在边界设备上
[r1-ospf-1]default-route-advertise----非强制性下发,要求边界路由器中存在缺省路由才可以下发
[r1-ospf-1]default-route-advertise always----强制性下发,不要求本地存在缺省路由
静默接口
不接受也不发送hello报文,与RIP的静默接口不同。
[r3-ospf-1]silent-interface GigabitEthernet 0/0/1
接口认证
[r1-GigabitEthernet0/0/0]ospf authentication-mode ?
md5 Use MD5 algorithm ------MD5认证
null Use null authentication -----不认证----OSPF默认情况simple Simple authentication mode -----简单认证----明文认证
[r1-GigabitEthernet0/o/0]ospf authentication-mode md5 1 cipher 123456
[r2-GigabitEthernet0/0/0]ospf authentication-mode md5 1 cipher 123456
加快收敛
[r3-GigabitEthernet0/0/0]ospf timer hello ? .------一端修改,另一端必须修改,若不修改,则会导致邻居关系无法建立。
INTEGER<1-65535> Second(s)
OSPF优缺点
优点:
(1)OSPF 适合在大范围的网络:OSPF 协议当中对于路由的跳数,它是没有限制的,所以 OSPF 协议能用在许多场合,同时也支持更加广泛的网络规模。只要是在组播的网络中,OSPF协议能够支持数十台路由器一起运作。
(2)组播触发式更新:OSPF 协议在收敛完成后,会以触发方式发送拓扑变化的信息给其他路由器,这样就可以减少网络宽带的利用率;同时,可以减小干扰,特别是在使用组播网络结构,对外发出信息时,它对其他设备不构成其他影响
(3)收敛速度快:如果网络结构出现改变,OSPF 协议的系统会以最快的速度发出新的报文,从而使新的拓扑情况很快扩散到整个网络;而且,OSPF 采用周期较短的 HELLO 报文来维护邻居状态。
(4)以开销作为度量值:OSPF 协议在设计时,就考虑到了链路带宽对路由度量值的影响。OSPF 协议是以开销值作为标准,而链路开销和链路带宽,正好形成了反比的关系,带宽越是高,开销就会越小,这样一来,OSPF 选路主要基于带宽因素。
(5)OSPF 协议的设计是为了避免路由环路:在使用最短路径的算法下,收到路由中的链路状态,然后生成路径,这样不会产生环路。
缺点:
(1)OSPF 协议需要有关复杂网络的高级知识,因此不像其他一些协议那样容易学习。
(2)当有更多路由器添加到网络时,OSPF 路由不会扩展。OSPF 协议缺乏可扩展性使其不适合跨 Internet 路由。
(3)OSPF 协议维护路由信息的多个副本,增加了所需的内存量。
ACL技术-----访问控制表
ACL的功能
.访问控制:在设备的流入或者流出接口上,匹配流量,然后执行设定的动作。
对于网络而言,通常由2中处理形式:
permit----允许
deny----拒绝
.抓取流量:因为ACL经常会与其他协议共同使用,所以ACL一般只做匹配流量的作 用,而对应的动作由其他协议完成。
.ACL的匹配规则
自上而下,逐条匹配,匹配上则按照预先设定的动作执行,不再向下匹配。
允许所有。
拒绝所有。
ACL分类
基本ACL:只能基于IP报文的源IP地址定义规则
编号:2000-2999
高级ACL:可以基于IP报文的源IP地址、目的IP地址、IP报文协议字段、IP报文优 先 级、IP报文长度、TCP源目端口号、UDP源目端口号等一系列信息来定 义规则。
编号:3000-3999
二层ACL:
编号:4000-4999
用户自定义ACL:
编号:5000-5999
需求—
.要求PC1可以访问192.168.2.0/24,而PC2不可以。
.基本ACL配置位置应尽量靠近目标。
由于基本ACL仅关注数据包中的源IP地址;故配置时尽量靠近目标,避免对其他目的地址 访问产生误 伤。
基本ACL配置
创建ACL列表
[r2]acl 2000
[r2-acl-basic-2000]
设定规则
[r2-acl-basic-2000]rule deny source 192.168.1.2 0.0.0.0--拒绝192.168.1.2的地址
通过
通配符:0代表不可变,1代表可变;0和1可以随意穿插。
使用通配符可以精准匹配某一个IP地址或多个IP地址或网段。
[r2-acl-basic-2000]rule permit source any ----允许所有,在ACL的最后配置
[r2]display acl 2000 ----查看ACL配置
[r2-acl-basic-2000]rule 8 permit source 192.168.1.1 0.0.0.0
序列号----序列号用于规定ACL规则的顺序,匹配时,从小到大匹配。华为默认步长为 5。方便 插入或删除规则。
调用列表
[r2-GigabitEthernet0/0/1]traffic-filter outbound acl 2000
一个接口的一个方向只能调用一张ACL列表;但是一张ACL列表可以在不同的地方多次调用。
拒绝192.168.1.2和192.168.1.3
192.168.1.00000010
192.168.1.00000011
0.0.0.00000001=====0.0.0.1
拒绝192.168.1.0/24网段中的所有单数IP地址
192.168.1.0000 0001
192.168.1.0000 0011
192.168.1.0000 0101
192.168.1.0000 0111
...
192.168.1.1111 1111
0.0.0.1111 1110
需求二
.要求PC1可以正常访问PC3和PC4,而PC2只能访问PC3,不能访问PC4.
.高级ACL配置位置应尽量靠近源点。
由于高级ACL对流量进行了精确的匹配,可以避免误伤,所以调用时应该尽快靠源, 减少链路资源你的占用。-----不需要再网络中进行无用传输。
高级ACL配置
创建ACL列表
[r1]acl 3000
[r1-acl-adv-3000]
添加规则
[r1-acl-adv-3000]rule deny ip source 192.168.1.20.0.0.0 destination 192.168.2.2 0.0.0.0
[r1-acl-adv-3000]rule permit ip source any ----允许所有
调用
[r1-GigabitEthernet0/0/1]traffic-filter inbound acl 3000
需求三
.要求R1能够ping通R2的环回,但是不能通过telnet环回的方式登录R2
[r2-acl-adv-3000]rule permit tcp destination 2.2.2.20.0.0.0 destination-port eq telnet.
[r2-acl-adv-3000]rule deny tcp destination 12.0.0.20.0.0.0 destination-port eq telnet
[r1]acl 3100
[r1-acl-adv-3100]rule deny tcp source 12.0.0.1 0.0.0.0 destination 2.2.2.2 0.0.0.0 destination-port eq 23
[r1-GigabitEthernet0/0/1]traffic-filter outbound acl 3100
// ACL如果配置在流量的发出者本地,则不会对该流量生效。