OSPF路由协议解释

2023-05-16

目录

  • OSPF路由协议
    • OSPF数据包类型
    • OSPF邻区状态
    • OSPF的邻接关系建立过程
  • 路由名词解释
  • OSPF开源项目

OSPF路由协议

OSPF简介

1、(Open Shortest Path First),开放式最短路径优先,它属于链路状态路由协议,大部分路由将由OSPF协议自行计算和生成,无须网络管理员人工配置,当网络拓扑发生变化时,协议可以自动计算、更正路由,极大地方便了网络管理。
2、 OSPF是通过邻居之间交互LSA(链路状态信息通告)来描述路由和拓扑信息的,将这些LSA存放在LSDB(链路状态数据库)中,包含了网络所有的拓扑信息和路由信息。通过SPF算法,以自己为根节点,计算出到达其他节点的最优路径。

OSPF版本

OSPFv1,实验性版本,未能实施。
OSPFv2,支持IPv4协议。
OSPFv3,在OSPFv2基础上进行了改进,是一个独立的路由协议,支持IPv6。

OSPF协议

1、OSPF协议号:89,基于IP协议。
2、OSPF协议发包的目的地址是两个多播地址,224.0.0.5和224.0.0.6。
3、224.0.0.5是所有的OSPF路由器都能够收到,这就意味着DR路由器使用这个地址对所有的路由器进行路由的通告。
4、而224.0.0.6是只有DR路由器才能够收到,这就意味着DRother通过这个地址于DR路由器进行交换路由信息的。
5、wireshark,过滤ospf即可抓包。

OSPF数据包类型

1、hello:这是路由器之间互相发现,建立关系以及保活的数据包。

network mask网络掩码:发送hello报文接口的网络掩码
hellointerval:hello报文的频率,默认10秒
options可选项:可选项字段。
rtr pri:DR的优先级,默认1,范围0-255,0表示不参与选举
routerdeadinterval:邻居dead时间,超过此时长没有收到邻居的hello包,则认为邻居down,默认是4倍的hello时间,即40秒。
designated router:选举成为DR的接口地址
backup designated router:选举成为BDR的接口地址
neighbor:邻居的route id
在这里插入图片描述

2、DD:数据库描述包,这个数据包就像是一份路由条目的清单列表,里面包含着LSA的头部信息,当其他路由器发现有自己缺少的路由条目,就会发送LSR。

interface mtu:本端接口MTU的大小,华为默认为0
options:可选项
I:如果是第一个DD报文则置为1,否则为0
M:如果是最后一个DD报文则置为1,否则为0
M/S:master或者slave,确定主从关系,当认为自己是主路由器是置为1
DD sequence number:DD报文的序列号,用来进行隐形确认。
LSA headers:LSA头部信息
在这里插入图片描述

3、LSR:用于向OSPF邻居请求LSA,来补充自己的路由条目的空缺。

LS type:链路状态类型
LS id:链路状态ID
advrouter:产生此LSA的路由器的route id
在这里插入图片描述

4、LSU:LSU承载着LSA,而LSA正是包含着路由信息的数据媒介

number of LSAs:LSA的数量
LSA:LSA的详细信息,LSA具有多种类型,不同类型的LSA详细描述不相同。
在这里插入图片描述

5、LSAck:当收到对端的LSU,需要回送一个LSAck表示确认,否则路由器会启用重传机制,默认是4秒。关于OSPF相关的timer,可以在发送OSPF相关协议包的接口上进行设置。
在这里插入图片描述

OSPF邻区状态

down:初始化状态,没有收到任何hello包。
attempt:此状态只在NBMA网络种出现,表示本端发送hello包后,在dead时间内仍然没有收到对方的hello包。
init:收到了邻居的hello,但是邻居的hello包中的 neighbor字段不含有自己的route id。
2-way:收到了邻居的hello,邻居的hello包中的 neighbor字段含有自己的route id。
exstart:开始交互DD报文,进行主从关系的选举。
exchange:已经选出主从关系,开始进行LSA摘要信息的交换。
loading:收到邻居发来的LSR报文。
full:收到了邻居的LS ACK,认为邻居已经完成LSDB的同步。

