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

规划案例网站手机百度最新正版下载

规划案例网站,手机百度最新正版下载,用html网站登录界面怎么做,七星网络网站目录 一、关于Wireshark 1.1、 什么是Wireshark 1.2、下载及安装 二、HTTP介绍 2.1、HTTP请求过程介绍 2.2 、TCP协议基础知识 2.2.1、概念介绍 2.2.2、TCP协议的工作原理 2.2.3、三次握手建立连接 2.3.4、四次挥手断开连接 2.3、Wireshark抓包分析过程 2.3.1、三次握…

目录

一、关于Wireshark

1.1、 什么是Wireshark

1.2、下载及安装

二、HTTP介绍

2.1、HTTP请求过程介绍

2.2 、TCP协议基础知识

2.2.1、概念介绍

2.2.2、TCP协议的工作原理

2.2.3、三次握手建立连接

 2.3.4、四次挥手断开连接

2.3、Wireshark抓包分析过程

2.3.1、三次握手

2.3.2、发送请求

2.3.3、服务器响应

2.3.4、四次挥手


一、关于Wireshark

1.1、 什么是Wireshark

Wireshark(前身 Ethereal)是一个网络包分析工具。该工具主要是用来捕获网络数据包,并自动解析数据包,为用户显示数据包的详细信息,供用户对数据包进行分析。

它可以运行在 Windows 和 Linux 操作系统上。可以使用该工具捕获并分析各类协议数据包,本文将讲解该工具的安装及基本使用方法。

1.2、下载及安装


Kali Linux 系统自带 Wireshark 工具,而 Windows 系统中默认没有安装该工具。因此,本节讲解如何在 Windows 系统中安装 Wireshark 工具。

  1. 打开网址 http://www.wireshark.org,进入 Wireshark 官网,如图所示。

  2. 选择合适的平台进行下载

  3. 一直下一步安装即可,安装完打开Wireshark,如下:

二、HTTP介绍

HTTP(HyperText Transfer Protocol,超文本传输协议)是用于传输超文本信息的协议,它是互联网上应用最为广泛的一种网络协议。了解完整的HTTP请求过程有助于我们更深层次的去分析问题(尤其是网络安全问题),同时也更能清楚为什么现在网站很少再用HTTP了,而改为使用更为安全的HTTPS协议。

2.1、HTTP请求过程介绍

HTTP连接本质就是使用TCP协议建立起的可靠连接进行请求发送与请求响应。HTTP请求过程大致可以分为五个步骤(见上图),每个步骤细节如下:

  1. DNS解析:当客户端(如浏览器)尝试访问一个网站时,它首先会尝试从本地缓存中查找域名对应的IP地址。如果本地缓存中没有找到,客户端会发送DNS查询请求到本地的DNS服务器。
  2.  建立TCP连接:客户端(如浏览器)向服务器发起连接请求,通常使用TCP/IP协议建立一个到服务器的TCP连接。这个过程称为三次握手(Three-way handshake),确保连接的可靠性。
  3. 客户端发送请求:客户端向服务器发送HTTP请求消息。
  4.  服务端响应请求:服务器接收到请求后,会检查请求头和请求体,然后根据请求方法(如GET、POST)和资源路径来决定如何响应。
  5. 释放TCP连接:请求完成后,客户端和服务器可以关闭连接。

2.2 、TCP协议基础知识

2.2.1、概念介绍

