网络抓包和HTTP协议

本文介绍了HTTP协议的基本概念、特点,并详细讲解了网络抓包工具Wireshark的使用,包括如何抓包、设置捕获过滤器。同时,文章探讨了TCP三次握手的过程,帮助理解TCP连接的建立。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、HTTP协议

1.简介

2.特点

二、网络抓包-Wireshark

1.Wireshark简介

2.抓包

3.捕获过滤器 

 三、TCP三次握手

1.TCP特点

2.TCP包中的字段

 3.分析



一、HTTP协议

1.简介

HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。

HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。

HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。

2.特点

(1)简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。

(2)灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。

(3)无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。

(4)无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。
(5)支持B/S及C/S模式

二、网络抓包-Wireshark

1.Wireshark简介

Wireshark是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换

2.抓包

1.打开Wireshark就可以看见自己机器上的所有的接口。

2. 点击捕获->选项

这里可以选择WLAN2->点击开始

 开始捕获

3.捕获过滤器 

1.捕获–>捕获过滤器

2.点击+新建Filter Name和Filter Expression

wireshark过滤规则表达式:

1.协议过滤:在表达式栏中直接填写协议名:比如TCP 只显示TCP协议报文tcp udp arp http 等

 2. IP 过滤:在显示过滤器表达式栏中填写:例如

 ip.src == 192.168.1.102 显示源地址为192.168.1.102的报文

 3. 端口过滤:

 tcp.port ==80 显示tcp 协议的源或者目的端口为80的报文;

 tcp.srcport ==80 显示tcp 端口号为80的报文

 tcp.dstport ==80 显示tcp 端口号为80的报文

 4.http 模式的过滤

 http.request.method =="GET" //过滤get包

 http.request.method == "POST"// 过滤post包

 5. 包长度过滤:

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

 备注: udp 的整包的长度 = ip 头部长度(20)+以太网头部长度(14)+udp 数据包的长度

 tcp.len >= 29,代表查询出来tcp协议的数据包,且包长度大于等于29的数据包

 备注:此处tcp数据包长度+tcp头部(20)+ip头部(20)+以太网头部(14)=整体数据包长度。

 6. MAC地址的过滤

 这里可以选择ip过滤

 

 三、TCP三次握手

1.TCP特点

①TCP是面向连接的传输层协议。

②TCP连接是点对点的(套接字–IP:Port到套接字)。

③TCP提供可靠交付的服务。

④TCP提供全双工通信。

⑤面向字节流。

2.TCP包中的字段

 

 3.分析

 1)客户端发送一个TCP,标志位SYN,序列号为0,客户请求建立连接

2)服务器返回确认号,标志位为SYN、ACK,确认号为1

3)客户端再次发送确认包,SYN标志位为0,ACK标志位为1,ACK的序号字段+1,放在确认字段中发送给对方,并且在数据段写ISN+1

总结:

通过这一次的实验,我学会了TCP HTTP网络协议。以及如何用wireshark软件抓取相应的数据包,并且了解了TCP三次握手的过程。
 

参考文献:

关于HTTP协议,一篇就够了 - 简书 (jianshu.com)

(50条消息) wireshark过滤规则表达式_wangzhen_csdn的博客-CSDN博客

(50条消息) *TCP报文_林竹清_清清清-CSDN博客_tcp报文段结构

工具 | wireshark抓包工具的使用及分析_嵌入式大杂烩-CSDN博客_wireshark抓包及分析

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值