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

Wireshark抓包常用指令

1.常用过滤规则

指定源地址:

ip.src == 10.0.1.123
ip.src == 10.0.1.123 && udp
http
数据链路层:筛选mac地址为04:f9:38:ad:13:26的数据包----eth.src == 04:f9:38:ad:13:26筛选源mac地址为04:f9:38:ad:13:26的数据包----eth.src == 04:f9:38:ad:13:26网络层:筛选ip地址为192.168.1.1的数据包----ip.addr == 192.168.1.1筛选192.168.1.0网段的数据---- ip contains "192.168.1"筛选192.168.1.1和192.168.1.2之间的数据包----ip.addr == 192.168.1.1 && ip.addr == 192.168.1.2筛选从192.168.1.1到192.168.1.2的数据包----ip.src == 192.168.1.1 && ip.dst == 192.168.1.2传输层:筛选tcp协议的数据包----tcp筛选除tcp协议以外的数据包----!tcp筛选端口为80的数据包----tcp.port == 80筛选12345端口和80端口之间的数据包----tcp.port == 12345 && tcp.port == 80筛选从12345端口到80端口的数据包----tcp.srcport == 12345 && tcp.dstport == 80应用层:过滤请求数据包----http.request过滤响应数据包----http.response过滤指定域名----http.host == “xxx.xxx.xxx”筛选url中包含.php的http数据包----http.request.uri contains ".php"筛选内容包含username的http数据包----http contains "username"过滤请求头----http.request.method == GET过滤请求的url----http.request.url==”/xxx/xxxx”过滤包含HTTP错误状态码的响应数据包----http.request.code >= 400过滤服务器端错误状态码的响应数据包----http.response.code <=599。

2.UDP报文结构

在这里插入图片描述

3.TCP报文结构

在这里插入图片描述

4.关键点

这里讲一下关键的点

4.1 TCP/UDP headers checksum

前面几个图可以看到Checksum,校验和。
TCP的数据包的校验和计算的数据来源包括三部分:TCP伪首部和TCP首部和TCP数据。TCP计算校验和引入了伪首部,包括后面介绍的UDP。如下图所示,TCP伪首部包括:源地址(32 bit),目标地址(32 bit),Zeros(8 bit),Protocol(8 bit),TCP Length(16 bit)。
在这里插入图片描述

在这里插入图片描述
由上图可知,源地址是106.11.43.158(6a 0b 2b 9e), 目标地址192.168.1.105(c0 a8 01 69),TCP的协议号是6,TCP数据长度是IP数据总长度减去IP头部52-20=32(0x20)。接下来是TCP头部和数据部分抓包示例:
在这里插入图片描述
由上图可知,TCP的校验和是0x755E,计算过程如下:

  1. 取伪首部的数据

Source Address Destination Address Zeros Protocol TCP Length

6a 0b 2b 9e c0 a8 01 69 00 06 00 20

  1. 将伪首部数据合并为16位一组并相加

6a0b+2b9e+c0a8+0169+0006+0020=157E0

  1. 取TCP数据

01 bb de c0 d3 86 24 c6 0e 5f 8d 90 80 10 00 0e 75 5e 00 00 01 01 05 0a 0e 5f 8d 8f 0e 5f 8d 90

  1. 将校验和部分置为00 00

01 bb de c0 d3 86 24 c6 0e 5f 8d 90 80 10 00 0e 00 00 00 00 01 01 05 0a 0e 5f 8d 8f 0e 5f 8d 90

  1. 将TCP数据合并为16位一组并相加

01bb+dec0+d386+24c6+0e5f+8d90+8010+000e

+0000+0000+0101+050a+0e5f+8d8f+0e5f+8d90=432BC

  1. 将伪首部和TCP数据的相加结果相加

157E0 + 432BC = 58A9C

  1. 将上一步结果的高16位和低16位相加

8A9C + 5 = 8AA1

  1. 将0xFFFF减8AA1得到校验和

0xFFFF - 0x8AA1 = 755E

  1. 与抓包的校验和比较是一致的

4.2 使用python生成TCP\UDP报文,用于软件开发测试

#!/usr/bin/env pythonimport socketTCP_IP = '127.0.0.1'
TCP_PORT = 1337
BUFFER_SIZE = 1024
MESSAGE = 'Hello, World!'
encoded = str.encode(MESSAGE)     # b'Hello, World!'
decoded = encoded.decode()        # 'Hello, World!' s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((TCP_IP, TCP_PORT))
s.send(encoded)
data = s.recv(BUFFER_SIZE)
s.close()print ("received data:", data)