TCP(Transmission Control Protocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP是互联网核心协议之一,位于OSI模型的传输层,负责在互联网上的计算机之间提供可靠的数据传输服务

2.2.2、TCP协议的工作原理

TCP连接的建立与断开,正常过程至少需要客户端与服务端来回发送7个包(请求)才能完成。其中客户端发送4个(1、3、4、7),服务端发送3个(2,5,6),具体原理参照下图。

传输控制依赖首部包含的6个标志:

  • URG:紧急指针
  • ACK:确认序号是否有效
  • PSH:接收方应尽快将这个报文段交给应用层
  • RST:重建连接
  • SYN:同步序号用来发起一个连接
  • FIN:发送端完成发送任务

2.2.3、三次握手建立连接

TCP建立连接的过程,包括客户端和服务器总共发送3个包,此过程称为三次握手

  • 第一次握手:客户端发送一个带有SYN标志的TCP段,请求与服务器建立连接。

  • 第二次握手:服务器接收到SYN请求后,发送一个带有SYN和ACK标志的TCP段作为响应。

  • 第三次握手:客户端接收到服务器的SYN+ACK响应后,发送一个带有ACK标志的TCP段,完成连接建立。

三次握手完成后便建立了TCP连接,便可进行数据传输,TCP负责将数据分割为多个段(Segment),并按顺序发送。

 2.3.4、四次挥手断开连接

TCP断开连接的过程,包括客户端和服务器总共发送4个包,此过程称为四次挥手

  • 第一次挥手:客户端发送一个带有FIN标志的TCP段,请求断开连接;

  • 第二次挥手:服务器接收到FIN请求后,发送一个带有ACK标志的TCP段作为响应;

  • 第三次挥手:服务器发送一个带有FIN标志的TCP段,请求断开连接;

  • 第四次挥手:客户端接收到服务器的FIN请求后,发送一个带有ACK标志的TCP段,完成连接断开。

2.3、Wireshark抓包分析过程

①打开Wireshark工具,选择以太网

因为此时捕获的是本地网络,所以会有很多信息,先不管

②打开cmd窗口,以此执行 ping www.baidu.com,然后执行curl www.baidu.com

到这里,我们执行的这两条命令,Wireshark也已经捕获到了,

为避免其他无用的数据包影响分析,可在显示过滤器(display filter)输入过滤条件ip.addr== ip.addr==157.0.148.3 (来自ping返回的百度ip),过滤与百度发生交互的数据包:

上半部分是ping命令的数据包,不管,下面的是curl命令的数据包,我们以此来分析TCP连接的三次握手和四次挥手。

2.3.1、三次握手

前三个包完成了三次握手,建立了连接。

  • 第一个包是「第一次握手」:我(192.168.1.52)向百度(157.0.148.3)发送一个 SYN ,表示这是一个「建立连接的请求」;

  • 第二个包是「第二次握手」:百度(157.0.148.3)响应我(192.168.1.52)一个 SYN+ACK ,表示这是一个「接受连接的应答」;

  • 第三个包是「第三次握手」:我(192.168.1.52)向百度(157.0.148.3)发送一个 ACK ,表示这一个「确认请求」。

发送完确认请求后,我开启到百度的单向连接通道,百度收到我的确认请求后,就开启到我这边的单向连接通道,两边通道都开启以后,就可以通信了。

2.3.2、发送请求

第一个HTTP协议包(序号103)执行了HTTP 的GET请求。

客户端向服务器发送HTTP请求消息。请求消息通常包括以下部分:

  • 请求行:包含请求方法(如GET、POST)、请求的资源路径、HTTP版本。

  • 请求头:包含客户端信息、请求参数等,例如User-Agent、Accept、Cookie等。

  • 请求体:对于某些请求方法(如POST),可能包含额外的数据,用于向服务器发送信息。

点开请求行,看里面的三个字段,下图所示:

  • Request Method:请求方法,这里的请求方法是GET;

  • Request URI:请求的URI,没指定默认是/,因为我们只请求了域名www.baidu.com,并没指定要获取的资源,所以是默认的/

  • Request Version:请求的版本,因为用的是HTTP协议,所以这里显示HTTP协议的版本。

再看下面的几个请求头:

  • Host:目标主机;

  • User-Agent:用户代理,也就是浏览器的类型。由于我们没用浏览器,所以这里显示的是命令curl,版本为8.9.1;

  • Accept:浏览器可接受的MIME(Multipurpose Internet Mail Extensions)类型。

    浏览器通常使用 MIME 类型(而不是文件扩展名)来确定如何处理URL,因此 We b服务器在响应头中添加正确的 MIME 类型非常重要。如果配置不正确,浏览器可能会无法解析文件内容,网站将无法正常工作,并且下载的文件也会被错误处理。

2.3.3、服务器响应

第二个HTTP协议包(序号106)执行了HTTP响应。

 

  • 状态行:包含版本和响应状态码、状态信息;

  • 响应头:包含响应的服务器的资源信息,一行一个响应头;

  • 响应空行:用来间隔/区分响应头和响应体;

  • 响应体:服务器响应的内容,通常是一个HTML页面的代码或者给客户端的数据,上图中可以看到本次响应的内容是一个文件数据(File Data)。

点开状态行,可以看到里面有三个字段:

  • Response Version:响应版本,因为使用的是HTTP协议,所以这里显示了HTTP的版本;

  • Status Code:响应状态码,这里的 200 表示请求成功;

  • Response Phrase:响应状态码的提示信息。

最后看下几个响应头:


 

  • Accept-Ranges: 告知客户端资源是否支持范围请求。当前取值bytes表明资源支持范围请求,可以使用Range头进行请求。

  • Cache-Control: 控制缓存行为,包括是否缓存、缓存的有效期、缓存策略等。

  • Connection: 服务器是否需要保持连接。

    keep-alive表示服务器希望在发送响应后不立即关闭连接,而是保持连接状态以供后续请求复用。这种设置可以提高服务器的响应效率,减少TCP连接的建立和断开的开销,特别是在处理大量并发请求的场景下。

  • Content-Length: 响应内容的字节数,本例是2381字节。

  • Content-Type: 响应内容的类型和编码方式,text/html。

  • Date: 指示响应消息生成的时间。

  • Etag: 资源的实体标签(Entity Tag),用于缓存控制和验证。

  • Last-Modified: 资源的最后修改时间

  • Pragma: 历史遗留的HTTP头,它最初用于缓存控制,但现在已不推荐使用。取值no-cache表明不使用缓存。

  • Server: 服务器的名称或版本。

  • Set-Cookie: 用于设置客户端的Cookie

当打开响应体,会发现它的内容是明文的,对于机密通信来说HTTP通信很容易产生信息泄露。另外,以上介绍的整个交互过程中并不验证通信方的身份,第三方可以冒充他人身份参与通信。后续会发图文详解,带你搞清楚HTTPS协议的工作机制。

2.3.4、四次挥手

最后四个包通过四次挥手断开了连接。

  • 第一个包是「第一次挥手」:我(192.168.1.52)向百度(157.0.148.3)发送一个「FIN+ACK」,表示这是一个「释放连接」的请求;

  • 第二个包是「第二次挥手」:百度(157.0.148.3)向我(192.168.1.52)响应一个「ACK」,表示这是一个「确认请求」,我收到后,就会释放我到百度的单向连接;

  • 第三个包是「第三次挥手」:百度(157.0.148.3)向我(192.168.1.52)发送一个「FIN+ACK」,表示这是一个「释放连接」的请求;

  • 第四个包是「第四次挥手」:我(192.168.1.52)向百度(36.155.132.76)响应一个「ACK」,表示这是一个「确认请求」,百度收到后,就会释放到我这边的单向连接。

 双向的连接都释放后,TCP连接就关闭了(对于本例来说就是百度响应结束),此次通信结束。

http://www.hotlads.com/news/932.html

相关文章:

  • 做服装最好的网站12345浏览器网址大全
  • 广州移动端网站建设关键词排名查询网站
  • 网站内容不显示百度搜索趋势
  • js网站效果浙江企业seo推广
  • 音乐网站用什么语言做页面关键词优化
  • 网站建设包含内容成都专业的整站优化
  • 网站建设 广西自己动手建立个人网站
  • 自己制作游戏的app免费seo排名优化
  • 深圳市做网站前十强seo搜索排名优化是什么意思
  • 一个网站同时做百度和360 百度商桥都可以接收客户信息吗查域名注册详细信息查询
  • 网站 设计 趋势seo网站优化专家
  • 沈阳 网站制作报价高级seo
  • 做网站需要懂什么软件少女长尾关键词挖掘
  • 3有免费建网站google 优化推广
  • 河南网站seo营销多少费用如何建立自己的网站?
  • 网站图怎么做才能小而清晰度建站模板网站
  • 米拓cms 网站模板在哪精准营销及推广
  • 王也动漫宁德seo推广
  • 网站建设伍际网络营销方案怎么写?
  • 营销型网站建设吉林营销策略都有哪些
  • 建设网站的总结成都网站建设方案推广
  • 淘宝做网站骗局武汉seo服务外包
  • 青岛网站开发培训价格市场营销案例分析及解答
  • 网站开发用JAVA还是net招商外包
  • 网站开发前景与趋势如何广州seo站内优化
  • 企业网站建设项目描述什么关键词可以搜到那种
  • 做网站每个月可以赚多少钱河南网站推广优化
  • 山西太原发现4例阳性东莞网站建设优化技术
  • 合肥网站建设需企业网站注册
  • 怎么在网站上做404页面模板建站常规流程