【计算机网络】WireShark和简单http抓包实验

一:实验目的

1:熟悉WireShark的安装流程和界面操作流程。

2:学会简单http的抓取和过滤,并分析导出结果。

二:实验仪器设备及软件

硬件: Windows 2019操作系统的计算机等。

软件:WireShark、记事本等。

三:实验方案

首先打开WireShark软件,进入外网捕获界面,启动捕获。

然后通过浏览器进入http:// gaia.cs.umass.edu这个域名地址,在html页面中进行多次点击和跳转操作。

最后在WireShark中停止捕获,保存捕获到的报文,并以http条件进行筛选,查看所有与http协议有关的报文内容,回答相应的问题。

四:实验步骤

1)  打开浏览器。

2)  打开 WireShark 并且在捕获选项选择合适的网卡。

3)  开始进行抓包操作,并且在浏览器中打开示例网页。

4)  停止抓包并且分析抓包结果。

5)  在过滤器选择 http 过滤,并且查看过滤结果。

五:实验结果及分析

1列出在协议列中出现的 3 种不同的协议。

第1种:HTTP,如下图所示。

第2种:TCP,如下图所示。

第3种:ARP,如下图所示。

2:从发送 HTTP GET 消息到收到 HTTP OK 回复需要多长时间?

发送GET / HTTP/1.1消息到收到HTTP/1.1 200 OK的过程,如下图所示。

由此可知,其时间间隔为159.562172 - 159.335411 = 0.226761秒。

3:gaia.cs.umass.edu(也称为 wwwnet.cs.umass.edu)的互联网地址是什么? 您的计算机的 Internet 地址是什么?

由下图可知,目的IP地址为128.119.245.12,对应gaia.cs.umass.edu的互联网地址。

源IP地址为192.168.0.108,对应本地计算机的互联网地址。

通过ping方式,验证该域名地址,如下图所示。

4:你的浏览器是否运行 HTTP 版本 1.0 或 1.1?服务器运行的是什么版本的HTTP?

由下图可知,在POST报文中,Request Version是1.1,因此浏览器运行HTTP版本1.1。

由下图可知,在回复报文中,Response Version是1.1,因此服务器运行HTTP版本1.1。

5:你的浏览器接收哪些语言?

浏览器接收标记语言HTML。如下图所示,可以看到content-type为html。

浏览器接收数据格式语言JSON。如下图所示,可以看到content-type为json。

浏览器接收标记语言XML。如下图所示,可以看到content-type为xml。

6:从服务器返回到浏览器的状态代码是什么?

    【1】成功状态码。如下图所示,服务器返回到浏览器的状态代码是200 OK,表示请求成功,服务器已成功处理请求。

【2】重定向状态码。如下图所示,服务器返回到浏览器的状态代码是301 Moved Permanently,表示请求的资源已被永久移动到新位置。

【3】客户端错误状态码。如下图所示,服务器返回到浏览器的状态代码是404 Not Found,表示请求的资源在服务器上找不到。

7:在服务器上最后修改的 HTML 文件是什么时候?

由下图可知,Last-Modified是2016年3月1日,表示在服务器上最后修改的 HTML 文件的时间。

8:浏览器返回了多少 bytes 的内容?

由下图可知,浏览器返回了2651字节的内容。

9:是否在 HTTP GET 中看到“IF-MODIFIED-SINCE”行?

是。如下图所示,出现了If-Modified-Since: Tue, 01 Mar 2016 18:57:50 GMT。

在HTTP GET请求中,If-Modified-Since是一种请求头字段,用于告诉服务器只有在请求的资源自指定日期和时间之后已被修改时,才返回该资源。这是浏览器和服务器之间的一种缓存协商机制,用于优化网络带宽和提高加载速度。

10:多个响应HTTP GET,服务器返回的 HTTP 状态代码和短语分别是什么?为什么不同?304 Not Modified什么意思?

多个HTTP GET的返回状态代码和短语,如下图所示。可以看到有200 OK、301 Moved Permanently、404 Not Found。

HTTP状态代码不同是因为它们表示不同类型的响应,反映了服务器对请求资源的处理结果。

