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

Wireshark 用命令行分析数据包

1,那些情况需要使用命令行

  • Wireshark一次性提供了太多的信息。使用命令行工具可以限制打印出的信息,最后只显示相关数据,比如用单独一行来显示IP地址。
  • 命令行工具适用于过滤数据包捕获文件,并提供结果给另一个支持UNIX管道的工具。
  • 当处理大量的捕获文件时,Wireshark可能会挂掉,因为整个文件都要载入内存当中。先使用流来处理大型捕获文件,可以让你快速地过滤出相关数据包,给文件瘦身。
  • 在没有图形化界面的服务器上操作,则这个时候你可能不得不依靠命令行工具。

2,常用的命令行工具

  • TShark(主要学习)
  • Tcpdump(用于UNIX系统,知道就行)

3,安装TShark

  • TShark是基于终端的Wireshark,它是能够提供大量和Wireshark功能相同的数据包分析工具,但仅限于没有GUI的命令行界面。
  • TShark一般是随Wireshark附带安装的。可打开Wireshark安装目录,使用cmd打开控制台,使用tshark -v查看是否安装。

在这里插入图片描述

4,捕获和保存流量

  • 如何把当前流量捕获下来的并把它们打印到屏幕上。要在TShark里捕获,仅需要执行命令tshark。此命令会从网卡开始抓取当前流量。

    • 在这里插入图片描述
  • 根据你的系统配置,可有由于电脑安装有虚拟机等原因,TShark不会默认从你设想的网卡抓取流量。这种情况需要你手动选择网卡。可以使用TShark的**-D**参数来列出当前的可用网卡,系统会以数字的形式打印出网卡信息。

    • 在这里插入图片描述
  • 要选择其中一个网卡,可使用命令tshark -i +上网卡序号 。随后程序便开始捕获流量

    • 在这里插入图片描述
  • 要将抓到的包存为文件,可使用**-w参数加上要保存的文件名。抓包进程会持续进行,除非按下Ctrl+C**终止抓包。流量文件会直接保存在当前执行命令的目录下。

    • 在这里插入图片描述
  • 要想从保存的文件中回读数据包,可使用**-r**参数加上文件名。

    • 在这里插入图片描述
  • 如果要读取的文件包含了太多的数据包,那么一大堆的信息在屏幕上滚动导致什么都看不清。这时可使用参数**-c**来限制在屏幕上显示的数据包数量。

    • 在这里插入图片描述
  • 抓包的时候也可以使用**-c**参数,表示只获取抓包数据的前xx个包,获取到后程序会自动停止抓包。

    • 在这里插入图片描述

5,控制输出

  • 使用命令行工具的另一个优点是可以自定义输出。一般GUI应用会把所有的信息都告诉你,然后你可以自行寻找所需的内容。命令行工具通常只会显示最简输出,并强制你使用额外的命令参数来挖掘更高级的用法,TShark默认情况下只会为一个数据包显示一行输出。如果你想看到协议细节或者单独字节这些更深入的内容,就需要使用额外的命令参数。

  • TShark的输出中,每一行代表一个数据包,每一行输出的格式取决于数据包使用的协议类型。

  • TShark中,使用大写的V来增加冗余。

    • 在这里插入图片描述
  • TShark中,可以使用**-x参数来查看数据包的ASCII形式或十六进制字节形式,同时结合-r参数把捕获文件读取到TShark**里并显示出来。

    • 在这里插入图片描述

6,名称解析

  • 即把地址和端口号转换为名称。

  • 可以通过-n参数来禁用TShark的名称解析。如

    • tshark -ni 2              2本地网卡,即禁用本地网卡的名称解析
      
  • 可以通过-N参数来启用或禁用一些名称解析的特定功能。如果使用-N参数,则所有的名称解析功能将会被禁用,除非指定一些功能的启用。如启用传输层(端口服务名称)的解析。

    • tshark -i 2 -Nt
      
  • 你也可以结合多个值,下面命令会启用传输层和MAC层的解析。

    • tshark -i 2 -Ntm
      
  • 使用-N选项时的可参考值

    • m:MAC地址解析
      n:网络地址解析
      t:传输层(端口服务名称)解析
      N:使用外网解析服务
      C:使用当前DNS解析
      

7,应用过滤器

  • TShark可以使用Wireshark的显示过滤器表达式。

  • TShark的捕获过滤器可以边捕获边过滤,也可以在捕获完成后过滤显示结果。

  • 使用**-f参数来应用捕获过滤器,在双引号内填写表达式。如下面命令仅会**抓取和存储目的端口号是80的TCP流量

    • tshark -ni 2 -w test.pcap -f "tcp port 80"
      
  • 使用**-Y**来应用显示捕获器,在双引号内使用wireshark的过滤器语法。

    • tshark -ni 2 -w test.pcap -Y "tcp.dstport == 80"
      

