以太网数据帧、网络协议分析

news/2025/1/11 17:58:30/文章来源:https://www.cnblogs.com/maqun/p/18521671

计 算 机 网 络

实 验 报 告

实验四 以太网数据帧分析

一、实验目的

了解网络协议分析软件的过滤方式和原则,包括:按协议类型过滤,按IP地址过滤,按协议模式过滤,按端口过滤等,通过设置不同的过滤条件,熟悉协议类型、端口、协议等概念;分析以太网数据帧的构成,数据链路层将不可靠的物理层转变为一条无差错的链路,涉及的数据单位是帧(frame),高层的协议数据被封装在以太网帧的数据字段发送。使用网络协议分析软件可以捕获各种协议数据包,通过查看这些协议数据包中数据链路帧的各字段可以分析网络协议的内部机制。

二、实验内容

  1. 掌握网络协议分析软件的常用过滤规则使用方法;
  2. 分析以太网数据帧的构成
  3. 掌握以太网报文格式,掌握MAC地址的作用;
  4. 掌握LLC帧报文格式;

二、实验原理

1、网络协议分析软件的过滤规则

(1)按协议类型过滤

Wireshark支持的协议包括 TCP、UDP、ARP、ICMP、HTTP、SMTP、FTP、DNS、MSN、IP、SSL、OICQ、BOOTP等,例如只查看HTTP协议,则直接输入http。

(2)按IP地址过滤

若只要显示与指定IP(例如192.168.1.123)通信的记录则可输入id.addr==192.168.1.123。

如果要限制为源IP为192.168.1.123则输入ip.src===192.168.1.123;

如果要限制为目的IP为192.168.1.123,则输入ip.dst==192.168.1.123。

(3)按协议模式过滤

例如HTTP协议,可以针对HTTP的请求方式进行过滤,只显示发送GET或POST请求的过滤规则:http.request.method == “GET”

或 http.request.method == “POST”

(4)按端口过滤

tcp.dstport == 80 // 只显tcp协议的目标端口80

tcp.srcport == 80 // 只显tcp协议的来源端口80

tcp.port eq 80//不管端口是来源的还是目标的

(5)按MAC地址过滤

例如以太网头过滤,

eth.dst == A0:00:00:04:C5:84 // 过滤 目 标mac

eth.src eq A0:00:00:04:C5:84 // 过 滤 来源mac

eth.addr eq A0:00:00:04:C5:84 // 过滤 来 源MAC和目标MAC都等于A0:00:00:04:C5:84的

(6)按包长度过滤

udp.length == 26, 这个长度是指udp本身固定长度8加上udp下面那块数据包之和 ;

tcp.len >= 7 , 指的是ip数据包(tcp下面那块数据),不包括tcp本身;

ip.len == 94, 除了以太网头固定长度14,其它都算是ip.len,即从ip本身到最后 ;

frame.len == 119 ,整个数据包长度,从eth开始到最后

(7)按参数过滤

例如按TCP参数过滤:

tcp.flags 显示包含TCP标志的封包。

tcp.flags.syn == 0x02 显示包含TCP SYN标志的封包。

tcp.window_size == 0 && tcp.flags.reset != 1

(8)按过滤内容

例如:

tcp[20] 表示从20开始,取1个字符

tcp[20:]表示从20开始,取1个字符以上

tcp[20:8]表示从20开始,取8个字符

(9)采用逻辑运算过滤

过滤语句可利用&&(表示“与”)、||(表示“或”)和!(表示“非”)来组合使用多个限制规则,例如(http && ip.dst ==192.168.1.123 )。要排除arp包,则使用!arp或者not arp。

2、以太网数据帧的构成

EthernetII帧结构

目的地址

DMAC

源地址

SMAC

类型

TYPE

数据

DATA

帧校验

FCS

6

6

2

46—1500

4

三、实验设备

  • 计算机以太网环境
  • Wireshark网络协议分析软件 3.6.19

四、实验内容与步骤

1. 网络协议分析软件的常用过滤规则

(1)打开网络协议分析软件(Wireshark),选择菜单命令“Capture”“Options”子菜单项。弹出“Wireshark: Capture Options”对话框。在Capture中选择网卡。单击“Start”按钮开始网络数据包捕获。在Filter过滤框中输入下面的过滤规则,分析相应过滤规则的含义并截图。

1)按协议类型过滤