304 Not Modified 状态码的含义是服务器告知客户端,请求的资源自上次请求以来没有被修改,因此客户端可以继续使用其缓存的版本,而无需重新下载。

11:对物理层的数据帧进行解析。

一个示例的物理层的数据帧,如下图所示。

可以看到,该数据帧的编号是42544,帧的总长度为486字节(3888比特),实际捕获的帧长度也为486字节(3888比特)。

捕获数据的网络接口的ID为0号,接口名称为\Device\NPF_{60116A39-C338-4C66-A5CF-5BBC6E88B657},接口描述为外网。

数据帧使用以太网封装类型。同时展示了到达时间、UTC到达时间等内容。

此数据包的时间偏移是0秒,与上一个捕获帧之间的时间差是0.00046秒,与上一个显示帧之间的时间差是63.029081秒,自参考帧或第一个帧以来的时间是159.335411秒。

该帧未被标记,且未被忽略。该帧中包含的协议列表,从最低层到最高层依次为:eth以太网、ethertype以太网类型字段、ip互联网协议、tcp传输控制协议、http超文本传输协议。用于该帧的着色规则名称是HTTP。用于该帧的着色规则字符串为http || tcp.port == 80 || http2。http:该帧包含HTTP协议的数据。tcp.port == 80:该帧的TCP端口是80,通常用于HTTP流量。http2:该帧包含HTTP/2协议的数据。

12:启动WireShark,自行设置过滤条件,重做实验一,观察能否抓到数据并进行分析。

能抓到数据,如下图所示。

如下图所示,源地址fe80::cc2a:d980:500d正在与目的地址fe80::dda:3845:7b8f:dbed进行大量的数据传输。在传输较大数据块的过程中,使用分段传输技术(Segmented Transmission)将数据分成多个TCP段,每个段都有一个序列号和确认号。

如下图所示,前面TCP的内容与上图类似。最后一个报文表示从源地址 fe80::dda:3845:7b8f:dbed 到目的地址 fe80::cc2a:d980:500d 的SMB2写入响应报文。SMB2协议通常用于文件共享和网络通信,这个写入响应报文表示文件写入操作已完成。

六:实验总结及体会

1:从服务器返回到浏览器的状态代码(HTTP状态码)用于指示HTTP请求的结果。这些状态代码由三位数字组成,每个数字有特定的含义。

2:常见的状态代码类别如下:

【1】1xx(信息性状态码):

  1. 100 Continue:继续发送请求的剩余部分。
  2. 101 Switching Protocols:服务器将遵从客户的请求转换到另外一种协议。

【2】2xx(成功状态码):

  1. 200 OK:请求成功,服务器已成功处理请求。
  2. 201 Created:请求成功且资源已被创建。
  3. 204 No Content:请求成功,但没有返回内容。

【3】3xx(重定向状态码):

  1. 301 Moved Permanently:请求的资源已被永久移动到新位置。
  2. 302 Found:请求的资源临时从不同的URI响应请求。
  3. 304 Not Modified:资源未被修改,客户端可以继续使用缓存的版本。

【4】4xx(客户端错误状态码):

  1. 400 Bad Request:请求无效或有语法错误。
  2. 401 Unauthorized:请求要求身份验证。
  3. 403 Forbidden:服务器理解请求但拒绝执行。
  4. 404 Not Found:请求的资源在服务器上找不到。

【5】5xx(服务器错误状态码):

  1. 500 Internal Server Error:服务器遇到未预料的情况,无法完成请求。
  2. 501 Not Implemented:服务器不支持请求的功能。
  3. 502 Bad Gateway:服务器作为网关或代理,从上游服务器收到无效响应。
  4. 503 Service Unavailable:服务器暂时无法处理请求,可能是由于过载或维护。

3:Server Hello 是 TLS 握手过程中的一个重要步骤。在这个阶段,服务器向客户端发送一个“Hello”消息,其中包含了服务器选择的加密算法、会话ID、服务器随机数以及服务器的证书等信息。

4:Change Cipher Spec 消息是TLS协议中的一个信号,表明从这条消息之后,双方将使用协商好的加密算法和密钥进行通信。

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

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