8,TShark里的时间显示格式

  • TShark显示的是默认时间戳。它显示从数据包捕获开始的相对时间戳。

  • 使用**-t**参数可以更改这种格式。

  • 在这里插入图片描述

  • TShark中的可用时间显示格式

    时间戳示例
    a包被捕获的绝对时间(你所在的地区)17:40:50.003322
    ad包被捕获的带日期的绝对时间(你所在的地区)2023-05-03 15:20:29.044451
    d自之前捕获的数据包以来的增量(时差)0.000140
    dd之前显示的数据包0.000140
    e亿元时间(1970年1月1日以来的秒数)1444420078.004669
    r第一个数据包和当前数据包之间的运行时间0.000140
    u捕获数据包的绝对时间(UTC)21:40:50.003322
    ud带日期的捕获数据包的绝对时间(UTC)2023-05-03 21:20:29.044451

相关文章:

Wireshark 用命令行分析数据包

1,那些情况需要使用命令行 Wireshark一次性提供了太多的信息。使用命令行工具可以限制打印出的信息,最后只显示相关数据,比如用单独一行来显示IP地址。命令行工具适用于过滤数据包捕获文件,并提供结果给另一个支持UNIX管道的工具…...

LVS DR模式负载均衡群集部署

目录 1 LVS-DR 模式的特点 1.1 数据包流向分析 1.2 DR 模式的特点 2 DR模式 LVS负载均衡群集部署 2.1 配置负载调度器 2.1.1 配置虚拟 IP 地址 2.1.2 调整 proc 响应参数 2.1.3 配置负载分配策略 2.2 部署共享存储 2.3 配置节点服务器 2.3.1 配置虚拟 IP 地址 2.3.2…...

探讨前后端分离开发的优势、实践以及如何实现更好的用户体验?

随着互联网技术的迅猛发展,前后端分离开发已经成为现代软件开发的一种重要趋势。这种开发模式将前端和后端的开发工作分开,通过清晰的接口协议进行通信,旨在优化开发流程、提升团队协作效率,并最终改善用户体验。本文将深入探讨前…...

微博一面:JVM预热,你的方案是啥?

说在前面 在40岁老架构师 尼恩的读者社区(50)中,最近有小伙伴拿到了一线互联网企业如微博、阿里、汽车之家、极兔、有赞、希音、百度、网易、滴滴的面试资格,遇到一几个很重要的面试题: JVM预热,你的方案是啥?Springb…...

open与fopen的区别

1. 来源 从来源的角度看,两者能很好的区分开,这也是两者最显而易见的区别: open是UNIX系统调用函数(包括LINUX等),返回的是文件描述符(File Descriptor),它是文件在文件…...

Unity记录一些glsl和hlsl的着色器Shader逆向代码

以下内容一般基于 GLSL 300 之后 以下某些代码行,是“伪代码“,绝大部分是renderDoc 逆向产生标准代码 本人OpenlGL零基础,也不打算重头学 目录 Clip() 剔除函数 discard; FS最终颜色输出 out 和最终颜色相加方程…...

基于Sentinel的微服务保护

前言 Sentinel是Alibaba开源的一款微服务流控组件,用于解决分布式应用场景下服务的稳定性问题。Sentinel具有丰富的应用场景,它基于流量提供一系列的服务保护措施,例如多线程秒杀情况下的系统承载,并发访问下的流量控制&#xff…...

Collectors类作用:

一、Collectors类: 1.1、Collectors介绍 Collectors类,是JDK1.8开始提供的一个的工具类,它专门用于对Stream操作流中的元素各种处理操作,Collectors类中提供了一些常用的方法,例如:toList()、toSet()、to…...

LASSO回归

LASSO回归 LASSO(Least Absolute Shrinkage and Selection Operator,最小绝对值收敛和选择算子算法)是一种回归分析技术,用于变量选择和正则化。它由Robert Tibshirani于1996年提出,作为传统最小二乘回归方法的替代品。 损失函数 1.线性回…...

机器学习中的 K-均值聚类算法及其优缺点。

K-均值聚类算法是一种常见的无监督学习算法,它可以将数据集分成 K 个簇,每个簇内部的数据点尽可能相似,而不同簇之间的数据点应尽可能不同。下面详细讲解 K-均值聚类算法的优缺点: 优点: 简单易用:K-均值…...

云计算与虚拟化

一、概念 什么是云计算? 云计算(cloud computing)是分布式计算的一种,指的是通过网络“云”将巨大的数据计算处理程序分解成无数个小程序,然后,通过多部服务器组成的系统进行处理和分析这些小程序得到结果…...

Linux常见进程类别

目录 常见进程类别 守护进程&精灵进程 任务管理 进程组 作业 作业 | 进程组 会话 w命令 守护进程 守护进程的创建 setsid()函数 daemon()函数 模拟实现daemon函数 前台进程 | 后台进程 僵尸进程 | 孤儿进程 僵尸进程的一些细节 守护进程 | 后台进程 守护…...