答:图中为http协议过滤后的内容,只有http协议。

  1. 按IP地址过滤

答:例如输入ip.addr==地址,只显示与指定IP通信的记录,

例如http.request.method == "GET" 可以针对HTTP的请求方式进行过滤,只显示发送GET

  1. 按端口过滤

  1. 按MAC地址过滤

5)采用逻辑运算过滤

and: 逻辑与

or: 逻辑或

not: 逻辑非

2.分析以太网数据帧的构成

(1)清空浏览器缓存,然后在浏览器中访问某个网页,同时用wireshark抓包,过滤掉网络层及以上的包,例如:在 Analyze->Enabled Protocols 中选择禁用 IPv4,便于找到链路层数据帧;附上抓获的以太网数据帧截图,写出其目的地址、源地址、上层协议、数据字段的某些标识性 ASCII 码字符等内容。

(2)在cmd窗口清空arp缓存,然后ping本局域网上的某个活跃主机,抓包,抓包时过滤掉网络层及以上的包,找出其中查找被ping主机对应 MAC 地址的 ARP 请求与响应报文。

1)附上该ARP响应报文截图,分析该ARP响应报文的内容,是谁向谁请求其IP地址对应的mac地址。

  1. 附上以太网mac帧的详细内容截图,并根据截图,分析其目的地址、源地址、上层协议等内容。

(3)浏览某个网页,用wireshark抓包,获取http协议下的数据包,找出请求与响应的数据包并截图,以太网帧中本机的地址与目标主机的地址,并说明http信息与以太网帧之间的关系

1)附上该报文截图,分析该报文的内容

2)附上以太网mac帧的详细内容截图,并根据截图,分析其目的地址、源地址、上层协议等内容。

五.实验思考:在实验中遇到了哪些问题,如何解决的,获取了什么启发。

了解不同过滤条件的作用,例如按协议类型、IP地址、协议模式和端口进行过滤。通过设置不同的过滤规则,可以捕获特定类型的数据包,从而更好地理解协议类型和通信模式。

以太网数据帧是数据链路层的基本单位,用于在物理链路上传输数据。数据链路层将高层协议数据封装在以太网帧的数据字段中,确保数据传输的可靠性。以太网报文由目标MAC地址、源MAC地址和数据字段组成。MAC地址是设备的唯一标识符,用于在局域网中定位设备。可以根据数据包分析出内容。

实验五 网络层协议分析

一、实验目的

了解网络协议分析软件的过滤方式和原则,包括:按协议类型过滤,按IP地址过滤,按协议模式过滤,按端口过滤等,通过设置不同的过滤条件,熟悉协议类型、端口、协议等概念;分析以太网数据帧的构成,数据链路层将不可靠的物理层转变为一条无差错的链路,涉及的数据单位是帧(frame),高层的协议数据被封装在以太网帧的数据字段发送。使用网络协议分析软件可以捕获各种协议数据包,通过查看这些协议数据包中数据链路帧的各字段可以分析网络协议的内部机制。

二、实验内容

  1. 掌握网络协议分析软件的常用过滤规则使用方法;
  2. 分析ICMP协议报文

二、实验原理

ICMP协议是IP协议的补充,用于IP层的差错报告、拥塞控制、路径控制以及路由器或主机信息的获取。ICMP报文由首部和数据段组成。首部为定长的8个字节,前4个字节是通用部分,后4个字节随报文类型的不同有所差异。ICMP报文的一般格式如图所示。

补充ICMP协议的几种报文及其含义。

ICMP 协议的报文分为两大类:差错报告报文和查询报文。

差错报告报文是用于通知发送方数据报在传输过程中出现了错误或被丢弃的原因。常见的差错报告报文有:

  • 目的站不可达报文:当路由器或主机无法将数据报发送到目的地时,会返回这种报文,代码字段指示具体的不可达原因,如网络不可达、主机不可达、协议不可达、端口不可达等。
  • 数据报超时报文:当数据报在网络中被循环转发或分片重装超时时,会返回这种报文,代码字段指示具体的超时原因,如生存时间(TTL)为零或分片重装超时。
  • 源站抑制报文:当路由器或主机因为拥塞而丢弃数据报时,会返回这种报文,建议发送方降低发送速率。
  • 重定向报文:当路由器发现有更好的路由路径时,会返回这种报文,建议发送方改变路由选择。
  • 数据报参数错误报文:当数据报的首部字段有错误或不支持时,会返回这种报文,指针字段指示出错的位置。

