HCIA学习第六天:OSPF:开放式最短路径优先协议

OSPF:开放式最短路径优先协议

无类别链路状态IGP动态路由协议

1.距离矢量协议:运行距离矢量协议的路由器会周期性的泛洪自己的路由表。通过路由的交互,每台路由器从相邻的路由器学习到路由,并且加载进自己的路由表中;对于网络中的所有路由器而言,路由器并不清楚网络的拓扑结构,只是简单的知道要去往某个目的地的方向在哪儿,距离多远。这既是距离矢量协议的本质。

2.链路状态协议:与距离矢量协议不同,链路状态协议通告的是链路状态信息,而不是路由表。运行链路状态协议的路由器之间会先建立一个协议的邻居关系,然后彼此之间开始交互LSA(链路状态通告)。每台路由器都会产生LSA,路由器将接收到的LSA放入自己的LSDB(链路状态数据库)中。路由器通过LSDB,掌握了全网所有的拓扑信息。最后,由路由器通过SPF算法计算出最优路径,随后加载于自己的路由表中。

OSPF的特征

支持等开销负载均衡

基于组播进行更新----224.0.0.5 224.0.0.6

支持触发更新 ; 每30min进行一次周期更新

需要结构化的部署---区域划分 地址规划

相同区域传递拓扑,不同区域传递路由

区域划分的规则:

1.星型结构 0区为骨干区域;大于0则为非骨干区域,所有非骨干区域必须接入到骨干区域上。

2.必需要有ABR---域间路由器 两个区域相连时,必须存在ABR,ABR---同时工作在两个区域上。

Router-ID 路由器标识符 ,用于一个OSPF域中唯一的标识一台路由器。

Router-ID的设定可以通过手工配置的方式,或 使用系统自动生成的方式。

定义RID值,建议使用IP地址,全网唯一,要是不进行手工配置则会自动生成-------优先配置为环回的最大数值,如果没有环回,则自动配置为最大物理接口数值。

使用COST值作为度量值:Cost=开销值=参考带宽/接口带宽;默认参考带宽为100M,整段路径cost值之合最小为最佳。

若接口带宽大于参考带宽,则度量值为1,可能会导致选路不佳,故而在接口带宽大于参考带宽的网络中,可以人为的修改参考带宽。

[R1-ospf-1]bandwidth-reference 1000 修改参考带宽为1000Mbits/s

注意:一旦修改参考带宽,需全网所有设备都修改一致

一:ospf的数据包类型

1、HELLO包 用于邻居间的发现 关系建立 及保活

2、DBD包 数据库描述包 用于携带本地数据库目录

3、LSR包 链路状态请求包 在查看完对端邻居的DBD包后,基于本地的位置查询LSA 随后去索要未知的LSA信息,就通过这个LSR包。

4、LSU包 链路状态更新包 用于携带各种LSA信息

5、 LSACK包 链路状态确认包 用于确认接收到对端的信息

二:ospf的状态机

**Down状态:**表示未激活的状态,一旦本地发出hello包,则进入下一个状态。

**Init状态:**表示初始化状态

**Tow-way状态:**双向通信 表示建立了邻居关系

经过条件匹配,成功则进入下一个状态机,失败则停留于tow-way状态

**Exstart 状态:**预启动状态

Exchange状态: 准交换状态

Loading状态: 加载状态 在查看完对端邻居的DBD包后,使用LSR包来询问自己位置的LSA信息,对端使用LSU包进行回复,本地还需要使用LSACK进行确认回复。

Full状态: 邻接关系建立的标识

三:ospf的工作过程

启动配置完成后,本地组播 224.0.0.5 发送hello包,Hello包将携带本地的RID值,及已知的邻居的RID值,若接收到对端的hello包中有自己的RID则视为认识 邻居关系的建立,生成邻居表,开始条件匹配 成功 则进入下一个阶段 不成功 则 永远是邻居,使用空的DBD包进行主从选举 对比RID 大为优 且 优先进入下一个状态 优先共享数据库目录 ,之后 使用 LSR/LSU/LSACK 来获取未知的LSA信息并加载于本地的LSDB中。 启用SPF算法 基于本地LSDB生成有向图,在计算出最短路径树,在基于树形结构算出本地为起始点到达全网各个节点的最优路径,最后加载于本地路由表中,收敛完成后,hello保活即可。每30min进行一次周期更新,周期更新即为对比数据库目录,如果相同 则继续hello包保活,如果不相同,则重新收敛。

结构突变:

  1. 新增一个网段 直连新增网络设备,直接使用更新包告知邻接关系,需要ack确认。
  1. 断开一个网段 直连断开网络设备,直接使用更新包告知邻接关系,需要ack确认。
  1. 无法沟通: hello time 10s ,dead time 40s,时间到了就删除邻居信息。

四:ospf的基础配置

[R1]ospf 1 router-id 1.1.1.1 创建ospf进程号为1 仅具有本地意义 同时定义RID值 建议使用IP地址 全网需要唯一。

[R1-ospf-1]area 0 进入0 区

[R1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0

[R1-ospf-1-area-0.0.0.0]network 12.1.1.0 0.0.0.255

反掩码:掩码反过来

<R1>display ospf peer 查询详细邻居关系

<R1>display ospf brief 查询邻居表

<R1>display ospf lsdb 查询链路状态数据库

五:ospf的扩展配置

1、从邻居关系建立成为邻接关系的条件

网络类型----两个

①点到点的网络:在一个网段中,仅支持存在两个节点的网络。(在点到点的网络类型中,可以直接成为邻接关系)

②MA:多路访问---在一个网段内,存在的节点数量不限

在MA网络中,若所有设备均是邻接关系,则会造成大量的重复更新,故,进行DR/BDR的选举,所有非DR/BDR的设备被称之为DRother,DRother之间维持邻居关系。

选举规则:

  1. 先比较参选接口的优先级 默认1 范围0-255 大为优
  1. 若参选接口的优先级相同,比较参选设备的RID,大为优

[R1-GigabitEthernet0/0/0]ospf dr-priority 2 将参选接口优先级改为2

切记:ospf的DR选举是非抢占性的,故需要重启ospf进程达到重新选举的目的。

<R1>reset ospf process 重启ospf进程

2、手工认证

在邻居间接口上定义安全密钥

[R1-GigabitEthernet0/0/0]ospf authentication-mode md5 1 cipher 123456

3、手工汇总----汇总区域

相关推荐
oneouto4 分钟前
selenium学习笔记(一)
笔记·学习·selenium
张铁铁是个小胖子13 分钟前
MyBatis学习
java·学习·mybatis
我曾经是个程序员22 分钟前
鸿蒙学习记录之http网络请求
服务器·学习·http
0zxm24 分钟前
06 - Django 视图view
网络·后端·python·django
m0_7482323932 分钟前
WebRTC学习二:WebRTC音视频数据采集
学习·音视频·webrtc
真真-真真1 小时前
WebXR
linux·运维·服务器
轩辰~1 小时前
网络协议入门
linux·服务器·开发语言·网络·arm开发·c++·网络协议
燕雀安知鸿鹄之志哉.2 小时前
攻防世界 web ics-06
网络·经验分享·安全·web安全·网络安全
wanhengidc2 小时前
短视频运营行业该如何选择服务器?
运维·服务器
虾球xz2 小时前
游戏引擎学习第55天
学习·游戏引擎