当前位置: 首页 > news >正文

计算机网络实验(二):Wireshark网络协议分析

一、实验名称:Wireshark网络协议分析

二、实验原理

HTTP协议分析 

1.超文本传输协议(Hypertext Transfer Protocol, HTTP)是万维网(World Wide Web)的传输机制,允许浏览器通过连接Web服务器浏览网页。目前在大多数组织中,HTTP流量在网络中所占的比率是最高的。每一次使用Google搜索、连接Twitter、发一条微博,或者在ESPN上查看肯塔基大学的篮球比分,你都会用到 HTTP。我们不会去看HTTP传输的数据包结构,因为有着不同目的的数据包的内容差别会很大。这里,我们来看 HTTP的实际应用。

2.HTTP浏览:HTTP常被用来浏览Web服务器上使用浏览器访问的网页。

3.HTTP的工作方式并不复杂,先由客户端向服务器发起一个请求,再由服务器回复一个响应。根据不同需要,客户端发送的请求会用到不同的方法,由GET、POST、PUT和HEAD等,比如在网站上登录账号时就可能用到POST方法。

 DNS协议分析

1. DNS查询:客户端向DNS服务器发送一个查询,服务器在响应中提供所请求的信息。

2.DNS区域传送:出于冗余备份的需要,在两台设备之间传送区域数据。

3.DNS递归:由于互联网的DNS结构是层级式的,因此为了能够回答客户端提交的查询,DNS服务器必须能够彼此通信。我们的内部DNS服务器知道本地局域网服务器的名字和IP地址的映射,但不太可能知道Google或者Dell的IP地址。当DNS服务器需要查找一个IP地址时,它会代表发出请求的客户端向另一个DNS服务器进行查询。实际上,这个DNS服务器与客户端的行为相同。这个过程叫作递归查询。

DHCP协议分析

1.DHCP 是一个应用层协议,负责让设备能够自动获取 IP 地址(以及其他重要 的网络资源,比如 DNS 服务器和路由网关的地址)。今天大多数的 DHCP 服务器 都向客户端提供其他的一些参数,比如网络上的默认网关和 DNS 服务器的地址。

2.DHCP续租过程:发现、提供、请求、确认。通过数据包可以查看到DHCP续租过程的工作流程。

3.DHCP v6的SARR过程:发起,公告,请求,回复。通过数据包可以查看到此过程服务器与客户端通信的具体流程和信息。

DHCPv6和DHCP的数据包结构有很大区别,但是在功能实现思路上是一致的。这个过程仍然包括DHCP服务器发现步骤和正式的配置信息获取步骤。这些事件通过客户端和服务器之间交互数据包中的事务ID进行关联。传统的DHCP机制不支持IPv6地址分配,因此,如果你的设备能够从网络中的某个服务器自动获取IPv6地址,则这表明你的网络中已经在运行DHCPv6服务。如果你想要进一步比较DHCP和DHCPv6,我们建议使用抓包工具在客户端和服务器端逐步进行分析。

三、实验目的

HTTP协议分析

目的1:理解高层协议HTTP的数据包分析

DNS协议分析

目的1:理解高层协议DNS的数据包分析

DHCP协议分析

目的1:理解高层协议DHCP的数据包分析

四、实验内容:

HTTP协议分析

对C:\数据包\ppa3ecaptures_updated\ppa3ecaptures下的数据包进行分析:

  1. 分析捕获文件http_google.pcap,了解HTTP的浏览过程。
  2. http_post.pcap文件分析,了解HTTP传送数据。

DNS协议分析

对C:\数据包\ppa3ecaptures_updated\ppa3ecaptures下的数据包进行分析:

  1. 分析捕获文件dns_query_response.pcap,对DNS查询过程进行进一步认识;
  2. 分析数据包dns_recursivequery_client.pcap,了解DNS递归过程;
  3. 分析dns_axfr.pcap数据包,了解DNS区域传送过程。

DHCP协议分析

对C:\数据包\ppa3ecaptures_updated\ppa3ecaptures下的数据包进行分析:

  1. 分析dhcp_nolease_initialization.pcapng数据包,对DHCP续租过程进行理解。
  2. 分析dhcp6outlease acquisition.pcapng数据包,对DHCP v6的SARR过程进行分析了解。

