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

将 Tcpdump 输出内容重定向到 Wireshark

在 Linux 系统中使用 Tcpdump 抓包后分析数据包不是很方便。

通常 Wireshark 比 tcpdump 更容易分析应用层协议。

一般的做法是在远程主机上先使用 tcpdump 抓取数据并写入文件,然后再将文件拷贝到本地工作站上用 Wireshark 分析。

还有一种更高效的方法,可以通过 ssh 连接将抓取到的数据实时发送给 Wireshark 进行分析。


经过我的测试,已经实现把 Tcpdump 抓到的数据包转到 Windows 环境中用 Wireshark 打开。

方式1:数据包文件的拷贝

思路:Tcpdump 抓包并保存包数据文件,再把保存的包数据文件拷贝到 Windows 中,最后使用 Windows 上安装的 Wireshark 打开包数据文件。

使用工具:Xshell (使用 Xshell 连接远程主机)+ Xftp (把远程主机上的包数据拷贝到本地)

使用 Xshell 和 Xftp 连接远程主机的过程省略……

假设你已经很熟悉在 Linux 环境下使用 tcpdump 命令和在 Windows 环境下使用 wireshark 基础操作了。

tcpdump 官方文档:

tcpdump(1) man page | TCPDUMP & LIBPCAP

比如:我要在远程主机上抓取 eth0 网卡的 20 条 tcp 数据包,并保存为 test.pcap 文件:

tcpdump -i eth0 -c 20 tcp -w test.pcap

上面的命令,我是 cd 进入 /usr/local/tcpdump 目录下执行的。

所以,我用 Xftp工具打开此目录后就看到生成的包文件 test.pcap 

用 Xftp 工具把 Linux 中的文件 test.pcap 下载到 Windows 中

接下来使用 Wireshark 打开 test.pcap 包文件,此时即可分析抓到的 20 条 tcp 数据包

方式2:通过 ssh 连接远程主机,将 tcpdump 抓取到的数据包实时发送给 Wireshark 进行分析

思路:Windows 环境中使用 ssh 命令实现远程主机登录,登录后用 tcpdump 命令抓包并把数据包设置标准输出,运行 wireshark 程序从标准输入读取包数据。

工具:cmd 控制台 + Wireshark

1.右击 wireshark 进入到安装目录,在目录栏输入cmd ,然后回车进入 cmd 控制台。

2.准备命令

2.1 先在打开的 cmd 控制台中测试这条命令:ssh root@xxx.xxx.xxx.xxx -p 22

ssh 命令用于通过 SSH 协议连接到远程主机,实现远程登录和执行命令,它加密会话中的所有通信,确保数据传输的安全性。

ssh root@xxx.xxx.xxx.xxx -p 22

参数说明

  • [root@]xxx.xxx.xxx.xxx:要连接的远程主机的用户名和主机名。
  • -p 22:指定连接到远程主机的端口号。

根据提示输入远程主机的密码,登录远程主机

2.2 登录成功后在远程主机抓取 eth0 网卡的 20 条 tcp 数据包的命令

tcpdump -i eth0 -c 20 tcp

通过以上两步可以知道目前和远程主机是建立连接的。

2.3 Wireshark 命令

在 wireshark 官网找到文档,选择自己需要的命令

线鲨(1) (wireshark.org)icon-default.png?t=N7T8https://www.wireshark.org/docs/man-pages/wireshark.html比如:我后续会新打开 wireshark 安装目录进入 cmd 控制台,输入: Wireshark.exe -k -i - 

命令拆分,说明:

(1)Wireshark.exe(可以看看你的安装目录是不是这个名称),在 cmd 控制台启动 wireshark 应用程序

(2)-k -i -

官网文档中说:-k 是立即捕获会话;-i - 表示从标准输入读取数据。

如果在 cmd 控制台执行命令:Wireshark.exe -k -i -

命令则会打开 Windows 中安装的 wireshark 程序并开始监听(-i - 从标准输入读取数据)。

3. 把刚才的命令组合起来

命令组合初期的样子:

ssh root@xxx.xxx.xxx.xxx -p 22  tcpdump -i eth0 -c 20 tcp  Wireshark.exe -k -i -

看起来是这个样子,但现在有个问题是“抓包的数据怎么传送?”,所以组合后的命令还不完整,接下来对 tcpdump 的抓包命令进行改进。查看 tcpdump 官方文档。

通过文档可以知道 -l -w - 对我接下来有用。

