网络安全基础--第十天
OSPF
1.选路的好坏
2.收敛速度
3.占用资源的大小
OSPF---开放式最短路径优先协议---SPF---最短路径优先算法----链路状态型协议
ospf是以带宽作为COST值
ospf分为三类:
ospfV1/ospfV2/ospfV3
ospf与RIP的异同点
相同:
1.OSPFV2和RIPV2一样,都是无类别的路由协议,都支持VLSM和CIDR。
2.OSPFV2和rip的V2都是以组播方式发送,OSPFV2的组播地址是224.0.0.5和224.0.0.6.? 3.OSPFV2和RIPV2都支持等开销负载均衡
不同点:
RIP只应用于小型网络,OSPF应用在中大型网络
做了结构化部署---区域划分---和AS很像
规模不大的,OSPF的网络叫做单区域OSPF网络,包含多个区域,多区域OSPF网络
多区域划分区域的目的:
区域内部传TOPO拓扑信息,区域之间传递路由信息(链路状态型协议的矢量特征)
称为区域边界路由器---ABR----传递两个区域的路由信息
ABR----一个接口属于一个区域,同时属于两个区域
区域划分的要求:
1. 区域之间,必须存在 ABR
2. 区域划分必须遵循星型拓扑结构
中间区域称为骨干区域,其他的区域非骨干区域
区域编号---区域ID,32位二进制构成,两种表达方式---十进制--点分十进制,骨干区域的区域ID被定义为0
非法ABR
ABR的一个接口属于一个区域,且至少有一个接口属于area0
区域间可以有多个ABR,多的起到备份的作用。
一个ABR可以对应多个区域
ABR---一个接口属于一个区域,同时属于两个区域,区域间可以有多个ABR,一个ABR可以对应多个区域
ospf 的数据包类型
1.hello包---用来周期发现、建立,保活邻居关系。
周期保活 ospf的hello包默认是以10S为周期发送一个
OSPF的失效判断时间为4倍的hello时间。40S 还没收到邻居的hello包,就被认为邻居已经私网, 这个时间被称为死亡时间(dead-time)。
RID用来区分每台路由器
RID的要求:全网唯一,全网指的是一个OSPF网络,格式统一,点分十进制,32位二进制
自动获取的规则:首先,如果设备上配置有环回接口,则选择其中最大的IP地址作为自己的RID,这个最大指的 是数字上边的,如果没有环回接口,则在自己物理接口中选择最大的IP地址作为RID。
我们的hello包中便会携带这个RID 。
2.DBD包---数据库描述报文---
携带的路径信息摘要 我们在发正式的更新数据之前,先发送所拥有的链路信息目录,让对方选取自己没有的数据,避免直接发送全部 链路信息,造成重复更新。
3.LSR包==链路状态请求报文--基于DBD包请求未知的LSA
4.LSU包--链路状态更新报文---真正携带LSA信息的数据包
5.LSACK包--链路状态确认报文---确认包
OSPF每30min进行一次周期更新,为了保证收敛的可靠性
OSPF和RIP周期不一样,不直接发LSU包,而是发送DBD包,为了减少更新量。
ospf的状态机
就是用来标定路由器之间的不同状态
只有hello包和lsack包是组播,其他都是单播。
DOWN
INIT(初始化状态
) 2-WAY(双向通信状态)---标志着邻居关系的建立
条件匹配成功后
EX start预启动状态 进行主从选举(master/slave):通过使用未携带数据的DBD包来进行主从关系的选举,比较 RID,RID大的为主,为主的可以优先获取LSA,主从选举是为了错开LSA的交换过程,减少同一时间的资源占用。
EXCHANGE状态---使用携带目录信息的DBD包进行目录共享,需要ACK确认
LSDB----链路状态数据库,,,这两个DBD包需要ACK确认
确认方式有三种,隐性显性周期
Loading状态--开始正式交换数据 查看对端的DBD包与本端LSA信息对比,基于未知的LSA信息,使用LSR请求查询,邻居使用LSU回复,需要ACK确认
FULL状态=-标志着邻接关系的建立,邻接关系用于区分邻居关系,邻接关系之间才会进行真正的链路状态数据 (LSA)交换,而邻居之间仅使用hello包周期保活。
OSPF的工作过程
启动配置之后, OSPF 向本地所有运行协议的接口以组播地址 224.0.0.5 发hello包,hello包中携带本地的RID及本地已知的邻居的RID 包,建立邻居关系,将收集到的邻居关系记录在一张表中称为邻居表
邻居表建立后,进行条件匹配,失败则停留在邻居关系,仅使用 hello 包保活 匹配成功后,开始建立邻接关系,首先使用未携带数据的 DBD 包进行主从选举,之后使用携带信息的 来共享数据库目录,之后本地使用LSR/ LSU/LSACK DBD包 数据包来获取未知的LSA 信息,完成数据库建 立,生成数据库表, LSDB 。最后,基于本地的链路状态数据库生成有向图,使用 SPF 算法计算最短路径树,之后计算到未知网段的路径,生成路由并添加到路由表中。
收敛完成后, hello 包10S
结构突变问题: 1.新增网段 周期保活, 30MIN 一次周期更新,对比数据库。
2.断开网段----触发更新,使用携带数据的LSU包更新,需要ACK包确认
3.无法沟通:40Sdead time时间到后清除相关路由
四、OSPF的配置
1.启动OSPF的服务
ospf 1进程号,具有本地意义
[R1]ospf 1 router-id 1.1.1.1自定义RID
2.
[R1-ospf-1]area 0
3.宣告 宣告的作用:
1.激活接口
2.发布路由
[R1-ospf-1-area-0.0.0.0]network 1.1.1.0 0.0.0.255---反掩码---用于精确宣告,0代表不可 变,1代表可变,
[R1-ospf-1-area-0.0.0.0]dis ospf peer查看邻居表
[R1-ospf-1-area-0.0.0.0]dis ospf lsdb 查看数据库表
cost=参考带宽/实际带宽
参考带宽默认100MBPS 小于1的数则直接为1,大于1的小数,则直接取整数部分,可以修改参考带宽
[R1-ospf-1]bandwidth-reference 1000修改参考带。