五、实验步骤:

HTTP协议分析

DNS协议分析

DHCP协议分析

六、实验数据及结果分析:

实验数据

1. 背景和目的明确:实验文档和操作视频指导中明确了实验的背景和目的,即使用Wireshark软件对虚拟机内存储的数据包进行分析。

2. 截图一致:所捕获的截图数据与实验文档中的案例一致,成功地复现了实验中的情景,保证了数据的准确性。

3. 结果与预期相符:实验数据处于正常区间范围,实验结果与预期结果相符,没有出现异常情况。

4. 网络协议解析:成功使用Wireshark软件对数据包进行了解读和分析,包括识别不同的网络协议、分析数据包的源和目标地址、端口号等关键信息。

结果分析

1. HTTP网络协议分析与解读:成功分析和解读了HTTP网络协议,包括对HTTP请求和应答行为的理解。

2. DNS网络协议分析与解读:完成了对DNS网络协议的分析与解读,包括了DNS查询和响应的解析。

3. DHCP网络协议分析与解读:成功分析和解读了DHCP网络协议,包括DHCP请求和分配IP地址的过程。

4. 实验数据正常范围:实验数据处于正常范围内,实验操作没有出现异常情况,数据符合预期。

七、实验结论:

1. 了解与熟悉Wireshark:

   在本次实验中,我们着重对Wireshark网络数据包分析软件进行了解与熟悉。

   包括掌握Wireshark软件的基本功能和操作界面。

2. 掌握Wireshark各种操作:

   我们通过实验进一步掌握了Wireshark软件中的各种操作方法。

   这些操作方法涵盖了捕获、解析和分析网络数据包的技能。

3. 使用Wireshark工具:

   在实验中,我们将Wireshark作为工具,用它来进行网络数据包的分析。

4. 读取虚拟机中的数据包:

   我们使用Wireshark成功读取了虚拟机中的数据包。

   这意味着我们能够分析虚拟机中的网络流量,进一步了解网络协议的工作方式。

5. 对网络协议内容进行读取与分析:

   通过Wireshark,我们能够对网络协议内容进行读取和分析。

   包括识别不同的网络协议、分析数据包的源和目标地址、端口号等关键信息。

八、总结及心得体会:

在本次计算机网络实验中,我们通过使用Wireshark网络数据包分析软件,深入了解了HTTP、DNS和DHCP等网络协议的工作原理和数据包结构。以下是我们的四点总结和心得:

1、Wireshark的应用:本次实验让我们更加熟悉了Wireshark这一强大的网络分析工具。Wireshark能够捕获和解析网络数据包,帮助我们深入理解网络通信过程。

2、HTTP协议分析:我们成功分析了HTTP协议,包括HTTP请求和应答的过程。这有助于我们理解Web浏览和数据传输是如何在HTTP协议下进行的。

3、DNS协议分析:通过分析DNS协议,我们了解了DNS查询、递归查询和区域传送等不同方面。

4、DHCP协议分析:我们深入研究了DHCP协议和DHCPv6协议,包括续租过程和SARR过程。这让我们理解了如何自动获取IP地址和其他网络资源。

相关文章:

计算机网络实验(二):Wireshark网络协议分析

一、实验名称:Wireshark网络协议分析 二、实验原理 HTTP协议分析 1.超文本传输协议(Hypertext Transfer Protocol, HTTP)是万维网(World Wide Web)的传输机制,允许浏览器通过连接Web服务器浏览网页。目…...

Spark内核解析-数据存储5(六)

1、Spark的数据存储 Spark计算速度远胜于Hadoop的原因之一就在于中间结果是缓存在内存而不是直接写入到disk,本文尝试分析Spark中存储子系统的构成,并以数据写入和数据读取为例,讲述清楚存储子系统中各部件的交互关系。 1.1存储子系统概览 …...

ASP.NET Core高级之认证与授权(一)--JWT入门-颁发、验证令牌

阅读本文你的收获 了解认证和授权的作用了解在ASP.NET Core中实现身份认证的技术都有哪些学习基于JWT认证并学会颁发和验证JWT令牌 一、重要的前置概念 在一个系统中,不是所有的功能和资源都能够被自由地访问,比如你存在银行系统里面的资金&#xff0c…...