比如:抓取 eth0 网卡的 20 条 tcp 数据包输出到标准输出。

命令是:tcpdump -i etho -c 20 tcp -l -w -


回头看刚才的 “Wireshark.exe -k -i -”是从标准输入读取数据,那么现在“tcpdump -i etho -c 20 -l -w -”是输出到标准输出,再结合 ssh 命令则可以实现:远程 + 输出包数据 + 读取包数据

4. ssh + tcpdump + wireshark

新打开一个wireshark安装目录的 cmd 控制台,输入命令:

ssh root@xxx.xxx.xxx.xxx -p 22 "tcpdump -i eth0 -c 20 tcp -l -w -" | Wireshark.exe -k -i -

接着 cmd 控制台会提示让输入登录远程主机的密码,同时 Wireshark 程序启动。

输入密码后回车,远程连接主机成功,然后执行 tcpdump 抓包,同时包数据在 wireshark 程序中呈现。

方式3:在远程主机打开本地的 wireshark 软件

方式3参考下面的博客,但是没有成功。

因为方式一和方式二已经够用了,所以后续在测试方式三……

参考:Linux下使用Wireshark抓包教程_wireshark linux-CSDN博客

相关文章:

  • 数据结构——栈的讲解(超详细)
  • vLLM CPU和GPU模式署和推理 Qwen2 等大语言模型详细教程
  • 求职 day13总结
  • 将电脑打造成私人网盘,支持外网访问之详细操作教程
  • Vue3学习笔记第一天
  • 数据预处理和探索性数据分析(上)
  • 网络分段如何增强 OT 网络的可见性
  • 数据库原理面试-核心概念-问题理解
  • php strtr其他语言实现
  • RSA加密
  • 接口基础知识6:详解http request body(一篇讲完常见请求体)
  • 电商系统价格字段的后端存储设计
  • 【C语言】位段详解
  • 基于Android aosp系统的云手机chrome浏览器定制
  • 十三、代理模式
  • [分享]iOS开发 - 实现UITableView Plain SectionView和table不停留一起滑动
  • 【翻译】babel对TC39装饰器草案的实现
  • 【腾讯Bugly干货分享】从0到1打造直播 App
  • 2017前端实习生面试总结
  • Angularjs之国际化
  • Bytom交易说明(账户管理模式)
  • Idea+maven+scala构建包并在spark on yarn 运行
  • javascript 哈希表
  • Java面向对象及其三大特征
  • Mysql数据库的条件查询语句
  • 分类模型——Logistics Regression
  • 高性能JavaScript阅读简记(三)
  • 前端之React实战:创建跨平台的项目架构
  • 浅谈Kotlin实战篇之自定义View图片圆角简单应用(一)
  • 如何使用 OAuth 2.0 将 LinkedIn 集成入 iOS 应用
  • 主流的CSS水平和垂直居中技术大全
  • - 转 Ext2.0 form使用实例
  • 阿里云IoT边缘计算助力企业零改造实现远程运维 ...
  • ​2020 年大前端技术趋势解读
  • ​Java基础复习笔记 第16章:网络编程
  • # Redis 入门到精通(七)-- redis 删除策略
  • #laravel部署安装报错loadFactoriesFrom是undefined method #
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (HAL库版)freeRTOS移植STMF103
  • (LeetCode C++)盛最多水的容器
  • (M)unity2D敌人的创建、人物属性设置,遇敌掉血
  • (附源码)springboot掌上博客系统 毕业设计063131
  • (教学思路 C#之类三)方法参数类型(ref、out、parmas)
  • (算法)N皇后问题
  • (一)springboot2.7.6集成activit5.23.0之集成引擎
  • (转)JVM内存分配 -Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m
  • (转)Linux NTP配置详解 (Network Time Protocol)
  • (转)微软牛津计划介绍——屌爆了的自然数据处理解决方案(人脸/语音识别,计算机视觉与语言理解)...
  • (最新)华为 2024 届秋招-硬件技术工程师-单板硬件开发—机试题—(共12套)(每套四十题)
  • .Net - 类的介绍
  • .NET 4.0中的泛型协变和反变
  • .NET 8 跨平台高性能边缘采集网关
  • .NET 药厂业务系统 CPU爆高分析
  • .net 重复调用webservice_Java RMI 远程调用详解,优劣势说明
  • [AI StoryDiffusion] 创造神奇故事,AI漫画大乱斗!