5.Wireshark抓取TCP数据包分析三次握手

第一次握手数据包

客户端发送一个数据包,SYN=1,ACK=0,序列号从0开始,表示客户端请求建立连接
在这里插入图片描述

第二次握手数据包

服务器端发会数据包,SYN=1,ACK=1,seq=0,ack=seq+1表示已接收的数据包数量

在这里插入图片描述

第三次握手数据包

客户端重新传回确认包,SYN=0,服务器端检查ACK=1,ack=seq+1=1表示当前段成功接收数据位数

在这里插入图片描述

TCP层FLAGS字段重要标识

在这里插入图片描述

6.基本的一些概念

在这里插入图片描述
在这里插入图片描述

参考博客

https://blog.csdn.net/qq_44281295/article/details/127110834
https://zhuanlan.zhihu.com/p/631821119
https://blog.csdn.net/to_be_better_wen/article/details/129191378

相关文章:

Wireshark抓包常用指令

1.常用过滤规则 指定源地址&#xff1a; ip.src 10.0.1.123ip.src 10.0.1.123 && udphttp数据链路层&#xff1a;筛选mac地址为04:f9:38:ad:13:26的数据包----eth.src 04:f9:38:ad:13:26筛选源mac地址为04:f9:38:ad:13:26的数据包----eth.src 04:f9:38:ad:13:26网…...

Docker Swarm

Docker Swarm提供 Docker 容器集群服务&#xff0c;是 Docker 官方对容器云生态进行支持的核心方案。将多个 Docker 主机封装为单个大型的虚拟 Docker 主机&#xff0c;快速打造一套容器云平台。 Swarm mode内置 kv 存储功能&#xff0c;提供了众多的新特性&#xff0c;比如&a…...

jupyter notebook安装和删除kernel的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…...

中级深入--day16

爬虫(Spider)&#xff0c;反爬虫(Anti-Spider)&#xff0c;反反爬虫(Anti-Anti-Spider) 之间恢宏壮阔的斗争... Day 1 小黄想要某站上所有的电影&#xff0c;写了标准的爬虫(基于HttpClient库)&#xff0c;不断地遍历某站的电影列表页面&#xff0c;根据 Html 分析电影名字存进…...

【洛谷 P1031】[NOIP2002 提高组] 均分纸牌 题解(贪心)

[NOIP2002 提高组] 均分纸牌 题目描述 有 N N N 堆纸牌&#xff0c;编号分别为 1 , 2 , … , N 1,2,\ldots,N 1,2,…,N。每堆上有若干张&#xff0c;但纸牌总数必为 N N N 的倍数。可以在任一堆上取若干张纸牌&#xff0c;然后移动。 移牌规则为&#xff1a;在编号为 1 …...

E5071C是德科技网络分析仪

描述 E5071C网络分析仪提供同类产品中最高的RF性能和最快的速度&#xff0c;具有宽频率范围和多功能。E5071C是制造和R&D工程师评估频率范围高达20 GHz的RF元件和电路的理想解决方案。特点: 宽动态范围:测试端口的动态范围> 123 dB(典型值)快速测量速度:41毫秒全2端口…...

ViTPose+:迈向通用身体姿态估计的视觉Transformer基础模型 | 京东探索研究院

身体姿态估计旨在识别出给定图像中人或者动物实例身体的关键点&#xff0c;除了典型的身体骨骼关键点&#xff0c;还可以包括手、脚、脸部等关键点&#xff0c;是计算机视觉领域的基本任务之一。目前&#xff0c;视觉transformer已经在识别、检测、分割等多个视觉任务上展现出来…...

Android 播放mp3文件

1&#xff0c;在res/raw中加入mp3文件 2&#xff0c;实现播放类 import android.content.Context; import android.media.AudioManager; import android.media.SoundPool; import android.util.Log;import java.util.HashMap; import java.util.Map;public class UtilSound {pu…...

在OpenStack私有云上安装配置虚拟机

文章目录 零、学习目标一、登录大数据实训云二、创建网络三、创建路由四、添加接口五、创建端口六、添加安全组规则七、创建实例&#xff08;一&#xff09;实例规划&#xff08;二&#xff09;创建实例 - ied&#xff08;三&#xff09;创建实例 - master、slave1与slave2&…...