实例:NodeJS 操作 Kafka

本人是C#出身的程序员,c#很简单就能实现,有需要的可以加我私聊。但是就目前流行的开发语言,尤其是面向web方向应用的,我感觉就是Nodejs最简单了。下面介绍: 本文将会介绍在windows环境下启动Kafka,并通过n…...

AI实景无人直播创业项目:开启自动直播新时代,一部手机即可实现增长

在当今社会,直播已经成为了人们日常生活中不可或缺的一部分。无论是商家推广产品、明星互动粉丝还是普通人分享生活,直播已经渗透到了各行各业。然而,传统直播方式存在着一些不足之处,如需现场主持人操作、高昂的费用等。近年来&a…...

YOLOv5改进 | 损失函数篇 | InnerIoU、InnerSIoU、InnerWIoU、FocusIoU等损失函数

一、本文介绍 本文给大家带来的是YOLOv5最新改进,为大家带来最近新提出的InnerIoU的内容同时用Inner的思想结合SIoU、WIoU、GIoU、DIoU、EIOU、CIoU等损失函数,形成 InnerIoU、InnerSIoU、InnerWIoU等新版本损失函数,同时还结合了Focus和AIpha思想,形成的新的损失函数,其…...

构建高效PythonWeb:GraphQL+Sanic

1.1 简介:在当今快速发展的技术时代,Web应用的性能和灵活性变得越来越重要。在众多技术中,GraphQL和Sanic以其独特的优势脱颖而出。GraphQL,作为一个强大的数据查询语言,为前端和后端之间的通信提供了极大的灵活性。而…...

【通义千问】大模型Qwen GitHub开源工程学习笔记(5)-- 模型的微调【全参数微调】【LoRA方法】【Q-LoRA方法】