查询报文是用于测试或诊断网络性能的报文。常见的查询报文有:

  • 回送请求或回答报文:用于检测两个网络设备之间是否可以相互通信,发送方发送回送请求报文,接收方返回回送回答报文,数据区域的内容应该相同。
  • 时间戳请求或回答报文:用于测量两个网络设备之间的往返时间,发送方发送时间戳请求报文,接收方返回时间戳回答报文,数据区域包含发送、接收和回答的时间戳。

三、实验设备

计算机以太网环境及Wireshark网络协议分析软件Version 3.6.19

四、实验内容与步骤

1. 分析ICMP协议

  1. 利用Ping程序产生ICMP分组。Ping向因特网中的某个特定主机发送特殊的探测报文并等待表明主机在线的回复。具体做法:
  • 启动打开网络协议分析软件(Wireshark),在Capture中选择网卡。Capture filter字段填入:“icmp”,单击“Start”按钮开始网络数据包捕获。

  • 打开Windows命令提示符窗口(Windows Command Prompt),输入“ping –n 10 hostname” ,其中“-n 10”指明应返回10条ping信息,附上执行结果图。

  • 当ping程序终止时,停止Wireshark 分组俘获。
  1. 停止分组俘获后,附上wireshark的界面:

  1. 截取其中ICMP协议的详细信息

  1. 观察这个ICMP分组,分析属于ICMP的哪种分组。

此ICMP分组为Echo (ping) request

  1. 查看ping请求分组,ICMP的type 和code是多少?这个ICMP 包包含了哪些其他的字段?Checksum、sequence number 和identifier 字段的值各为多少?

Type: 8

Code: 0

  1. 查看相应的ICMP响应信息,ICMP的type 和code又是多少?这个ICMP 包包含了哪些其他的字段?Checksum、sequence number 和identifier 字段的值各为多少?

  1. 用Tracert程序俘获ICMP分组。

Tracert能够映射出通往特定的因特网主机途径的所有中间主机。源端发送一串ICMP分组到目的端。发送的第一个分组时,TTL=1;发送第二个分组时,TTL=2,依次类推。路由器把经过它的每一个分组TTL字段值减1。当一个分组到达了路由器时的TTL字段为1时,路由器会发送一个ICMP错误分组(ICMP error packet)给源端。

  • 启动Window 命令提示符窗口
  • 启动Wireshark分组嗅探器,开始分组俘获。
  • 在cmd窗口,运行Tracert命令, 附上执行结果图

  • 当Tracet 程序终止时,停止分组俘获,附上捕获ICMP分组的截图

  1. 查看ICMP echo 分组 ,是否这个分组和前面使用 ping命令的ICMP echo 一样?

Tracert 64字节,ping 32字节

  1. 查看ICMP错误分组,它比ICMP echo 分组包括的信息多。ICMP错误分组比ICMP echo 分组多包含的信息有哪些?

IP 数据报的首部以及 TCP 协议的端口号

  1. 实验思考:在实验中遇到了哪些问题,如何解决的,获取了什么启发。

Ping是用来测试网络连通性,发出Ping命令主机会发出连续的测试数据包到网络中,ping采用的是icmp协议。ICMP协议主要是Type和Code来识别,

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

20222406 2024-2025-1 《网络与系统攻防技术》实验四实验报告

20222406 2024-2025-1 《网络与系统攻防技术》实验四实验报告 1.实验内容 恶意代码分析、IDA Pro 静态或动态分析可执行文件、自制恶意代码样本 rada 分析、Windows 2000 系统被攻破后的取证分析。 2.实验过程 2.1 恶意代码文件类型标识、脱壳与字符串提取 对提供的rada恶意代码…

signal协议

密码学专题训练 实 验 报 告 实验名称 实验二 signal协议 实验二 signal协议实验目的基于signal协议制作一个通信系统二、实验原理2.1简介Signal是一种私人通信平台,它使用Signal Protocol作为加密协议来保护用户的信息安全和隐私。Signal Protocol是一种…

【backdoor attack】 POISONED FORGERY FACE: TOWARDS BACKDOOR ATTACKS ON FACE FORGERY DETECTION

