OSPF报文分析

news2025/3/10 9:21:34

OSPF报文分析

组播地址

 224.0.0.0~224.0.0.255为预留的组播地址(永久组地址),地址224.0.0.0保留不做分配,其它地址供路由协议使用; 224.0.1.0~238.255.255.255为用户可用的组播地址(临时组地址),全网范围内有效; 239.0.0.0~239.255.255.255为本地管理组播地址,仅在特定的本地范围内有效。常用的预留组播地址列表如下:
224.0.0.0 基准地址(保留)
224.0.0.1 所有主机的地址
224.0.0.2 所有组播路由器的地址
224.0.0.3 不分配
224.0.0.4 dvmrp 路由器
224.0.0.5 ospf 路由器
224.0.0.6 ospf dr
224.0.0.7 st 路由器
224.0.0.8 st 主机
224.0.0.9 rip-2 路由器
224.0.0.10 igrp 路由器
224.0.0.11 活动代理
224.0.0.12 dhcp 服务器/中继代理
224.0.0.13 所有pim 路由器
224.0.0.14 rsvp 封装
224.0.0.15 所有cbt 路由器
224.0.0.16 指定sbm
224.0.0.17 所有sbms
224.0.0.18 vrrp
 以太网传输单播ip报文的时候,目的mac地址使用的是接收者的mac地址。但是在传输组播报文时,传输目的不再是一个具体的接收者,而是一个成员不确 定的组,所以使用的是组播mac地址。组播mac地址是和组播ip地址对应的。iana(internet assigned number authority)规定,组播mac地址的高24bit为0x01005e,mac 地址的低23bit为组播ip地址的低23bit。
  由于ip组播地址的后28位中只有23位被映射到mac地址,这样就会有32个ip组播地址映射到同一mac地址上

‌数据包概览‌:

捕获的数据包数量:452个,已显示452个,显示比例为100%。
当前选中的数据包编号:1
‌数据包详细信息‌:

‌时间戳‌:第1个数据包的时间戳为0.000000秒。
‌源地址‌:12.1.1.2。
‌目的地址‌:224.0.0.5。
‌协议类型‌:OSPF(开放最短路径优先协议)。
‌数据包长度‌:82字节。
‌信息‌:Hello Packet(OSPF的Hello包)。
‌数据包内容分析‌:

‌以太网帧‌:
源MAC地址:HuaweiTe 0a:57:9d (00:e0:fc:0a:57:9d)。
目的MAC地址:IPv4mcast 05 (01:00:5e:00:00:05)。
‌IP层‌:
源IP地址:12.1.1.2。
目的IP地址:224.0.0.5(组播地址)。
‌OSPF协议‌:
OSPF协议用于在路由器之间交换路由信息,Hello包用于发现和维持邻居关系。
‌数据包内容详细解析‌:

‌十六进制和ASCII表示‌:
十六进制数据:01 00 5e 00 00 05 00 e0 fc 0a 57 9d 08 00 45 ...
可读部分:01 00 5e表示OSPF协议版本,00 05表示路由器ID和区域ID,后续部分为以太网帧和IP头部的详细信息。
总结:
这个截图展示了使用Wireshark捕获并分析的一个OSPF Hello数据包。该数据包来自源IP地址12.1.1.2,目的地为组播地址224.0.0.5,用于在OSPF路由器之间建立和维持邻居关系。

‌接口信息‌:

Interface id: 0 (-): 数据包捕获自编号为0的接口。
‌封装类型‌:

Encapsulation type: Ethernet (1): 数据包采用以太网封装。
‌到达时间‌:

Arrival Time: Jan 1, 1970 08:23:23.906000000 中国标准时间: 数据包到达时间。
Time shift for this packet: 0.000000000 seconds: 该数据包的时间偏移为0秒。
‌时间戳‌:

Epoch Time: 1403.906000000 seconds: 从1970年1月1日(Unix纪元)开始计算的秒数。
Time delta from previous captured frame: 0.000000000 seconds: 与前一个捕获帧之间的时间差为0秒。
Time delta from previous displayed frame: 0.000000000 seconds: 与前一个显示帧之间的时间差为0秒。
Time since reference or first frame: 0.000000000 seconds: 从参考帧或第一帧开始的时间为0秒。
‌帧信息‌:

Frame Number: 1: 这是捕获的第一个帧。
Frame Length: 82 bytes (656 bits): 帧长度为82字节(656比特)。
Capture Length: 82 bytes (656 bits): 捕获长度为82字节(656比特)。
Frame is marked: False: 该帧未被标记。
Frame is ignored: False: 该帧未被忽略。
‌协议信息‌:

Protocols in frame: eth:ethertype:ip:ospf: 该帧中包含的协议为以太网(eth)、IP和OSPF。
‌着色规则‌:

Coloring Rule Name: Routing: 该帧的着色规则名称为“Routing”(路由)。

‌正则表达式结构‌:

该正则表达式由两部分组成,每部分都用于匹配特定的字符串模式。
第一部分匹配以“[Coloring Rule Name: Routing]”开头的字符串。
第二部分匹配以“[Coloring Rule String:”开头,后面紧跟特定协议名称之一的字符串。
‌匹配规则‌:

在第一部分中,\s* 表示匹配任意数量的空白字符,这使得正则表达式能够灵活处理不同数量的空格或制表符。
在第二部分中,使用了一个分组来匹配多个可能的协议名称,这些名称之间用竖线 | 分隔,表示“或”的关系。
‌应用场景‌:

该正则表达式可用于文本处理任务,特别是在需要解析包含特定格式字符串的文本时。
在网络配置文件的解析中,该正则表达式可用于识别和处理与路由相关的着色规则。
‌匹配示例‌:

示例1:[Coloring Rule Name: Routing] [Coloring Rule String: hsrp]
这符合正则表达式的匹配规则,因为第一部分匹配了“[Coloring Rule Name: Routing]”,第二部分匹配了“[Coloring Rule String: hsrp]”,其中“hsrp”是分组中指定的协议名称之一。
示例2:[Coloring Rule Name: Routing] [Coloring Rule String: ospf]
同样,这也符合正则表达式的匹配规则。
综上所述,该正则表达式是一个专门用于匹配特定格式字符串的工具,特别适用于处理包含路由着色规则信息的文本。通过理解正则表达式的结构和匹配规则,我们可以准确地识别和应用这些规则,以满足文本处理和网络配置文件解析等场景的需求

‌以太网类型(Ethernet Type)‌:

该帧的类型是IPv4(0x0800),表示这是一个IPv4数据包。
‌源MAC地址(Source MAC Address)‌:

源MAC地址是 HuaweiTe_0a:57:9d,对应的物理地址是 00:e0:fc:0a:57:9d。
这表明数据包的发送方设备是由华为制造的,MAC地址是 00:e0:fc:0a:57:9d。
‌目的MAC地址(Destination MAC Address)‌:

目的MAC地址是 IPv4mcast_05,对应的物理地址是 01:00:5e:00:00:05。
这是一个IPv4多播地址,通常用于将数据包发送给多个接收方。
分析总结:
该以太网帧包含一个IPv4数据包。
数据包的源设备是华为设备,MAC地址为 00:e0:fc:0a:57:9d。
数据包的目的地址是一个多播地址,表明该数据包可能是发送给多个接收设备的。
这种多播地址常用于需要同时向多个设备发送数据的场景,例如视频会议、实时数据流等。

这个数据包的详细分析:

‌版本 (Version)‌:

数据包的版本是IPv4 (0100)。
‌头部长度 (Header Length)‌:

头部长度是20字节 (0101),表示头部占5个32位字。
‌区分服务字段 (Differentiated Services Field)‌:

值为0xc0,表示DSCP (区分服务代码点) 是CS6 (Conveyance Specified) 并且ECN (显式拥塞通知) 是Not-ECT (Not ECN-Capable Transport)。
‌总长度 (Total Length)‌:

数据包的总长度是68字节。
‌标识 (Identification)‌:

标识字段值为0x0028 (40),用于唯一标识主机发送的每一个数据包。
‌标志 (Flags)‌:

标志字段值为0x0000,表示没有特殊的标志位被设置(例如,不分片)。
‌生存时间 (Time to live, TTL)‌:

TTL值为1,表示数据包在网络中最多可以经过一个路由器。
‌协议 (Protocol)‌:

协议字段值为89,表示这是一个OSPF (开放最短路径优先) IGP (内部网关协议) 数据包。
‌头部校验和 (Header Checksum)‌:

头部校验和值为0xcb71,但校验和验证被禁用,状态为未验证 (Unverified)。
‌源地址 (Source)‌:

源地址是12.1.1.2。
‌目标地址 (Destination)‌:

目标地址是224.0.0.5,这是一个多播地址。
总结:
这个数据包是一个IPv4多播数据包,源地址是12.1.1.2,目标地址是224.0.0.5,用于OSPF协议通信。数据包的头部长度为20字节,总长度为68字节,TTL值为1,表示数据包在网络中只能经过一个路由器。头部校验和未验证。

‌版本 (Version)‌:

版本号为2,表示这是OSPF版本2。
‌消息类型 (Message Type)‌:

消息类型为“Hello Packet (1)”,表示这是一个Hello数据包,用于在OSPF邻居之间建立和维持邻接关系。
‌数据包长度 (Packet Length)‌:

数据包长度为48字节。
‌源OSPF路由器 (Source OSPF Router)‌:

源路由器的ID为2.2.2.2,表示发送这个Hello包的路由器的ID。
‌区域ID (Area ID)‌:

区域ID为0.0.0.1,表示这个Hello包属于OSPF的Area 0(Backbone Area)。
‌校验和 (Checksum)‌:

校验和为0xdc8e,并且标注为[correct],表示校验和计算正确,数据包没有损坏。
‌认证类型 (Auth Type)‌:

认证类型为Null (0),表示没有使用任何认证机制。
‌认证数据 (Auth Data)‌:

认证数据为0000000000000000,表示没有认证数据。
总结:
这个OSPF Hello包来自ID为2.2.2.2的路由器,属于OSPF的Backbone Area(区域ID 0.0.0.1),并且没有使用任何认证机制。校验和验证正确,数据包没有损坏。

‌网络掩码 (Network Mask)‌: 255.255.255.0

这表示该网络使用子网掩码255.255.255.0,即这是一个类C网络。
‌Hello Interval [sec]‌: 10

OSPF路由器之间发送Hello数据包的时间间隔为10秒。
‌Options‌: 0x02, (E) External Routing

选项字段值为0x02,表示启用外部路由功能。
‌Router Priority‌: 1

该路由器的优先级为1。在OSPF中,路由器的优先级用于选举DR(指定路由器)和BDR(备份指定路由器)。
‌Router Dead Interval [sec]‌: 40

路由器死间隔时间为40秒。如果在此时间内没有收到邻居路由器的Hello数据包,则认为该邻居路由器不可达。
‌Designated Router‌: 12.1.1.2

该网络的指定路由器(DR)的IP地址为12.1.1.2。
‌Backup Designated Router‌: 12.1.1.1

该网络的备份指定路由器(BDR)的IP地址为12.1.1.1。
‌Active Neighbor‌: 1.1.1.1

该路由器当前有一个活动邻居路由器,其IP地址为1.1.1.1。这意味着该路由器与1.1.1.1之间已经建立了OSPF邻接关系。
总结:
该OSPF Hello数据包显示了一个网络中的OSPF配置和状态信息。网络掩码为255.255.255.0,Hello间隔为10秒,死间隔为40秒。路由器的优先级为1,当前活动邻居为1.1.1.1,指定路由器为12.1.1.2,备份指定路由器为12.1.1.1。

Wireshark数据包分析核心要素


‌界面布局‌

数据包列表区显示编号(No.列)、时间戳、源/目的IP、协议类型等信息‌
选中数据包后,中间窗口展示分层协议详情(物理层→应用层)‌
底部窗口显示原始二进制数据‌
‌数据包标识‌

数据包编号显示在No.列,按捕获顺序自动生成‌
每个数据包头部包含帧编号(如Frame 1)‌
‌关键操作功能‌

支持时间格式调整与列显示配置‌
可通过过滤条件筛选特定数据包‌
支持标记/导出重要数据包‌
‌协议分析特性‌

TCP分析显示序列号、确认号及标志位(SYN/ACK等)‌
支持分层解析:物理帧→以太网头→IP头→传输层→应用层‌
‌典型应用场景‌

ARP地址解析过程抓包‌
TCP三次握手过程追踪‌
路由过程数据包交互分析‌
抓包基础流程
选择活动网卡启动捕获‌
执行待分析网络操作(如ping命令)‌
停止捕获后通过过滤条件精确定位目标数据包‌

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2312609.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySql性能(9)- mysql的order by的工作原理

全字段排序rowid排序全字段排序和rowid排序 3.1 联合索引优化 3.2 覆盖索引优化优先队列算法优化建议 5.1 修改系统参数 5.2 优化sql 1. 全字段排序 CREATE TABLE t ( id int(11) NOT NULL,city varchar(16) NOT NULL, name varchar(16) NOT NULL, age int(11) NOT NULL,addr v…

爬虫案例七Python协程爬取视频

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、Python协程爬取视频 前言 提示:这里可以添加本文要记录的大概内容: 爬虫案例七协程爬取视频 提示:以下是本篇文章正文…

智慧城市智慧社区项目建设方案

一、项目背景 在全球化进程加速的今天,城市化问题日益凸显,传统的城市管理模式已难以满足现代社会对高效、智能化管理的需求。智慧城市和智慧社区的概念应运而生,其核心目标是通过信息技术手段,提升城市资源的利用效率&#xff0…

RabbitMQ高级特性--消息确认机制

目录 一、消息确认 1.消息确认机制 2.手动确认方法 二、代码示例 1. AcknowledgeMode.NONE 1.1 配置文件 1.2 生产者 1.3 消费者 1.4 运行程序 2.AcknowledgeMode.AUTO 3.AcknowledgeMode.MANUAL 一、消息确认 1.消息确认机制 生产者发送消息之后,到达消…

Java EE 进阶:Spring IoCDI

IOC的简单介绍 什么是Spring?Spring是一个开源的框架,让我们的开发更加的简单,我们可以用一句更加具体的话来概括Spring,就是Spring是一个包含众多工具方法的IOC容器。 简单介绍一下IOC,我们之前说过通过ReqestContr…

Java数据结构第二十期:解构排序算法的艺术与科学(二)

专栏:Java数据结构秘籍 个人主页:手握风云 目录 一、常见排序算法的实现 1.1. 直接选择排序 1.2. 堆排序 1.3. 冒泡排序 1.4. 快速排序 一、常见排序算法的实现 1.1. 直接选择排序 每⼀次从待排序的数据元素中选出最小的⼀个元素,存放在…

【算法day5】最长回文子串——马拉车算法

最长回文子串 给你一个字符串 s,找到 s 中最长的 回文 子串。 https://leetcode.cn/problems/longest-palindromic-substring/description/ 算法思路: class Solution { public:string longestPalindrome(string s) {int s_len s.size();string tmp …

《如何排查Linux系统平均负载过高》

【系统平均负载导读】何为系统平均负载?假设一台云服务主机,突然之间响应用户请求的时间变长了,那么这个时候应该如何去排查?带着这个问题,我们对“平均负载”展开深入的探讨和研究。 何为Linux系统的平均负载&#xf…

基于DeepSeek实现PDF嵌入SVG图片无损放大

1. PDF中效果图 2. 询问Deepseek进行代码书写,不断优化后结果 /*** SVG工具类,用于生成价格趋势的SVG图表*/ public class SvgUtils {// SVG画布尺寸private static final int WIDTH 800;private static final int HEIGHT 500;private static final i…

整型的不同类型和溢出

一、整数的不同类型 不同编程语言中的整数类型主要通过以下两个维度区分: 1. 存储大小 字节数:决定整数能表示的范围(如 1字节8位)。 常见类型: byte(1字节)、short(2字节&#x…

使用express创建服务器保存数据到mysql

创建数据库和表结构 CREATE DATABASE collect;USE collect;CREATE TABLE info (id int(11) NOT NULL AUTO_INCREMENT,create_date bigint(20) DEFAULT NULL COMMENT 时间,type varchar(20) DEFAULT NULL COMMENT 数据分类,text_value text COMMENT 内容,PRIMARY KEY (id) ) EN…

小程序 wxml 语法 —— 41列表渲染 - 进阶用法

这一节讲解列表渲染的两个进阶用法: 如果需要对默认的变量名和下标进行修改,可以使用 wx:for-item 和 wx:for-item: 使用 wx:for-item 可以指定数组当前元素的变量名使用 wx:for-index 可以指定数组当前下标的变量名 将 wx:for 用在 标签上&…

python语言总结(持续更新)

本文主要是总结各函数,简单的函数不会给予示例,如果在平日遇到一些新类型将会添加 基础知识 输入与输出 print([要输出的内容])输出函数 input([提示内容]如果输入提示内容会在交互界面显示,用以提示用户)输入函数 注释 # 单行注释符&…

FPGA学习篇——Verilog学习5(reg,wire区分及模块例化)

1 何时用reg,何时用wire? 这个我找了一些网上的各种资料,大概说一下自己的理解,可能还不太到位... wire相当于一根线,是实时传输的那种,而reg是一个寄存器,是可以存储数据的,需要立…

Redis 数据持久化之AOF

AOF(Append Only File) 以日志的形式来记录每个写操作,将Redis执行过的所有写指令记录下来(读操作不记录),只许追加文件但不可以改写文件,redis启动之初会读取该文件重新构建数据,换…

【芯片验证】verificationguide上的74道SystemVerilog面试题

诧异啊,像我这种没事在网上各处捡东西吃的人为什么之前一直没有用过verificationguide这个网站呢?总不能是大家都已经看过就留下我不知道吧。前几天在论坛上和朋友谈论验证面试题时才搜到这个网站的,感觉挺有意思: .: Verification Guide :.​verificationguide.com/https…

Java后端高频面经——计算机网络

TCP/IP四层模型?输入一个网址后发生了什么,以百度为例?(美团) (1)四层模型 应用层:支持 HTTP、SMTP 等最终用户进程传输层:处理主机到主机的通信(TCP、UDP&am…

面试题(二)--Object中的常见方法

Object Java的Object是所有Java类的父类,所有的Java类直接或者间接的继承了Object类,Object类位于java.lang包中(编译时自动导入),主要提供了11种方法。 /*** native 方法,用于返回当前运行时对象的 Class…

运行OpenManus项目(使用Conda)

部署本项目需要具备一定的基础:Linux基础、需要安装好Anaconda/Miniforge(Python可以不装好,直接新建虚拟环境的时候装好即可),如果不装Anaconda或者Miniforge,只装过Python,需要确保Python是3.…

设备管理系统功能与.NET+VUE(IVIEW)技术实现

在现代工业和商业环境中,设备管理系统(Equipment Management System,简称EMS)是确保设备高效运行和维护的关键工具。本文采用多租户设计的设备管理系统,基于.NET后端和VUE前端(使用IVIEW UI框架&#xff09…