摘要: 训练数据的准备 你需要将所有样本放到一个列表中并存入json文件中。每个样本对应一个字典,包含id和conversation,其中后者为一个列表。示例如下所示: [{"id": "identity_0","conversations": [{"from": "user",…...

PCL 大地坐标转空间直角坐标(C++详细过程版)

目录 一、算法原理二、代码实现三、结果展示四、测试数据本文由CSDN点云侠原创,原文链接。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的爬虫与GPT生成的文章。 一、算法原理 二、代码实现 头文件及读取保存函数见:PCL 空间直角坐标转大地坐标(直接求解法C…...

Linux之Shell编程

shell是什么 shell是一个命令行解释器,他为用户提供一个向linux内核发送请求以便运行程序的界面系统级程序,用户可以用shell来启动,挂起,停止甚至编写一些程序。 shell脚本的执行方式 脚本格式要求 脚本以#!/bin/bash开头脚本需…...

Unity组件开发--传送点

本组件仅实现A传送点到B传送的功能,是可以双向传送的,如果只要单向传送,可以另外改脚本实现; 先看效果: unity组件传送点演示 1.传送组件shader是怎么写的:这种效果的实现方案 shader编辑器是这样的&#…...

vue结合Cesium加载gltf模型

Cesium支持什么格式? Cesium支持的格式包括:3D模型格式(如COLLADA、gITF、OBJ)、影像格式(如JPEG、PNG、GeoTIFF)、地形格式(如STL、Heightmap)、矢量数据格式(如GeoJSON…...

逆置算法和数组循环移动算法

元素逆置 概述:其实就是将 第一个元素和最后一个元素交换,第二个元素和倒数第二个元素交换,依次到中间位置。用途:可用于数组的移动,字符串反转,链表反转操作,栈和队列反转等操作。 逆置图解 …...

【MATLAB】数豆子

Matlab数豆子 创建一个变量来表示豆子的数量。例如,可以使用豆子数量 100;来表示有100颗豆子。 使用disp函数打印出豆子的数量。例如,可以使用disp([目前有 num2str(豆子数量) 颗豆子])来打印出当前豆子的数量。 进行豆子的计数操作。例如&#xff0c…...

QT C++中调用python脚本时,import第三方库失败问题解决

QT C中调用python脚本时,import第三方库失败问题解决 文章目录 QT C中调用python脚本时,import第三方库失败问题解决前言一、问题复现二、调试过程三、问题解决1 numpy问题解决2 matplotlib问题解决 四、补充说明五、参考资料 前言 项目需要&#xff0c…...

【AI视野·今日Robot 机器人论文速览 第七十期】Thu, 4 Jan 2024

AI视野今日CS.Robotics 机器人学论文速览 Thu, 4 Jan 2024 Totally 17 papers 👉上期速览✈更多精彩请移步主页 Daily Robotics Papers Many-Objective-Optimized Semi-Automated Robotic Disassembly Sequences Authors Takuya Kiyokawa, Kensuke Harada, Weiwei …...

Flutter中的布局组件介绍及使用

1. 引言 Flutter 是一款由 Google 开发的开源 UI 软件开发工具,可用于在单个代码库中构建漂亮、本机编译的应用程序。在 Flutter 中,布局是构建用户界面的核心部分之一。本文将介绍 Flutter 中的全部布局组件,以及它们的使用方式。 2. 基础…...

【面试高频算法解析】算法练习2 回溯(Backtracking)

前言 本专栏旨在通过分类学习算法,使您能够牢固掌握不同算法的理论要点。通过策略性地练习精选的经典题目,帮助您深度理解每种算法,避免出现刷了很多算法题,还是一知半解的状态 专栏导航 二分查找回溯(Backtracking&…...

认识Git

🌎初识Git 初识Git 什么是Git Git的安装       Centos平台安装Git       Ubuntu平台安装Git Git的基本操作       创建远程仓库       配置Git 认识工作区、暂存区与版本库       添加文件到暂存区       将暂存区文件提交至本…...

@RequestParam,@RequestBody和@PathVariable 区别

RequestParam,RequestBody和PathVariable 这三者是spring常见的接受前端数据的注解,那么他们分别是接受什么的前端数据呢? RequestParam:这个注解主要用于处理请求参数,尤其是GET请求中的查询参数和表单参数。它可以用…...

vue3组件传参

1、props: 2、自定义事件子传父 3、mitt任意组件通讯 4、v-model通讯(v-model绑定在组件上) (1)V2中父子组件的v-model通信,限制了popos接收的属性名必须为value和emit触发的事件名必须为input,所以有时会有冲突; 父组件: 子组件: (2)V3中:限制了popos接收的属性名…...

React16源码: React中创建更新的方式及ReactDOM.render的源码实现

React当中创建更新的主要方式 ReactDOM.render || hydrate 这两个API都是我们要把整个应用第一次进行渲染到我们的页面上面能够展现出来我们整个应用的样子的一个过程这是初次渲染 setState 后续更新应用 forceUpdate 后续更新应用 replaceState 在后续被舍弃 关于 ReactDOM…...

CentOS 7 系列默认的网卡接口名称

CentOS 7 系列默认的网卡接口是随机的,如果要修改网卡名称以 eth 开头,有两种方式。 方法一:安装系统时 在安装界面移动光标到 Install Centos 7.按 TAB 键 在出现的代码的末尾添加:net.ifnames0 biosdevname0.按下回车开始安装即…...

多文件上传

HTML中实现多文件上传是通过用<input type"file">元素的multiple属性&#xff0c;以下简单描述多文件上传的步骤 HTML表单准备&#xff0c;使用<input type"file">元素&#xff0c;并为其添加multiple属性&#xff0c;以允许用户选择多个文件…...

2024.1.7力扣每日一题——赎金信

2024.1.7 题目来源我的题解方法一 哈希表方法二 数组 题目来源 力扣每日一题&#xff1b;题序&#xff1a;383 我的题解 方法一 哈希表 使用哈希表记录ransomNote中所需字符的数量&#xff0c;然后遍历magazine并将哈希表中存在的对应的数量减一 时间复杂度&#xff1a;O(nm…...

C#中List<T>底层原理剖析

C#中List底层原理剖析 1. 基础用法2. List的Capacity与Count&#xff1a;3.List的底层原理3.1. 构造3.2 Add()接口3.3 Remove()接口3.4 Inster()接口3.5 Clear()接口3.6 Contains()接口3.7 ToArray()接口3.8 Find()接口3.8 Sort()接口 4. 总结5. 参考 1. 基础用法 list.Max() …...

Leetcode 3003. Maximize the Number of Partitions After Operations

Leetcode 3003. Maximize the Number of Partitions After Operations 1. 解题思路2. 代码实现 题目链接&#xff1a;10038. Maximize the Number of Partitions After Operations 1. 解题思路 这一题我看实际比赛当中只有72个人做出来&#xff0c;把我吓得够呛&#xff0c;…...

MySQL第一讲:MySQL知识体系详解(P6精通)

MySQL知识体系详解(P6精通) MySQL不论在实践还是面试中,都是频率最高的。本系列主要对MySQL知识体系梳理,将给大家构建JVM核心知识点全局知识体系,本文是MySQL第一讲,MySQL知识体系详解。 文章目录 MySQL知识体系详解(P6精通)1、MySQL学习建议1.1、为什么学习 MySQL?1.2、…...

逻辑回归简单案例分析--鸢尾花数据集

文章目录 1. IRIS数据集介绍2. 具体步骤2.1 手动将数据转化为numpy矩阵2.1.1 从csv文件数据构建Numpy数据2.1.2 模型的搭建与训练2.1.3 分类器评估2.1.4 分类器的分类报告总结2.1.5 用交叉验证&#xff08;Cross Validation&#xff09;来验证分类器性能2.1.6 完整代码&#xf…...

Python print 高阶玩法

Python print 高阶玩法 当涉及到在Python中使用print函数时&#xff0c;有许多方式可以玩转文本样式、字体和颜色。在此将深入探讨这些主题&#xff0c;并介绍一些print函数的高级用法。 1. 基本的文本样式与颜色设置 使用ANSI转义码 ANSI转义码是一种用于在终端&#xff0…...

响应式企业网站源码/百度软文推广怎么做

这篇文章主要介绍了MYSQL跨服务器同步数据详细过程,需要的朋友可以参考下项目需要&#xff0c;自己找了些资料和亲手配置过后&#xff1b;得出的经验分享。(1)主服务器修改配置文件/etc/my.cnf(my.ini)[mysqld]# mysql-bin是log文件的前缀&#xff0c;也可以使用其它的名字&…...

做网站的要faq怎么给/seo资讯网

Tri:7W DC:130以下可以跑30fps Tri:13W DC:230可以跑18fps 内存&#xff1a;一般380M&#xff0c;人多时达430M 模型制作面数规范&#xff1a; 1.主角&#xff1a;1000-1300,贴图不超过1张512*512 2.武器&#xff1a;300,不超过1张256*256 3.boss:1000-1500&#xff0c…...

域名备案查询网站/市场营销的策划方案

先看效果个人觉的是比较好用的 1、视频播放器的左上角&#xff0c;按照操作步骤&#xff0c;选择使用direct3D 9 2、右击视频播放器&#xff0c;找到 选项 按钮&#xff0c;点击 3、弹框&#xff0c;点基本&#xff0c;多重处理方式中的 单个进程即选即播 4、选择 播放--“时…...

怎么建立一个简易的网站/比百度强大的搜索引擎

1.使用已经存在的网络安装资源安装软件 /etc/yum.repos.d/下不能有不可使用的源文件&#xff0c;如果有请备份删除 1.编辑文件&#xff1a;vim /etc/yum.repos.d/yum.repo ##文件名字随意&#xff0c;必须是repo结尾写入内容&#xff1a; [rhel7.3] ##给软件仓库名字…...

域名命名网站/怎么开网店新手入门

【LeetCode Weekly Contest 29】【2017/04/23】 第17周 Binary Tree Tilt (3)Array Partition I (6)Longest Line of Consecutive One in Matrix (8)Find the Closest Palindrome (10)第一题&#xff1a; 563. Binary Tree Tilt [easy] 别人写几行&#xff0c;我写的非常啰嗦。…...

免费单页网站/北京全网推广

首先建议楼主去看看官方的文档&#xff0c;这些内容都写的非常明白。首先看一下Oracle备份的概念&#xff1a;完全备份和增量备份1.Full backup:与whole database backup不同;它是从数据文件备份的那一刻,所有数据文件中包含数据的块的拷贝;1.rman拷贝了所有数据块到备份集,除了…...