相关文章

草图也能秒变完整画稿?三星 Galaxy Z Fold6 、Flip6硬件升级

在科技的不断进步中,智能手机行业的竞争愈发激烈,各大厂商纷纷推出创新产品以吸引消费者。 最近,三星在 Galaxy Unpacked 发布会上就带来了 Galaxy Z Fold6 和 Flip6 两款手机新品,这两款设备不仅在硬件上有所突破,更…

docker dotnet-dump离线部署

1.下载指定dotnet版本的dotnet-dump 示例地址: https://www.nuget.org/packages/dotnet-dump/3.1.141901#dependencies-body-tab 我本地测试的是netcore 3.1 2. 在本地解压 将文件解压出来。看到any目录,能看到我们要用的dotnet-dump文件 3. 将tools/netcoreapp2.…

C++文件系统操作6 - 跨平台实现查找指定文件夹下的特定文件

1. 关键词 C 文件系统操作 查找指定文件夹下的特定文件 跨平台 2. fileutil.h #pragma once#include <string> #include <cstdio> #include <cstdint> #include "filetype.h" #include "filepath.h"namespace cutl {/*** brief The fi…

【吊打面试官系列-Dubbo面试题】服务调用是阻塞的吗?

大家好&#xff0c;我是锋哥。今天分享关于 【服务调用是阻塞的吗&#xff1f;】面试题&#xff0c;希望对大家有帮助&#xff1b; 服务调用是阻塞的吗&#xff1f; 默认是阻塞的&#xff0c;可以异步调用&#xff0c;没有返回值的可以这么做。 Dubbo 是基于 NIO 的非阻塞实现…

Axious的请求与响应

Axious的请求与响应 1.什么是Axious Axious是一个开源的可以用在浏览器和Node.js的异步通信框架&#xff0c;它的主要作用就是实现AJAX异步通信&#xff0c;其功能特点如下&#xff1a; 从浏览器中创建XMLHttpRequests ~从node.js创建Http请求 支持PromiseAPI 拦截请求和…

深入解析AI技术:从深度学习到GPT大模型的全面探索

深入解析AI技术&#xff1a;从深度学习到GPT大模型的全面探索 引言 在21世纪的科技浪潮中&#xff0c;人工智能&#xff08;AI&#xff09;无疑是最引人注目的领域之一。从简单的语音助手到复杂的自动驾驶系统&#xff0c;AI正以前所未有的速度改变着我们的世界。而深度学习&a…

【Python机器学习】朴素贝叶斯——使用朴素贝叶斯进行文档分类(理论基础)

机器学习的一个重要应用就是文档的自动分类。在文档分类中&#xff0c;整个文档&#xff08;比如电子邮件&#xff09;是实例&#xff0c;而电子邮件中的某些元素则构成特征。虽然电子邮件是一种会不断增加的文本&#xff0c;但我们同样也可以对新闻报道、用户流言、公文等其他…

如何获得一个MySQL 5.7 社区版数据库

已有一个OCI计算实例&#xff0c;Oracle Linux 7.9&#xff0c;1OCPU&#xff0c;16G内存&#xff1a; $ cat /etc/redhat-release Red Hat Enterprise Linux Server release 7.9 (Maipo)$ lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte O…

jdk版本区别

JDK&#xff08;Java Development Kit&#xff09;是 Java 开发工具包&#xff0c;它包括了 Java SE&#xff08;Standard Edition&#xff09;、编译器、调试器和其他开发工具。Oracle 公司是 JDK 的主要供应商&#xff0c;它提供了多个版本的 JDK&#xff0c;每个版本都有自己…

C++之栈和队列使用及模拟实现

目录 栈的使用 队列的使用 栈的模拟实现 队列的模拟实现 deuqe容器介绍 在C语言中我们已经学习了栈和队列的相关性质&#xff0c;今天我们主要来学习C语法中栈和队列的相关概念。 栈的使用 在C中栈是一种容器适配器&#xff0c;在其内部适配了其它的容器&#xff0c;其相…

【数据结构】——双链表的实现(赋源码)

