使用wireshark 抓取 http https tcp ip 协议进行学习

使用wireshark 抓取 http https tcp ip 协议进行学习

前言

本节使用wireshark工具抓包学习tcp ip http 协议

1. tcp

1.1 tcp三次握手在wireshark中的体现

1.1.1 三次握手过程

1.1.1 wireshark中三次握手过程

在wireshark中抓一次三次握手过程

  1. 客户端
    客户端发送SYN=1 的请求连接的标记位,以及一个随机序列号X
  2. 服务端
    服务端发送一个ACK标志位(ack之前的syn),随之一个ack号码为X+1 确认接收到
    并且也会发送一个和当时客户端建立连接时相同的动作,发送SYN号码表示要和客户端进行连接,并且从新生成一个随机序列号Y
  3. 客户端
    接受到后Ack服务端的SYN 返回ACK标志码并且把Y+1进行ack返回,并且发送序列号为当初的x+1

序列号使用来记录"对方期待的序列号" 发送方第一次和第二次的序号相差第一次发送的数据长度,
当发送 SYN或 FIN时长度为空时,也占一个长度,下次加一

其中的FLag位

占六位 依次为 URG、ACK、PSH、RST、SYN、FIN。
换算成十六进制此处如果是SYN则为0x02 ACK为 0x10 ,既有SYN也有ACK则为0x12

1.2 tcp协议组成部分

  • 头部20字节

1.3 四次挥手过程

  1. 发送方 发送FIN标记 需要释放连接 seq=u (此时代表发送方的数据都发送完成了)
    此时发送方进入连接结束的第一个等待状态 FIN-WAIT-1
  2. 接收方 ACK标记 seq=v ack =u+1
  • 发送方在接受到接受方这个报文时进入第二个等待状态 FIN-WAIT-2
  • 发送方在发送完这个报文后进入关闭等待的状态 CLOSE-WAIT
  1. 接受方发送FIN报文 (此时他的全部数据也都发送完成了)
  • 发送方发送FIN=1 ACK=1 seq=w ack = u+1 (重复对当时发送方的报文ack)
  • 此时接收方进入最后确认状态 LAST-ACK 等待发送方的确认
  1. 连接方发送确认断开
  • ACK=1 seq=u+1 ack=w+1

2. ip协议

2.1 ip协议组成部分

  • IPv4的头部结构长度为20字节,若含有可变长的选项部分,最多60字节。

3. http协议

  • http://:/
    主机可以是ip或域名,DNS会将域名转化为ip
  • HTTP请求的方法
  • http的协议

4. https协议

  • http明文传输不安全 通过SSL对数据进行加密 加密后的数据传输更加安全
  • 非对称加密:加密和解密使用的钥匙不一样 (公钥 私钥)
  • 对称加密则是加密解密使用相同的密钥
  • https 综合的使用了非对称加密和对称加密,并且他们生成的密钥没有经过传输

    4.1 https协议组成部分

    https 为http上加了一层SSL SSL 可以是TSL协议,在443端口TCP三次握手后会建立SSL连接

    4.2 https协议的流程

  1. 客户端发送Clien Hello
    生成随机数 1 。协议版本 支持的加密算法
  2. 服务器
    生成随机数2,3 确认客户端加密的算法 数字证书

3.客户端检查

  • 确认整数是否有效
  • 生成随机数3
  • 使用服务器的公钥(证书中取出)加密随机数3
  • 发送给服务端 此时服务端和客户端都同时拥有了随机数1 2 3
    此后就根据随机数1 2 3 和相同的加密算法生成对称密钥

后续

5. udp

  • 头部 8 字节

    一字节8位

结语

文章简要的对http https tcp udp ip 协议的内容以及交互流程进行了解读。如果有问题和疑问请在评论区指出,多谢大神指教。

参考资料

原文地址:https://www.cnblogs.com/wei57960/p/12180382.html

时间: 2024-08-28 04:56:39

使用wireshark 抓取 http https tcp ip 协议进行学习的相关文章

TCP/IP协议组学习笔记

