• HNU计网实验:实验一 应用协议与数据包分析实验(使用Wireshark)


    最前面的话

    第一个实验挺简单的,不太记得当时具体干了什么…
    要不你们参考一下其他人的???

    实验目的

    通过本实验,熟练掌握Wireshark的操作和使用,学习对HTTP协议进行分析。

    实验内容

    1.HTTP 协议简介
    HTTP 是超文本传输协议 (Hyper Text Transfer Protocol)的缩写,用于WWW 服务。
    (1)HTTP 的工作原理
    HTTP 是一个面向事务的客户服务器协议。尽管HTTP 使用TCP 作为底层传输协议,但 HTTP 协议是无状态的。也就是说,每个事务都是独立地进行处理。当一个事务开始时,就 在web客户和服务器之间建立一个TCP 连接,而当事务结束时就释放这个连接。此外,客 户可以使用多个端口和和服务器 (80 端口)之间建立多个连接。其工作过程包括以下几个阶段。
    ① 服务器监听TCP 端口 80,以便发现是否有浏览器 (客户进程)向它发出连接请求;
    ② 一旦监听到连接请求,立即建立连接。
    ③ 浏览器向服务器发出浏览某个页面的请求,服务器接着返回所请求的页面作为响应。
    ④ 释放TCP 连接。
    在浏览器和服务器之间的请求和响应的交互,必须遵循HTTP 规定的格式和规则。
    当用户在浏览器的地址栏输入要访问的HTTP 服务器地址时,浏览器和被访问HTTP 服 务器的工作过程如下:
    ① 浏览器分析待访问页面的URL 并向本地DNS 服务器请求IP 地解析;
    ② DNS 服务器解析出该HTTP 服务器的IP 地址并将IP 地址返回给浏览器;
    ③ 浏览器与HTTP 服务器建立TCP 连接,若连接成功,则进入下一步;
    ④ 浏览器向HTTP 服务器发出请求报文 (含GET 信息),请求访问服务器的指定页面;
    ⑤ 服务器作出响应,将浏览器要访问的页面发送给浏览器,在页面传输过程中,浏览器会打开多个端口,与服务器建立多个连接;
    ⑥ 释放TCP 连接;
    ⑦ 浏览器收到页面并显示给用户。

    2)HTTP 报文格式
    HTTP 有两类报文:从客户到服务器的请求报文和从服务器到客户的响应报文。
    在这里插入图片描述
    在图1.1 中,每个字段之间有空格分隔,每行的行尾有回车换行符。各字段的意义如下:
    ① 请求行由三个字段组成:
    ·方法字段,最常用的方法为 “GET”,表示请求读取一个万维网的页面。常用的方法还有 “HEAD(指读取页面的首部)”和“POST(请求接受所附加的信息);
    ·URL 字段为主机上的文件名,这时因为在建立TCP 连接时已经有了主机名;
    ·版本字段说明所使用的HTTP 协议的版本,一般为 “HTTP/1.1”。
    ② 状态行也有三个字段:
    ·第一个字段等同请求行的第三字段;
    ·第二个字段一般为 “200”,表示一切正常,状态码共有41 种,常用的有:301 (网站已转移),400(服务器无法理解请求报文),404(服务器没有锁请求的对象)等;
    ·第三个字段时解释状态码的短语。
    ③ 根据具体情况,首部行的行数是可变的。请求首部有Accept 字段,其值表示浏览器 可以接受何种类型的媒体;Accept-language,其值表示浏览器使用的语言;User-agent 表明可用的浏览器类型。响应首部中有Date、Server、Content-Type、Content-Length 等字段。在请求首部和响应首部中都有Connection 字段,其值为Keep-Alive 或 Close,表示服务器在传送完所请求的对象后是保持连接或关闭连接。
    ④ 若请求报文中使用 “GET”方法,首部行后面没有实体主体,当使用 “POST”方法是,附加的信息被填写在实体主体部分。在响应报文中,实体主体部分为服务器发送给客户的对象。
    图1.2 和图1.3显示了捕获的HTTP 请求和响应报文,结合上面的介绍,请自己分析和体会。
    在这里插入图片描述
    在这里插入图片描述
    2.实验环境与说明
    (1)实验目的
    在PC 机上访问Web 页面,截获报文,分析HTTP 协议的报文格式和HTTP
    协议的工作过程。
    (2)实验设备和连接
    本地实验室环境,无须设备连接;
    注意:请通过访问可以连接的WWW 站点或使用IIS 建立本地WWW 服务器来进行实验。
    (3)实验分组
    每四名同学为一组,每人一台计算机独立完成实验。
    3.实验步骤
    步骤1:在PC 机上运行Wireshark,开始截获报文;
    在这里插入图片描述
    在cmd中输入命令ping csee.hnu.edu.cn查看网站的ip地址
    在这里插入图片描述
    选择抓包方式为wlan
    步骤2:从浏览器上访问Web 界面,如http://csee.hnu.edu.cn打开网页,待浏览器的状态栏出现 “完毕”信息后关闭网页。
    在这里插入图片描述
    通过输入http && ip.addr == 10.62.102.203来对截获报文进行筛选
    步骤3:停止截获报文,将截获的报文命名为http-学号保存。
    通过快捷键ctrl+s可以实现报文的保存
    分析截获的报文,回答以下几个问题:

    1)综合分析截获的报文,查看有几种HTTP 报文?
    有两种HTTP报文。
    第一种是HTTP的请求报文:558 4.300131是从客户端发往服务器的请求报文,其中Source的10.72.33.14是客户端的ip,Destination的10.62.102.203是服务器的ip
    第二种是HTTP的应答报文:560 4.310638是从服务器发往客户端的应答报文,其中Source的10.62.102.203是服务器的ip,Destination的10.72.33.14是客户端的ip

    2)在截获的HTTP 报文中,任选一个HTTP 请求报文和对应的 HTTP 应答报文,仔细
    分析它们的格式,填写表1.1 和表1.2。
    在这里插入图片描述
    在这里插入图片描述

    3)分析在截获的报文中,客户机与服务器建立了几个连接?服务器和客户机分别使用
    了哪几个端口号?
    建立了三次连接:第一次连接是80和57448的连接,返回了Bad request;第二次连接是80和57496的连接,也就是三次握手;第三次连接是80和57447的连接,是进行信息的传输。
    服务器使用的端口号:80
    客户机使用的端口号:57448、57496、57447
    在这里插入图片描述

    4 )综合分析截获的报文,理解HTTP 协议的工作过程,将结果填入表1.3 中。
    在这里插入图片描述

  • 相关阅读:
    【数据挖掘】实验8:分类与预测建模
    Vue3学习(十七) - 点击二级分类实现自动筛选功能
    【洛谷 P1518】[USACO2.4] 两只塔姆沃斯牛 The Tamworth Two 题解(深度优先搜索)
    【Flask】Flask启程与实现一个基于Flask的最小应用程序
    【spark】Exception in thread “main“ ExitCodeException exitCode=-1073741701
    熟悉c语言结构体
    QT网络编程http
    Biome-BGC生态系统模型与Python融合
    【力扣算法简单五十题】08.删除排序链表中的重复元素
    OSINT技术情报精选·2024年5月第1周
  • 原文地址:https://blog.csdn.net/qq_45795586/article/details/125451489