双链表的概念和结构 双链表的全称叫做&#xff1a;带头双向循环链表 它的结构示意图如下 注意&#xff1a;这⾥的“带头”跟前⾯我们说的单链表的“头结点”是两个概念&#xff0c;实际前⾯的在单链表阶段称呼不严谨&#xff0c;但是为了读者们更好的理解就直接称为单链表的头…

【计算机毕设论文】基于SpringBoot成绩管理系统

&#x1f497;博主介绍&#xff1a;✌全平台粉丝5W,高级大厂开发程序员&#x1f603;&#xff0c;博客之星、掘金/知乎/华为云/阿里云等平台优质作者。 【源码获取】关注并且私信我 感兴趣的可以先收藏起来&#xff0c;同学门有不懂的毕设选题&#xff0c;项目以及论文编写等相…

学习测试13-车载测试

车的发展 1&#xff0c;动力 VCU 是实现整车控制决策的核心电子控制单元 汽车驱动控制:车都是有VCU发出&#xff0c;驱动控制&#xff0c;电池&#xff0c;电机都是执行器。比如: 汽车启动:启动&#xff0c;发车&#xff0c;VCU发送指令到齿轮这些&#xff0c;开始转动启动&a…

C语言程序设计15

程序设计15 问题15_1代码15_1结果15_1 问题15_2代码15_2结果15_2 问题15_3代码15_3结果15_3 问题15_1 在 m a i n main main 函数中将多次调用 f u n fun fun 函数&#xff0c;每调用一次&#xff0c;输出链表尾部结点中的数据&#xff0c;并释放该结点&#xff0c;使链表缩短…

Shell脚本学习教程(菜鸟从入门到精通)

前言 这本教程是写给那些在UNIX环境下发现必须写些Shell 脚本&#xff0c;以利于工作进行的计算机用户与软件开发人员。例如&#xff0c;你可能是正在念计算科学的学生&#xff0c;手上有学校给你的第一个UNIX系统账号&#xff0c;你想知道在UNIX下更多的东西&#xff0c;例如…

T-CNN——利用张量 CNN 增强缺陷检测

1. 摘要 缺陷检测是制造业中一个重要而具有挑战性的问题。本研究引入了张量卷积神经网络&#xff08;T-CNN&#xff09;&#xff0c;并在罗伯特-博世制造工厂生产的超声波传感器组件缺陷检测的实际应用中验证了其性能。与同类 CNN 模型相比&#xff0c;作者的量子启发 T-CNN 通…

飞凌嵌入式亮相第七届全国大学生嵌入式芯片与系统设计竞赛北部赛区决赛现场

7月20日&#xff0c;2024年第七届全国大学生嵌入式芯片与系统设计竞赛北部赛区决赛在保定大学科技园正式开赛。本次大赛由全国大学生嵌入式芯片与系统设计竞赛组委会、北部赛区执委会主办&#xff0c;保定国家大学科技园与北京邮电大学联合承办&#xff0c;飞凌嵌入式作为本土嵌…

chrome浏览器驱动(所有版本)

chrome浏览器驱动 114之前版本 https://chromedriver.storage.googleapis.com/index.html 125以后 125以后版本下载链接在此&#xff0c;只有后面status是绿色对勾的才可以下载&#xff0c;驱动大版本一致就可以使用&#xff0c;不需版本号一模一样&#xff1b;下载所需版本只…

谨防评论插件暴露服务器 IP

不少评论区插件支持邮件推送&#xff0c;当有新评论的时候会发送邮件&#xff0c;这样就能及时知道有评论了。例如我使用的 Twikoo 就支持邮件推送&#xff08;还有其他方式&#xff0c;这里不展开&#xff09;。 但是&#xff0c;这个会暴露真实的服务器 IP。为此&#xff0c…

与Zoom集成获取会议开始和结束事件

一、注册一个Zoom免费帐号&#xff08;需要在国外注册&#xff0c;国内不允许&#xff09; 二、进入Zoom应用市场创建一个应用 点击”发展”&#xff08;开发&#xff09;菜单&#xff0c;选择构建应用。 同意条款&#xff1a; 选择应用类型&#xff1a; 设置应用信息&#x…