智能小车之蓝牙控制并测速小车、wife控制小车、4g控制小车、语音控制小车

目录 1. 蓝牙控制小车 2. 蓝牙控制并测速小车 3. wifi控制测速小车 4. 4g控制小车 5. 语音控制小车 1. 蓝牙控制小车 使用蓝牙模块,串口透传蓝牙模块,又叫做蓝牙串口模块 串口透传技术: 透传即透明传送,是指在数据的传输过…...

指针进阶(一)

指针进阶 1. 字符指针面试题 2. 指针数组3. 数组指针3.1 数组指针的定义3.2 &数组名VS数组名 3.3 数组指针的使用4. 数组传参和指针传参4.1 一维数组传参4.2 二维数组传参4.3 一级指针传参4.4 二级指针传参 前言 指针的主题,我们在初级阶段的《指针》章节已经接…...

c# sql 判断表中是否包含指定字段

你可以使用以下方法来判断一个 SQL 数据库中的表是否包含指定的字段。 首先,你需要连接到数据库,然后执行一条 SQL 查询语句来检查表结构。你可以使用 SELECT 语句和 INFORMATION_SCHEMA.COLUMNS 系统视图来获取表中的所有列信息。 下面是一个示例代码…...

08-JVM垃圾收集器详解

上一篇:07-垃圾收集算法详解 如果说收集算法是内存回收的方法论,那么垃圾收集器就是内存回收的具体实现。 虽然我们对各个收集器进行比较,但并非为了挑选出一个最好的收集器。因为直到现在为止还没有最好的垃圾收集器出现,更加没…...

sql_mode详解

文章目录 一、sql_mode作用二、查询sql_mode三、mysql8默认的mode配置(6个默认配置)四、常见mode详细解释mysql8默认配置了的mode(6个)需要自己配置的mode(4个) 五、设置sql_mode(一旦设置了&am…...

Vue3的新特性总结

一、Vue3 里 script 的三种写法 首先&#xff0c;Vue3 新增了一个叫做组合式 api 的东西&#xff0c;英文名叫 Composition API。因此 Vue3 的 script 现在支持三种写法。 1、最基本的 Vue2 写法 <template><div>{{ count }}</div><button click"…...

【Node】Mac多版本Node切换

1、查看当前电脑是否安装node node -v或者查看当前电脑通过brew安装的node路径 ls /usr/local/Cellar/node*2、查看可安装的node brew search node3、安装其他版本node 下载需要安装的node版本 brew install node144、brew切换node版本 假设之前的版本是18&#xff0c;需…...

Apache POI

POI介绍 Apache POI是用Java编写的免费开源的跨平台的Java API&#xff0c; Apache POI提供API给Java程序对Microsoft Office格式档案读和写的功能&#xff0c; 其中使用最多的就是使用POI操作Excel文件。 maven坐标&#xff1a; <dependency><groupId>org.apa…...

Python爬虫实战:研究MechanicalSoup库相关技术

一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...

地震勘探——干扰波识别、井中地震时距曲线特点

目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波&#xff1a;可以用来解决所提出的地质任务的波&#xff1b;干扰波&#xff1a;所有妨碍辨认、追踪有效波的其他波。 地震勘探中&#xff0c;有效波和干扰波是相对的。例如&#xff0c;在反射波…...

设计模式和设计原则回顾

设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...

java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别

UnsatisfiedLinkError 在对接硬件设备中&#xff0c;我们会遇到使用 java 调用 dll文件 的情况&#xff0c;此时大概率出现UnsatisfiedLinkError链接错误&#xff0c;原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用&#xff0c;结果 dll 未实现 JNI 协…...

iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版​分享

平时用 iPhone 的时候&#xff0c;难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵&#xff0c;或者买了二手 iPhone 却被原来的 iCloud 账号锁住&#xff0c;这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...

最新SpringBoot+SpringCloud+Nacos微服务框架分享

文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的&#xff0c;根据Excel列的需求预估的工时直接打骨折&#xff0c;不要问我为什么&#xff0c;主要…...

如何在看板中有效管理突发紧急任务

在看板中有效管理突发紧急任务需要&#xff1a;设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP&#xff08;Work-in-Progress&#xff09;弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中&#xff0c;设立专门的紧急任务通道尤为重要&#xff0c;这能…...

C++ 基础特性深度解析

目录 引言 一、命名空间&#xff08;namespace&#xff09; C 中的命名空间​ 与 C 语言的对比​ 二、缺省参数​ C 中的缺省参数​ 与 C 语言的对比​ 三、引用&#xff08;reference&#xff09;​ C 中的引用​ 与 C 语言的对比​ 四、inline&#xff08;内联函数…...

解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错

出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上&#xff0c;所以报错&#xff0c;到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本&#xff0c;cu、torch、cp 的版本一定要对…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)

🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...