pyCharm远程DEBUG

第一步&#xff0c;添加一个远程机器的解释器 ssh 远程机器解释器添加&#xff0c; 我本地ssh有配置目标机器。 如果没配置&#xff0c;那就选着new server configuration 新增一个。 interpreter 指定远程机器python&#xff0c; &#xff08;机器上有多个版本python里尤其要…...

微服务框架Go-kit

微服务框架Go-kit go kit简介第一个go kit应用go kit基本概念go kit Endpointsgo kit Endpoint 定义go kit Endpoint 函数签名go kit Endpoint 链式操作go kit Endpoint 请求和响应转换go kit Endpoint 中间件go kit Endpoint 错误处理go kit 传输层go kit HTTP 传输层go kit …...

《王道24数据结构》课后应用题——第三章 栈和队列

第三章 【3.1】 03、 假设以I和O分别表示入栈和出操作。栈的初态和终态均为空&#xff0c;入栈和出栈的操作序列可表示为仅由I和O组成的序列&#xff0c;可以操作的序列称为合法序列&#xff0c;否则称为非法序列。 如IOIIOIOO 和IIIOOIOO是合法的&#xff0c;而IOOIOIIO和II…...

查看linux开发板的CPU频率

1&#xff09;查看CPU可设置的频率列表 cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies 2&#xff09;查看CPU当前所使用的频率&#xff1a; cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq 3&#xff09;设置CPU频率&#xff08;最高…...

对象模型和this指针(个人学习笔记黑马学习)

1、成员变量和成员函数 #include <iostream> using namespace std; #include <string>//成员变量和成员函数分开存储class Person {int m_A;//非静态成员变量 属于类的对象上的static int m_B;//静态成员变量 不属于类的对象上void func() {} //非静态成员函数 不…...

SpringCloudAlibaba常用组件

SpringCloudAlibaba常用组件 微服务概念 1.1 单体、分布式、集群 单体 ⼀个系统业务量很⼩的时候所有的代码都放在⼀个项⽬中就好了&#xff0c;然后这个项⽬部署在⼀台服务器上就 好了。整个项⽬所有的服务都由这台服务器提供。这就是单机结构。 单体应⽤开发简单,部署测试…...

Shotcut for Mac:一款强大而易于使用的视频编辑器

随着数码相机的普及&#xff0c;视频编辑已成为我们日常生活的一部分。对于许多专业和非专业用户来说&#xff0c;找到一个易于使用且功能强大的视频编辑器是至关重要的。今天&#xff0c;我们将向您介绍Shotcut——一款专为Mac用户设计的强大视频编辑器。 什么是Shotcut&…...

【数学建模】2023数学建模国赛C题完整思路和代码解析

C题第一问代码和求解结果已完成&#xff0c;第一问数据量有点大&#xff0c;经过编程整理出来了单品销售额的汇总数据、将附件2中的单品编码替换为分类编码&#xff0c;整理出了蔬菜各品类随着时间变化的销售量&#xff0c;并做出了这些疏菜品类的皮尔森相关系数的热力图&#…...

论数据库的种类

摘要 数据库是现代信息管理和数据存储的重要工具&#xff0c;几乎在各个领域都有广泛应用。不同类型的数据库适用于不同的应用场景和需求。本文将介绍几种常见的数据库种类&#xff0c;并探讨它们的特点和适用范围。 正文 一、关系型数据库&#xff08;RDBMS&#xff09; 关…...

docker笔记4:高级复杂安装-mysql主从复制

1.主从搭建步骤 1.1新建主服务器容器实例3307 docker run -p 3307:3306 --name mysql-master \ -v /mydata/mysql-master/log:/var/log/mysql \ -v /mydata/mysql-master/data:/var/lib/mysql \ -v /mydata/mysql-master/conf:/etc/mysql \ -e MYSQL_ROOT_PASSWORDroot \ -d…...

MySQL卸载干净再重新安装【Windows】

家人们&#xff0c;谁懂啊&#xff1f; 上学期学的数据库&#xff0c;由于上学期不知道为什么抽风&#xff0c;过得十分的迷&#xff0c;上课跟老师步骤安装好了Mysql&#xff0c;但后面在使用的过程中出现了问题&#xff0c;而且还出现了忘记密码这么蠢的操作&#xff0c;后半…...

算法实例分析:使数组相等的最小开销