OSPF的邻接关系建立过程

邻居状态一开始都为down状态。
1、A给B发送hello包,邻居为空,B收到以后邻居状态为init。
2、B给A发送hello包,邻居为1.1.1.1,A收到以后邻居状态为2-way。
3、A给B发送hello包,邻居为2.2.2.2,B收到以后邻居状态为2-way。此时邻居关系建立。
4、A和B开始发送空的DD报文进行主从协商,此时邻居状态都为exstart。
5、B成为主路由器,开始发送携带LSA摘要的DD报文,这个过程都是exchange状态。
6、当DD报文交互完成后,即收到对方DD报文M=0时,开始发送LSR请求,这个时候邻居状态为loading状态。
7、当收到邻居的LS ACK时,邻居状态为full,此时邻接关系建立完成。
8、邻居关系是指双方hello报文互相通过,此时还没有进行LSA的交互,这个阶段时选举DR和BDR的阶段。邻接关系代表数据库已经同步,可以开始进行路由的计算。

在这里插入图片描述

路由名词解释

IGP

(内部网关协议)是在一个自治网络内网关(主机和路由器)间交换路由信息的协议。路由信息能用于网间协议(IP)或者其它网络协议来说明路由传送是如何进行的。IGP协议包括RIP、OSPF、IS-IS、IGRP、EIGRP。

OSPF

(Open Shortest Path First),开放式最短路径优先,它属于链路状态路由协议,大部分路由将由OSPF协议自行计算和生成,无须网络管理员人工配置,当网络拓扑发生变化时,协议可以自动计算、更正路由,极大地方便了网络管理。

LSA

(Link-State Advertisement),链路状态通告。包括有关邻居和通道成本的信息。 LSA被路由器接收用于维护它们的路由选择表。

AS

(autonomous system),自治系统,是一个有权自主地决定在本系统中应采用各种路由协议的小型单位。

ASE

自治系统外部的路由。

ABR

区域边界路由器,是位于一个或多个OSPF区域的一个路由器,其连接这个区域到骨干网络。

ASN

一个自治系统将会分配一个全局的唯一的16位号码,有时我们把这个号码叫做自治系统号(ASN)。

STUB

一种典型AS应用,在划分了区域之后,非骨干区域中的路由器对于区域外的路由,一定要通过ABR(区域边界路由器)来转发,对于区域内的路由器来说ABR是一个通往外部世界的必经之路。内部ASE路由无法传递到区域外,也无法引入区域外的ASE路由,包括静态路由。

NSSA

(“not-so-stubby” area),STUB扩展,区域内路由器引入的ASE路由可以在NSSA中传播并发送到区域之外。

RIB

路由信息库(Routing Information Base,RIB)

FIB

转发表,也叫转发信息库(Forwarding Information base,FIB)

OSPF开源项目

1、XORP

项目的目标是建立一个软件路由器平台,是功能齐全的、稳定和足够的生产使用,灵活和可扩展性。支持OSPF, RIP, BGP,OLSR, VRRP, PIM, IGMP (Multicast) 和其它路由协议. 它可实现路由协议为IPv4和IPv6和统一的手段来配置它们。支持各种linux,BSD, Windows(使用mingw编译器编译)。

开源地址:https://github.com/greearb/xorp.ct

2、FRR

FRR是一种实现和管理各种IPv4和IPv6路由协议的自由软件。它几乎运行在所有的Linux和BSD发行版上,并支持所有的现代CPU架构。
FRR目前支持以下协议:
BGP、OSPFv2、OSPFv3、RIPv2、RIPng、IS-IS、PIM-SM/MSDP、LDP、BFD、Babel、PBR、OpenFabric、VRRP、EIGRP (alpha)、NHRP (alpha)

开源地址:https://github.com/FRRouting/frr

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