一、研究动机 ​ 虽然目前在图像识别任务中有许多有效后门攻击方法,直接扩展到人脸伪造检测领域却存在着一定的问题,例如存在一些伪造人脸检测的算法(SBI, Face X-ray)是通过真实图像合并转换为负样本进行模型训练的,这种情况下会导致:Backdoor label conflict[!NOTE] 存…

# 学期(如2024-2025-1) 学号(如:20241402) 《计算机基础与程序设计》第六周学习总结

学期(如2024-2025-1) 学号(如:20241402) 《计算机基础与程序设计》第六周学习总结 作业信息这个作业属于哪个课程 <班级的链接>(如2024-2025-1-计算机基础与程序设计)这个作业要求在哪里 <作业要求的链接>(如2024-2025-1计算机基础与程序设计第一周作业)这个…

C#/.NET/.NET Core技术前沿周刊 | 第 11 期(2024年10.21-10.31)

前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录、追踪C#/.NET/.NET Core领域、生态的每周最新、最实用、最有价值的技术文章、社区动态、优质项目和学习资源等。让你时刻站在技术前沿,助力技术成长与视野拓宽。欢迎投稿、推荐或自荐优质文章、项目、学习资源等…

10种数据预处理中的数据泄露模式解析:识别与避免策略

在机器学习教学实践中,我们常会遇到这样一个问题:"模型表现非常出色,准确率超过90%!但当将其提交到隐藏数据集进行测试时,效果却大打折扣。问题出在哪里?"这种情况几乎总是与数据泄露有关。 当测试数据在数据准备阶段无意中泄露(渗透)到训练数据时,就会发生数据泄露…

【填算符】(log 值域的做法)

比赛在这里呢 填算符 下发题解说的神马东西,赛时根本想不到 讲一个赛时想得到的 \(O(n\log 值域)\) 的思路,很好理解 我们处理出二进制下每一位上的 1 的最后一次出现的位置,将第 \(i\ (i\in[0,60])\) 位上的 1 最后一次出现的位置记作 \(pos_i\) 同时我们设 \(H=n-k-1\) 为…

CF573D Bear and Cavalry

原题链接 比较简单的 \(\text{dp}\) 题。 看见题目的 \(\sum w_ih_i\) 式子,很容易想到排序不等式,所以我们先对 \(w,h\) 排序,然后分情况讨论。若 \(w_i,h_i\) 对应的编号不相等,肯定是把它们配对。若 \(w_i,h_i\) 对应的编号相等,考虑这样的连法:若是这种情况也不合法,…

多校 A 层冲刺 NOIP2024 模拟赛 17

难度 ★★★★☆多校A层冲刺NOIP2024模拟赛17 T1 网格 签到题 注意到 \(+\) 与 \(\times\) 由于优先级其实是分开的,所以可以考虑每到达一个 \(+\) 计算一次贡献(乘上一个组合数),然后将前置贡献重新赋值为方案数,DP 只需考虑连续 \(\times\) 段即可。 时间复杂度 \(O(nm)…

图吧垃圾佬理解的早期国产芯片历史(龙芯中科和同行的恩怨解析)

额……老铁们,我图吧老捡国产芯片垃圾的了。最近有人问咱关于国产芯片发展故事的事,所以咱简单答疑了一下顺带做了个记录的整理,简单看下情况。 水友: 就是我有个同学,已经魔怔了,现在已经在同学群里说天玑吊打国产芯片了 前几天说的是吊打9950x… 垃圾佬: 吊打国产芯片…

Apple Safari 18 - macOS 专属浏览器 (独立安装包下载)

Apple Safari 18 - macOS 专属浏览器 (独立安装包下载)Apple Safari 18 - macOS 专属浏览器 (独立安装包下载) 适用于 macOS Sonoma 和 macOS Ventura 的 Safari 浏览器 18 请访问原文链接:https://sysin.org/blog/apple-safari-18/ 查看最新版。原创作品,转载请保留出处。 作…

记录一次大炮打蚊子的modbustcp通讯连接异常问题

一.问题描述 某种场景下,安装有Ubuntu22系统的设备A开机后,1-2min内设备E遥控器不能遥控设备A移动,之后恢复正常。 二.设备组网设备A和设备C之间使用modbustcp协议进行通讯。 三.首战 3.1 查看日志 放开该端口的modbus查询帧日志打印,发现整体的帧格式,发现返回了modbus数…