使数组相等的最小开销通过题意分析可知要让所有值相等&#xff0c;必然不需要超出数据的最大最小值&#xff0c;因此左右边界可以预先缩小范围。然后根据我们上面的分析不断缩小搜索边界范围。关于函数的计算&#xff0c;只要统计所有数据与的差值再乘上权重即可。最后注意&…...

宏裕塑胶携手沙伯基础创新塑料,打造高端工程塑料解决方案

导读&#xff1a;在制造业转型升级的关键节点&#xff0c;高端工程塑料解决方案正成为企业提升产品竞争力的核心要素。宏裕塑胶携手沙伯基础创新塑料&#xff0c;打造高端工程塑料解决方案&#xff0c;通过整合国际顶尖原料资源与本土技术服务能力&#xff0c;为下游企业提供兼…...

中兴B863AV3.2-M刷机避坑指南:S905L3A芯片识别、固件选择与Amlogic USB Burning Tool 2.2.0配置详解

中兴B863AV3.2-M刷机全流程精解&#xff1a;从芯片识别到固件烧录的进阶实践 在智能电视盒的玩家圈子里&#xff0c;中兴B863AV3.2-M因其出色的硬件配置和可玩性备受关注。这款搭载Amlogic S905L3A芯片的设备&#xff0c;通过刷机可以解锁更多功能&#xff0c;但过程中暗藏的&q…...

用Python复现黏菌算法SMA:从生物觅食到代码优化的完整实战

用Python复现黏菌算法SMA&#xff1a;从生物觅食到代码优化的完整实战 黏菌算法&#xff08;Slime Mould Algorithm, SMA&#xff09;作为一种新兴的智能优化算法&#xff0c;近年来在工程优化、机器学习参数调优等领域展现出独特优势。本文将带您从生物行为理解到Python实现&a…...

2026年京东云OpenClaw/Hermes Agent配置Token Plan环境搭建指南

2026年京东云OpenClaw/Hermes Agent配置Token Plan环境搭建指南。OpenClaw是开源的个人AI助手&#xff0c;Hermes Agent则是一个能自我进化的AI智能体框架。阿里云提供计算巢、轻量服务器及无影云电脑三种部署OpenClaw 与 Hermes Agent的方案、百炼Token Plan兼容主流 AI 工具&…...

Input Overlay 完整指南:实时显示键盘、游戏手柄和鼠标输入的终极工具

Input Overlay 完整指南&#xff1a;实时显示键盘、游戏手柄和鼠标输入的终极工具 【免费下载链接】input-overlay Show keyboard, gamepad and mouse input on stream 项目地址: https://gitcode.com/gh_mirrors/in/input-overlay Input Overlay 是一款功能强大的开源输…...

QMCDecode终极指南:三步解锁QQ音乐加密文件,让你的音乐自由播放

QMCDecode终极指南&#xff1a;三步解锁QQ音乐加密文件&#xff0c;让你的音乐自由播放 【免费下载链接】QMCDecode QQ音乐QMC格式转换为普通格式(qmcflac转flac&#xff0c;qmc0,qmc3转mp3, mflac,mflac0等转flac)&#xff0c;仅支持macOS&#xff0c;可自动识别到QQ音乐下载目…...

Moonlight iOS/tvOS:在苹果设备上畅玩PC游戏的终极流媒体方案

Moonlight iOS/tvOS&#xff1a;在苹果设备上畅玩PC游戏的终极流媒体方案 【免费下载链接】moonlight-ios GameStream client for iOS/tvOS 项目地址: https://gitcode.com/gh_mirrors/mo/moonlight-ios Moonlight iOS/tvOS 是一款专为苹果生态系统设计的开源游戏流媒体…...

ElevenLabs广东话语音商用避坑清单:92%开发者忽略的版权边界、方言标注规范与GDPR合规红线

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;ElevenLabs广东话语音商用落地的现实困局 ElevenLabs 作为全球领先的AI语音生成平台&#xff0c;其英语、西班牙语等主流语言模型已广泛应用于客服、播客与教育场景。然而&#xff0c;当尝试将其语音合成能力延…...

Hertz.dev实时音频对话实战:构建智能语音助手的最佳实践指南

Hertz.dev实时音频对话实战&#xff1a;构建智能语音助手的最佳实践指南 【免费下载链接】hertz-dev first base model for full-duplex conversational audio 项目地址: https://gitcode.com/gh_mirrors/he/hertz-dev Hertz.dev是一个开创性的全双工会话音频基础模型&a…...