TCP/IP协议族学习笔记: 一.基础概念: (1)TCP(Transmission Control Protocol) 传输控制协议. (2)IP(Internet Protocol)网际协议.IP是一种不可靠的无连接数据协议,一种尽最大努力交付的服务. (3)ISP(Internet Service Provider)因特网服务提供者. (4)ISO 国际标准化组织. (5)IEEE 电气和电子工程学会. (6)W3C 万维网联盟. (7) OMA 开放移动联盟. (8)RFC(Reques

TCP/IP协议原理学习笔记

昨天学习了杨宁老师的TCP/IP协议原理第一讲和第二讲,主要介绍了OSI模型,整理如下: OSI是open system innerconnection的简称,即开放式系统互联参考模型,它把网络协议从逻辑上分为了7层.即如上图所示: 1.物理层:主要定义物理设备标准,如网线的接口类型.光纤的接口类型.各种传输介质的传输速率等.它的主要作用是传输比特流(就是由1.0转化为电流强弱来进行传输,到达目的地后在转化为1.0,也就是我们常说的数模转换与模数转换).这一层的数据叫做比特. 2.数据链路层:定

转_结合Wireshark捕获分组深入理解TCP/IP协议之IP协议

转自: http://blog.chinaunix.net/uid-9112803-id-3213492.html 摘要: 本文简单介绍了网络层理论知识,详细讲解了IP数据报各个字段,并从Wireshark俘获分组中选取IP数据报进行分析,也阐述了分组和分片的区别. 一.IPv4数据报 网络层是处理端到端数据传输的最低层.网络层关注如何将分组从源端沿着网络路径送达目的端,期间可能需要经过许多跳中间路由器.即提供转发(数据从路由器那个接口出去).选路(发送方与接收方间的路径).网络建立(如ATM.

ARP抓包实战小结-TCP/IP协议学习

2011-12-26 21:36:47 图1 一,环境说明 硬件连线.PC与2440开发板直接用网线连接. PC的ip地址:192.168.0.107.2440开发板的ip地址:192.168.0.106 二,操作 在开发板的uboot中用输入命令.Ping 192.168.0.107 三,抓包及说明:见图1 四,疑问点解答 由于ARP请求或回答的数据帧长都是42字节(28字节的ARP数据,14字节的以太网帧头),因此每一帧都必须加入填充字符以达到以太网的最小长度要求:60字节. 以太网设备驱动

利用wireshark抓取TCP的整个过程分析。

原文地址:https://www.cnblogs.com/NickQ/p/9226579.html 最近,已经很久都没有更新博客了.看看时间,想想自己做了哪些事情,突然发现自己真的是太贪心,到头来却一个都没搞好.手头的嵌入式都还没学出名堂,竟然还想着学FPGA,物联网,机器学习.然而,遇到新奇的事物,就会控制不住的去想,去找资料,实际上只是逃避遇到的问题,不想去解决而已..最后的结果就是手头的活堆起来了,然后花大把整块的时间解决.真的是讨厌现在的自己. 以后还是慢慢记录吧,不管做了什么,都慢慢尝

通过Wireshark抓取直连设备的IP地址

1.ARP协议简介说到网络中的IP地址就不得不说APR协议.何为ARP?全名叫做Address Resolution Protocol(地址解析协议).网络中的设备发送消息时将包含目标IP地址信息存入本设备APR缓存中并保留一段时间,下次请求时直接查询ARP缓存以节约资源.地址解析协议是建立在网络中各个主机互相信任的基础上的,网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存:由此攻击者就可以向某一主机发送伪ARP应答报文,使其发送的信

利用wireshark抓取Telnet的用户名和密码

使用wireshark抓取Telnet   目标ip地址(telnet  192.168.88.1 ) 1,首先打开wireshark,然后选择网卡,点击开始. 2,为了在filter中输入telnet 或者输入(ip.dst == 目标ip地址 and  tcp.port== 23). 3,看下面的数据包,找到telnet  并且能够看到data:\r\n:如下图 4,接下来再看下面的数据包,就能看到明文用户名和密码了.如下图 这时候你就可以看到明文用户名的首字母x了,继续看下去你可以找到后面

wireshark抓包直观图解 TCP三次握手/四次挥手详解

转http://www.seanyxie.com/category/linux/ 作者:seanyxie | 一. TCP/IP协议族 TCP/IP是一个协议族,通常分不同层次进行开发,每个层次负责不同的通信功能.包含以下四个层次: 1. 链路层,也称作数据链路层或者网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡.它们一起处理与电缆(或其他任何传输媒介)的物理接口细节. 2. 网络层,也称作互联网层,处理分组在网络中的活动,例如分组的选路.网络层协议包括IP协议(网际协议

WireShark抓取QQ邮箱

WireShark抓取QQ邮箱 实验环境:MacOS + WireShark 1.QQ邮箱是网址是基于HTTPS协议的 HTTPS(Hypertext Transfer Protocol over Secure Socket Layer)能够加密信息,由HTTP+TLS/SSL组成,在原本的HTTP协议上增加了一层加密信息模块,服务端和客户端的信息传输都要经过TLS进行加密,所以传输的数据都是加密后的数据. 2.TLS/SSL 简介 握手过程: 1.初始化阶段.客户端创建随机数,发送Client