数据包知识

ARP

全称:Address Resolution Protocol 地址解析协议

ARP请求

数据包的目的地址是(ff:ff:ff:ff:ff:ff),这是以太网中的广播地址,
所有发送到这个地址的数据包都会被广播到当前网段中的所有设备。这个数据
包中以太网头的源地址就是我们的MAC 地址

ARP响应

响应 我的MAC 是多少

IP

在这里插入图片描述
标识符(Identification):一个唯一的标识数字,用来识别一个数据包或者
被分片数据包的次序。

如果被分片,那么每个包的标识符都是相同的。

标识(Flags):用来标识一个数据包是否是一组分片数据包的一部分。

如果被分片,除去最后一个包外,其他都设置为1

分片偏移(Fragment Offset):一个数据包是一个分片,这个域中的值就会
被用来将数据包以正确的顺序重新组装。

分片后,这个记录的是除去IP头20字节的字节数。如果一个IP数据包最大1500,减去 20 = 1480字节。

IP地址主要由两部分组成:网络地址主机地址;共32位。

组成部分作用
网络地址用来标识设备所连接的局域网
主机地址标识这个网络中的设备本身

但是IP地址,哪部分属于网络,哪部分属于主机没有明确的划分。所以需要用到网络掩码:

在这里插入图片描述

我们通常所关心的一个数据包的生存周期,只是其从源前往目的地所花去的时间。— TTL(存活时间)
为什么存活时间这么重要呢?如果没有存活时间,那么这个数据包会在网络中一直流转(相当于死循环),那么网络中可用的带宽就会减少,直到拒绝服务(Dos)的情况出现。IP头中的TTL就是为了防止这种事情发生。

IPv6

IPv6地址有128 位,可以提供2 的128 次方的地址空间.

TCP

在这里插入图片描述

源端口(Source Port):用来传输数据包的端口。

目的端口(Destination Port):数据包将要被发送到的端口。

序号(Sequence Number):这个数字用来表示一个TCP 片段,这个域用来
保证数据流中的部分没有缺失。

确认号(Acknowledgment Number):这个数字是在通信中希望从另一个设
备中得到的下一个数据包的序号。

标志(Flags):URG ACK PSH RST SYN 和FIN 标志都用来表示所传输的
TCP 数据包的类型。

窗口大小(Window Size):TCP 接收者缓冲的字节大小。

校验和(Checksum):用来保证TCP 头和数据的内容在抵达目的地时的完
整性。

紧急指针(Urgent Pointer):如果设置了URG 位,则这个域将被检查作为额外的指令,告诉CPU 从数据包的哪里开始读取数据。

选项(Options):各种可选项,可以在TCP 数据包中进行指定。

端口

在使用TCP 进行通信的时候,我们有65535 个端口可供使用,并通常将这
些端口分成两个部分。

1~1023 是标准端口组(忽略掉被预留的0),特定服务会用到这些通常位
于标准端口分组中的标准端口。

1024~65535 是临时端口组(尽管一些操作系统对此有着不同的定义),当
一个服务想在任何时间使用端口进行通信的时候,现代操作系统都会随机地选
择一个源端口,让通信使用唯一源端口。这些源端口通常就位于临时端口组。

三次

第一次:SYN包
第二次:SYN/ACK包
第三次:ACK 包

四次

第一次:FIN/ACK 包
第二次:ACK包
第三次:FIN/ACK包
第四次:ACK包

异常情况

RST包:RST 标志用来指出连接被异常中止,或拒绝连接请求。

实战

实际数据包:以太网帧头 + IP数据报 + TCP/UDP数据包

或者:

在这里插入图片描述

HTTPS

HTTPS的数字证书验证原理

浏览器验证的过程:

  1. 浏览器向服务器发送请求,获取服务器数字证书。
  2. 首先从证书中得知证书的颁发机构,然后从浏览器系统中去寻找此颁发机构的根证书。
  3. 如果我们找到了证书颁发机构的根证书,那么就从根证书中取得那个根公钥,用根公钥去解密此证书的数字签名,成功解密的话就得到证书的指纹和指纹算法,指纹是证书内容通过指纹算法计算得到的一个hash值,这里我们称之为h1,h1代表证书的原始内容;然后用指纹算法对当前接收到的证书内容再进行一次hash计算得到另一个值h2,h2则代表当前证书的内容,如果此时h1和h2是相等的,就代表证书没有被修改过。如果证书被篡改过,h2和h1是不可能相同的,因为hash值具有唯一性,不同内容通过hash计算得到的值是不可能相同的。

TLS 层

SSL (Secure Sockets Layer)

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要在Wireshark中抓取手机数据包,您需要照以下步骤进行设置1. 确保您的手机和计算机在同一局域网中,并且已经连接到同一个Wi-Fi网络。 2. 在算机上安装Wireshark软件。您可以从Wireshark官方网站(https://www.wireshark.org/)下载并安装适用于您的操作系统的版本。 3. 打开Wireshark软件,并选择与您的网络接口对应的网卡。在Wireshark窗口的左上角,点击下拉菜单选择正确的网卡,这是用于捕获数据包的接口。 4. 在Wireshark窗口的过滤器字段中,输入以下过滤器来仅显示来自手机的数据包: ``` ip.src == <手机IP地址> or ip.dst == <手机IP地址> ``` 请将`<手机IP地址>`替换为您手机的IP地址。如果不知道手机的IP地址,可以在手机上打开Wi-Fi设置,找到已连接的Wi-Fi网络,并查看其详细信息。 5. 点击Wireshark窗口右上角的“开始捕获”按钮开始抓取数据包。您将看到Wireshark开始在选择的网卡上捕获数据包。 6. 在手机上进行需要抓取的操作,例如访问网页、发送请求等。Wireshark将捕获到相关的数据包。 7. 当您想要停止抓取数据包时,点击Wireshark窗口右上角的“停止捕获”按钮。 8. 您可以通过Wireshark窗口来查看和分析捕获到的数据包。您可以使用过滤器、统计信息等功能来分析数据包。 请注意,抓取手机数据包可能涉及到隐私和安全问题,请确保您有合法的权限和目的来进行此操作。另外,Wireshark的使用可能需要一些网络知识和技巧,如果您不熟悉网络分析,请谨慎操作或寻求专业的帮助。 希望这些步骤对您有所帮助!如有任何疑问,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

山鬼谣me

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值