你搞懂OSPF协议了吗?

简介: 你搞懂OSPF协议了吗?

image.png前言:越往后学越发现网络基础的重要性!掌握好网络的底层原理至关重要!更新一个ospf协议的详解!


因为笔记我记在Onenote上了,所以有的是图片,原谅我偷个小懒 ^ - ^

Wireshark很好用,能更好的理解!汉化版的可以看我主页!


1.它是啥?:


image.png

ospf使用组播(224.0.0.5和224.0.0.6)
收敛较快
以开销作为度量值
使用SPF算法可以有效避免环路
触发式更新(30分钟发送定期更新,被称为链路泛洪)
区域设计使OSPF能支持更大规模的网络
通过LSA(链路状态)形式发布路由
不支持自动汇总,支持手动汇总
OSPF直接运行在IP协议之上,使用IP协议号89。


2.它是咋工作的?:



image.png

1、发现并建立邻居
2、传播LSA(区别于距离矢量的路由表更新)
  a、Link stat Advertisement,链路状态宣告(路况信息)
  b、链路:路由器接口
  c、状态:描述接口信息(地址、掩码、开销、网络类型、邻居关系等)
3、将LSA泛洪到区域中的所有OSPF路由器,而不仅是直连的路由器
4、收集LSA创建LSDB(链路状态数据库、地图)
5、使用SPF算法计算到每个目标网络的最短距离,并将其置于路由表中

记住三张表
ospf三张表:
邻居表          记录所有邻居关系
链路状态数据库          记录所有链路状态信息
路由表                             记录最佳路由

3. 一个小概念:


运行ospf之前必须选取一个RID
用来标识一台ospf路由器
RID可以手动配置,也可以自动生成
选取规则:
1、手动配置
2、活动回环接口上选取IP地址最高的
3、活动物理接口上选取IP地址最高的
PS:RID选举具有非抢占性,除非重启OSPF进程

4. 它的类型都有啥?:


Hello      建立并维护邻居关系
DBD(Database Description) LSDB摘要(仅含LSA头部)
LSR(Link State Request)请求LSA
LSU(Link State Update)发送LSA
LSACK(Link State Acknowledgment)对LSU确认

图文讲解5类数据包: 1、简单模拟ospf过程,用抓包工具进行分析!

image.png

image.png

image.png

image.png

image.png



5. 它的邻居状态?:


邻居和邻接关系建立的过程如下:Down:这是邻居的初始状态,表示没有在邻居失效时间间隔内收到来自邻居路由器的Hello数据包。Init:在此状态下,路由器已经从邻居收到了Hello报文,但是自己不在所收到的Hello报文的邻居列表中,尚未与邻居建立双向通信关系。2-Way:在此状态下,双向通信已经建立,但是没有与邻居建立邻接关系。这是建立邻接关系以前的最高级状态。ExStart:这是形成邻接关系的第一个步骤,邻居状态变成此状态以后,路由器开始向邻居发送DD报文。主从关系是在此状态下形成的,初始DD序列号也是在此状态下决定的。在此状态下发送的DD报文不包含链路状态描述。Exchange:此状态下路由器相互发送包含链路状态信息摘要的DD报文,描述本地LSDB的内容。Loading:相互发送LSR报文请求LSA,发送LSU报文通告LSA。Full:路由器的LSDB已经同步。


image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png



6.怎么建立邻居关系呢?


image.png


7.老大和老二(DR和BDR)


image.png

image.png

image.png


image.png

image.png


image.png

image.png


image.png


image.png

image.png


image.png


8.来个综合


image.png

image.png

image.png


相关文章
|
11月前
|
网络协议 算法 数据库
第一章OSPF协议详解
第一章OSPF协议详解
156 0
|
11月前
|
网络协议 算法 数据库
第三章OSPF原理
第三章OSPF原理
|
网络协议 算法 数据库
OSPF原理
OSPF原理
148 0
|
网络协议 算法 数据库
OSPF动态路由协议基础知识
OSPF动态路由协议基础知识
150 1
OSPF动态路由协议基础知识
|
网络协议 数据格式
计算机网络 | 一文搞懂什么是TCP/IP协议
计算机与网络设备之间如果要相互通信,双方就必须基于相同的方法.比如如何探测到通信目标.由哪一边先发起通信,使用哪种语言进行通信,怎样结束通信等规则都需要事先确定.不同的硬件,操作系统之间的通信,所有这一切都需要一种规则.而我们就将这种规则称为协议 (protocol).
179 0
|
网络协议 Linux 开发者
CCNP必备:Linux网络及TCP、IP协议详解(二)|学习笔记
快速学习CCNP必备:Linux网络及TCP、IP协议详解
94 0
CCNP必备:Linux网络及TCP、IP协议详解(二)|学习笔记
|
运维 网络协议 算法
CCNP必备:Linux网络及TCP、IP协议详解(三)|学习笔记
快速学习CCNP必备:Linux网络及TCP、IP协议详解
120 0
CCNP必备:Linux网络及TCP、IP协议详解(三)|学习笔记
|
网络协议 Linux 网络架构
CCNP必备:Linux网络及TCP、IP协议详解(一)|学习笔记
快速学习CCNP必备:Linux网络及TCP、IP协议详解
94 0
CCNP必备:Linux网络及TCP、IP协议详解(一)|学习笔记
|
网络协议 网络架构
你搞懂OSPF协议了吗?
本篇内容记录了OSFP的相关概念和操作。
79 0
你搞懂OSPF协议了吗?
|
缓存 网络协议 物联网
【重学计算机网络】UDP协议到底有什么用(下)
TCP是面向连接的,UDP是面向无连接的。
107 0