OSPF路由协议解释 的相关文章

  • OSPF(二)DR与BDR选举

    文章目录 MA网络中的问题DR amp DBRDR与BDR的选举 MA网络中的问题 在运行OSPF的MA网络包括广播型网络和NBMA网络 xff0c 都会存在两个问题 在一个有n个路由器的网络 xff0c 会形成 n n 1 2个邻接关系
  • H3C配置多区域OSPF实验

    一 先上拓扑 xff1a 二 实验环境 xff1a Windows 10 xff08 21H1 xff09 xff0c HCL版本 xff1a V3 0 1 xff08 华三模拟器 xff09 三 实验需求 xff1a SWA SWB SW
  • [网络]OSPF理论

    特性 xff1a 分类 xff1a 无类 xff0c 链路状态协议封装 xff1a ip xff08 89 xff09 更新目标地址 xff1a 224 0 0 5 224 0 0 6 支持单播更新方式 xff1a 定时 完整定时更新 xf
  • BGP Extended Communities for OSPF PE-CE Routing-域ID

    要让OSPF路由的特性能够穿过MPLS 骨干网络 xff0c 就需要额外定义一些BGP扩展团体属性 可以通过MP BGP 传递的OSPF属性包括 xff1a MP BGP 扩展属性可是使得OSPF的路由可以完全的在远端PE路由器上重建 LS
  • 堆叠+链路聚合+OSPF

    1 配置IRF堆叠 swa inter range ten gig1 0 49 to ten gig1 0 52 shutdown swa irf port 1 1 port group inter ten gig 1 0 49 port
  • OSPF基础

    OSPF 1 ospf天生无环 是因为使用了SPF算法 该算法的概述是 选择一条花费最少而且没有环路的路径 2 ospf里有三张表 a 邻居表 ospf使用hello报文来发现并维持邻居关系 使用ospf的路由器每10s向相连的路由器发送h
  • HCIE面试题:OSPF、ISIS、BGP支持IPv6的改进

    OSPF 与OSPFv2相比 xff0c OSPFv3在工作机制上与OSPFv2基本相同 xff1b 但为了支持IPv6地址格式 xff0c OSPFv3对OSPFv2做了一些改动 OSPFv3基于OSPFv2基本原理并增强 xff0c 是
  • OSPF实验

    我们坠落 破碎 掉入深渊 但我们终会被托起 被治愈 我们无所畏惧 OSPF部分实验 一 pandas是什么 二 使用步骤 1 引入库 2 读入数据 总结 没关系的 大家都会做错选择 会莫名其妙掉眼泪 走在路上会突然崩溃 但这并不影响我们去看
  • OSPF协议

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 HCIA第四天 前言 一 OSPF协议 二 LAS优化 特殊区域 1 解决OSPF的不规则区域 三 扩展配置 前言 一 OSPF协议 OSPF 开放式最短路径优先协议 无类别
  • Cisco模拟器-ospf配置实验(验证与负载均衡)

    要求 如图运行OSPF区域 区域1要求用OSPF明文验证 区域0要求用可靠的验证方式 要求R4去往R1的环回从R2走 R1上看到去往R4的两条等价负载均衡 基础配置 R1 R1 config int f0 0 R1 config if ip
  • OSPF路由协议详解及配置

    文章目录 一 OSPFv2基本概念 1 1 OSPF的基本概念 1 2 层次划分模型 1 3 OSPF区域划分优势 1 4 OSPF路由器类型 1 5 OSPF路由类型 1 6 OSPF支持的网络 1 6 1 P2P 1 6 2 广播型网络
  • 二、OSPFv2 LSA详解

    OSPFv2 LSA 什么是LSA LSA头格式 LSA的类型 Router LSA Type 1 路由器LSA 类型1 Network LSA Type2 网络LSA 类型2 Network Summary LSA Type3 网络汇总L
  • 计算机网络——网络层之路由选择协议

    参考链接 CSKAOYAN COM 路由选择协议 自治系统AS 由于 1 因特网规模很大 2 许多单位不想让外界知道自己的路由选择协议 但还想连入因特网 于是产生了自治系统AS 在单一的技术管理下的一组路由器 而这些路由器使用一种AS内部的
  • 手动添加本地路由表并用Quagga+ospf通知其它路由

    文章目录 参考文章 一 路由设置 1 参数说明 2 查询设置 二 动态路由的设置 实验 参考文章 Linux下使用Quagga搭建软路由 OSPFv2学习 鳥哥的 Linux 私房菜 一 路由设置 1 参数说明 root anzye rou
  • 配置Dot1q终结子接口实现跨设备VLAN间通信示例

    示例图 一 实验目的 1 配置Dot1q终结子接口实现跨设备VLAN间通信示例 二 注意事项 1 Dot1q终结子接口和QinQ终结子接口不支持透传不带VLAN Tag的报文 收到不带VLAN Tag的报文会直接丢弃 2 由于三层以太网子接
  • 《eNSP - OSPF 查看命令》

    display ospf peer 查看 OSPF 邻居的相关信息 display ip routing table protocol ospf 查看 OSPF 协议路由表 display ospf interface 查看运行 OSPF
  • 三层交换机配置OSPF动态路由

    一 建立拓扑图 二 配置主机IP地址 网关 主机号 IP地址 网关 PC 0 192 168 10 101 192 168 10 1 PC 1 192 168 20 101 192 168 20 1 PC 2 192 168 30 101
  • OSPF学习总结

    对于OSPF的学习重点总结 一个DR 三个表 五种包 七种状态 路径寻优 实时更新 OSPF介绍 一种链路状态和内部网关协议 所谓链路状态就是指 链路上的路由器与哪些路由器相邻以及它们之间的距离 度量值 是多少 来确定一条最短路径 内部网关
  • 网络篇 OSPF的路由器类型-42

    OSPF路由器类型 在OSPF初篇的时候 就说到了OSPF是一种比EIGRP协议更加复杂的大型网络配置协议 它的路由器类型也分为了好几种 现在我们通过下图来了解一个OSPF路由器类型 1 内部路由器 所有的接口都接入到同一个区域中的路由器
  • IP(OSPF综合实验)

    一 实验 1 R4为ISP 其上只能配置IP地址 R4与其他所有直连设备间使用公有IP 2 R3 R5 6 7为MGRE环境 R3为中心站点 3 整个OSPF环境IP地址自定义 4 所有设备均可访问R4的环回 5 减少LSA的更新量 优化

随机推荐

  • 解决映射网络驱动器自动断开问题

    解决映射网络驱动器自动断开问题 hzq0201 2012 04 13 06 47 36 2777 收藏 2 版权 映射的网络驱动器在一段时间自动断开 xff0c 是由于服务器服务自动断开连接功能的默认超时期限造成的 xff0c 我们可以通过
  • vector深度探索

    声明 xff1a 本文中所有图件都来自B站侯捷老师授课视频 vecctor 底层实现原理 图1 GNU2 9 实现的容器vector vector 的内存是动态增长的 xff0c vector 最重要的三个成员变量为 三个迭代器 xff1a
  • 发送一个http请求以及url三部分组成和语法

    浏览器从URL中解析出服务器的主机名浏览器讲服务器的主机名转化成服务器的IP地址 xff08 DNS解析 xff09 浏览器将端口号从URL解析出来浏览器建立一条鱼web服务器的TCP连接浏览器向服务器发送一条http请求报文服务器向浏览器
  • 结构体对齐规则

    结构体 xff1a 结构体 xff08 struct xff09 是由一系列具有相同类型或不同类型的数据构成的集合 因为这一特性 xff0c 方便了开发者在使用的过程中可以将需要的不同的数据类型放在一起 xff0c 做成我们需要的数据类型
  • GPS坐标用于机器人定位的简单处理

    文章目录 前言一 GPS数据格式二 GPS坐标转换二维坐标原理三 参考代码1 转换经纬度格式2 解析通过串口获得的NMEA数据3 将经纬度转换为xy平面二维坐标 前言 最近工作上面接触使用GPS的NMEA数据为机器人提供平面坐标定位 xff
  • 学完C++基础后再学什么?

    学完 xff1f 那是什么程度 xff1f STL用得熟练吗 xff1f 算法和数据结构掌握得怎么样呢 xff1f 会写界面吗 xff1f BOOST呢 xff1f 像楼上所说的换一种语言 xff0c 简直是痴人说梦 xff0c 如果不深入
  • 视觉SLAM十四讲:回环检测-知识点+代码

    目录 基于外观的几何关系1 基础知识1 1 准确率和召回率1 2 词袋模型1 3 字典1 4 字典的数据结构1 5 相似度的计算1 6 相似度评分的处理1 7 检测回环后的验证 2 实践与代码解析2 1 创建字典2 2 相似度计算 回环检测
  • QT笔记--QT内类的层次关系,以及控件从属关系

    QT窗口界面使用的类层次如下 只包含了直接使用部分 界面上每一个创建的控件 xff0c 都是一个控件类的对象 xff0c 定义在头文件ui mainwindoow h的类UI MainWindow中 xff0c 并且其中的成员函数setup
  • C_带参数的宏定义

    C 带参数的宏定义 xff23 语言允许宏带有参数 在宏定义中的参数称为形式参数 xff0c 在宏调用中的参数称为实际参数 对带参数的宏 xff0c 在调用中 xff0c 不仅要宏展开 xff0c 而且要用实参去代换形参 带参宏定义的一般形
  • 十进制数转换成十六进制数~C语言

    include lt stdio h gt 下面将整数a转换成十六进制输出的字符串 原理 xff1a 1 xff0c 首先知道0b100000 61 0b10000 2 61 0b1000 2 61 0b100 2 61 0b10 2 利用
  • Qt实现线程安全的单例模式

    实现方式 1 实现单例 把类的构造函数 拷贝构造函数 赋值操作符定义为private的 xff1b 把获取单例的接口和唯一的实例指针定义为static的 xff0c 不需要实例化 xff0c 直接通过类名即可访问 2 支持多线程 采用双重校
  • 文本文件和二进制文件的差异和区别

    广义上的二进制文件包括文本文件 xff0c 这里讨论的是狭义上的二进制文件与文本文件的比较 xff1a 能存储的数据类型不同 文本文件只能存储char型字符变量 二进制文件可以存储char int short long float 各种变量
  • Qt实现记录日志文件log

    概述 Qt有两种实现记录日志的方式 xff0c 第一种是安装自定义的Qt消息处理程序 xff0c 自动输出程序产生的调试消息 警告 关键和致命错误消息的函数 xff1b 第二种是自定义一个类 xff0c 可以在程序指定位置打印输出指定的内容
  • Qt在linux环境下调用动态库,pro工程文件加载库和QLibrary加载库两种方式

    QT调用动态库 xff0c 在编译时和运行时的方式不同 xff0c 编译时可在pro文件加载或使用QLibrary类加载 xff1b 运行时依赖环境变量 xff0c windows下直接把动态库拷贝到可执行文件目录即可 xff0c linu
  • linux下QT发布程序双击打不开解决方法

    现象 Qt开发的程序 xff0c 使用 终端可以打开 xff0c 双击却打不开 阶段一 右键可执行程序 xff0c 选择属性 xff0c 可执行程序类型如果是 application x sharedlib xff0c 在QT的pro文件添
  • Qt发起http请求,get和post方式,并接收响应数据

    目录 Qt发起http请求get xff0c 异步接收Qt发起http请求post xff0c 异步接收Qt发起http请求get和post xff0c 收发同步http下载网络图片 Qt发起http请求get xff0c 异步接收 get
  • QT实现浏览器访问网页,使用QWebEngineView

    支持访问网页 xff0c 前进 后退 刷新 xff0c 点击超链接自动跳转 xff0c 获取网页鼠标事件 xff0c 重新编译QWebEngineView库后还可以支持播放mp4等视频 xff1b Qt在debug模式运行有时访问网页很卡
  • Qt程序打包成安装包exe

    本章介绍把Qt开发的程序打包成安装包的方法 xff0c 程序打包成install exe xff0c 可双击安装 xff0c 有默认安装路径 xff0c 也可以选择安装目录 xff0c 自动生成桌面快捷方式和开始菜单选项 xff0c 可以在
  • C/C++socket网络编程

    目录 tcp和udp通信流程图socket函数bind函数listen函数accept函数connect函数recv recvfrom read函数send write sendto sendmsg函数close shutdown函数hto
  • OSPF路由协议解释

    目录 OSPF路由协议OSPF数据包类型OSPF邻区状态OSPF的邻接关系建立过程 路由名词解释OSPF开源项目 OSPF路由协议 OSPF简介 1 xff08 Open Shortest Path First xff09 xff0c 开放