常见的几种网络抓包及协议分析工具

article/2025/11/7 2:41:09

常见的几种网络抓包及协议分析工具

引言

网络工程师必备技能-抓取网络数据。

在本篇博客中,我们将集中记下几个问题进行探讨:

  • 如何抓取电脑本机发送/接收的网络数据?
  • 如何在主机 A 上抓取 主机 B 上的网络数据?
  • 如何使用第三方设备抓取抓取 主机A 与 主机B 的网络数据?

Wireshark

Wireshark 是免费的抓取数据包、分析数据包的工具,兼容 Windows、Linux、Mac等主流平台。

使用 wireshark 抓包需要的工具是:安装了 wireshark 的 PC。

wireshark 抓包的范围是:抓取安装了 wireshark 的 PC 本机的网卡上流经的数据包。

其中,网卡指的是 PC 上网使用的模块,常见的包括:以太网网卡、wifi 无线网卡,PC 分别使用它们用于连接以太网、wifi 无线网络。

linux 或在 windows 下分别可使用 ifconfig 命令或者 ipconfig /all命令查看当前 PC 上已经安装了哪些网卡。以 linxu 系统为例子,在 linux 输入 ifconfig命令:

$ ifconfig
enp2s0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500ether 40:89:84:3c:6b:60  txqueuelen 1000  (以太网)RX packets 0  bytes 0 (0.0 B)RX errors 0  dropped 0  overruns 0  frame 0TX packets 0  bytes 0 (0.0 B)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0device interrupt 16  lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536inet 127.0.0.1  netmask 255.0.0.0inet6 ::1  prefixlen 128  scopeid 0x10<host>loop  txqueuelen 1000  (本地环回)RX packets 12251  bytes 1382881 (1.3 MB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 12251  bytes 1382881 (1.3 MB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0wlp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.0.102  netmask 255.255.255.0  broadcast 192.168.0.255inet6 fe80::2ffd:2ae9:e62a:a40b  prefixlen 64  scopeid 0x20<link>ether 1c:d0:5a:4b:7d:d2  txqueuelen 1000  (以太网)RX packets 398700  bytes 540655478 (540.6 MB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 149381  bytes 20219957 (20.2 MB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

上述命令显示该台 linux 主机有两个网卡:一个以太网网卡:enp2s0,一个无线网卡:wlp3s0。

windows 下可以打开 cmd 窗口,输入 ipconfig /all 查看本机的网卡情况:

在这里插入图片描述
在使用 wireshark 时,可以选中这查询到的本机网卡,抓取通过以太网网卡的数据或者通过 wifi 无线网卡交互的数据。
在这里插入图片描述
**注意:**打开 wireshark 软件时,可能需要打开管理员权限才能正确打开上述界面。linux 下打开 wireshark 软件时,使用 sudo wireshark,命令打开它;windows 下打开 wireshark 时,右键选择以管理员权限打开

一些 wireshark 使用的示例可参考 wireshark基本使用(如果你感兴趣,可以留言或者点赞,你的支持,就是我的动力奥)。

wireshark 通常只能抓取本机(通常是电脑)网卡的发送和接受的网络数据,不能抓取其他主机、其他网络设备如路由器的网络数据。当一些设备是简单的网络设备,如手环、手机时,这些设备无法安装 wireshark,此时便无法通过这种方法进行抓包分析。

带抓包功能的路由器

路由器是网络环境中转发数据的设备,现在的路由器不仅提供以太网网线连接的功能,也充当 wifi 连接热点,有时为了分析网络数据,定位网络问题,拥有一台带抓包功能的路由器实在是开发人员的福利。

一些路由器提供了 开发者选项的功能,如这款华为 P20 型号的路由器,通过网页登陆路由器后,可以看到它提供了如图 2-1 所示的系统设置功能,在该选项下,可以使用如图 2-2 所示的“开发者选项”功能,该功能可以用于抓取流经路由器的数据包。但是,目前考虑到一些数据安全问题,拥有该功能的路由器不多,但对于网络设备的开发者而言,拥有一台这样的路由器是在是方便很多了。
在这里插入图片描述

图 2-1

在这里插入图片描述

图 2-2

路由器抓包功能可以抓取大部分流经路由器的数据,这为在一台主机 A 上,抓取局域网内另一台主机B的网络数据提供了方法(因为A与B连接的是同一个路由器,A <–>路由器<–>B,启动抓包后,经过路由器的数据包被记录下来,A 可以查看记录的数据包,分析主机B 的网络情况 )。如图 2-3,在 A 主机上,登陆路由器的网页,并点击开始抓包,抓取一定时间后,点击结束抓包,稍等一段时间后将提示正在下载抓取的数据包文件。在示例中,该文件为 如图 2-3 右上角pktDump.cap文件,它可以通过 wireshark 软件打开,并进行分析。
在这里插入图片描述

图 2-3

如图,在 wireshark 的数据包过滤选项中输入主机 B 的网卡 mac 地址,可以在主机 A 上查看 主机 B 发送到路由器以及路由器转发数据到主机 B 的数据(即主机 B发送和接收的数据)。

在这里插入图片描述

图 2-4

抓包网卡

抓包网卡是一种特殊的网卡,通常用于作为网络嗅探、网络扫描。当通信双方既不是能安装类似 wireshark 抓包工具,也不是能提供抓包功能的路由器时。比如通信双方是两个 wifi 模组(没有屏幕、键盘、windows/linux 系统)时,我们就无法使用上述两种方法实现抓取 A 和 B 的数据包了。一种常用的方法是使用抓包网卡,并配合特殊的抓包软件 Omnipeek(全称 WildPackets Omnipeek,空中无线抓包,并提供网络故障诊断功能),抓取并分析 A 和 B 的数据包。

如图 3-1 所示,A、B、C 三个主机在进行无线通信,抓包网卡 Omnipeek 的作用类似于一个“雷达”,接收它们三者的通信流量。其会将接收的通信数据保存到一个文件内,该文件可以被 wireshark 等网络分析软件打开分析。
在这里插入图片描述

图 3-1

常见的 Omnipeek 抓包网卡形状如下,它们有的像 U 盘,有的像天线。感谢强大的互联网,在很多电商平台,搜索 抓包网卡,我们就能看到很多类似的设备:
在这里插入图片描述

图 3-2

同样的,搜索关键字OmniPeek,我们也能看到一些如何安装及使用 OmniPeek软件的教程。

如果感兴趣,后续我将提供两个典型的案例,简要说明如何使用这种方法进行抓包(点赞更新快)。

其他抓包软件或者工具

就如同使用电工师傅测量电路的电流、电压一样,网络开发维护人员使用上述网络分析工具测量网络情况。除上述几种网络抓包分析工具外,常见的网络分析工具还有 Wirelessmon、Inssider、ixia chariot和 iperf 等工具,读者可自行搜索并了解它们。

点关注,不迷路。关注我,及时获取后续更新,Thanks.

码字不易,欢迎点赞及收藏。


http://chatgpt.dhexx.cn/article/Ii8QatI8.shtml

相关文章

WireShark抓包分析

简述&#xff1a;本文介绍了抓包数据含义&#xff0c;有TCP报文、Http报文、DNS报文。如有错误&#xff0c;欢迎指正。 1、TCP报文 TCP&#xff1a;&#xff08;TCP是面向连接的通信协议&#xff0c;通过三次握手建立连接&#xff0c;通讯完成时要拆除连接&#xff0c;由于TCP …

抓包分析数据(Charles以及HttpCanary)

在开发小程序时&#xff0c;我们经常需要检查线上的请求&#xff0c;但是小程序并没有提供这方面的入口&#xff0c;本文为大家详细说一下我工作中使用到的关于抓包的经验&#xff0c;包括pc配合手机以及直接用手机抓包 一.pc配合手机实现抓包&#xff08;Charles&#xff09;…

wireshark抓包分析TCP数据包

1、直接从TCP的三次握手开始说起 三次握手就是客户与服务器建立连接的过程 客户向服务器发送SYN&#xff08;SEQx&#xff09;报文&#xff0c;然后就会进入SYN_SEND状态服务器收到SYN报文之后&#xff0c;回应一个SYN&#xff08;SEQy&#xff09;ACK&#xff08;ACKx1&…

wireshark抓ping数据包以及简单分析

目录 相关知识 1.Ping原理 2.ICMP报文协议 3.wireshark 一、wireshark抓数据包 二、报文分析 三、总结 相关知识 1.Ping原理 Ping是一句DOS 命令&#xff0c;一般用于检测网络通与不通 &#xff0c;也叫时延&#xff0c;其值越大&#xff0c;速度越慢 PING (Packet Inte…

wireshark抓包数据:理解与分析

注明&#xff1a;本文为原创文章&#xff0c;转载请注明出处。参考文章见本文末尾。 wireshark是一个非常好用的抓包工具&#xff0c;本文根据平时抓包经验&#xff0c;对之前wireshark抓包的一些常见知识点进行了整理。 有不当之处&#xff0c;欢迎指正 1.SYN&#xff0c;F…

WireShark抓包后数据分析

在分析数据之前&#xff0c;我们先了解一下我们传输数据的结构体系&#xff0c;如下图&#xff1a; 这是两种体系&#xff0c;我们常用的一般都是TCP/IP体系结构。 TCP/IP体系架构分析 不难发现&#xff0c;TCP/IP体系中包含着很多我们熟悉的协议&#xff0c;比如说&#xff1…

Wireshark --> 抓包(网络分析)工具

前言 贴一张wireshark抓包的总图&#xff0c;便于理解分析网络分层 ​ 为了让大家更容易「看得见」 TCP&#xff0c;我搭建不少测试环境&#xff0c;并且数据包抓很多次&#xff0c;花费了不少时间&#xff0c;才抓到比较容易分析的数据包。 接下来丢包、乱序、超时重传、…

Wireshark抓包工具使用以及数据包分析

多年之后&#xff0c;愿你有清风与烈酒&#xff0c;也有人是你的归途。 打开Wireshark抓包工具开始抓包会看到如下展开内容&#xff1a; 这里我是对wlan进行抓包&#xff0c;192.168.2.112是我当前wifi的ip地址。 点击某个包&#xff0c;可以查看具体内容&#xff0c;差不多刚…

使用wireshark抓网络报文(抓包)并分析其中数据

如何使用wireshark抓网络报文&#xff08;抓包&#xff09; 1、 物理层数据帧2、 数据链路层以太网帧头部信息3、 互联网层 IP 包头部信息4、 传输层 TCP 数据段头部信息 本文包内容分析转载自下午茶的芬芳&#xff0c;感谢作者的分享。 网络下载好wireshark打开软件按下开始捕…

wireshark抓包分析数据怎么看 wireshark使用教程

大家都知道Wireshark是非常流行且知名的网络抓包数据分析工具&#xff0c;可以截取各种网络数据包&#xff0c;并显示数据包详细信息&#xff0c;常用于开发测试过程各种问题定位、网络故障排查等情况。但是很多网友不清楚如何使用Wireshark抓包看数据&#xff0c;下面IT备忘录…

Wireshark网络抓包分析

目录 1. 以太网协议头(数据链路层) -- 14byte 2. IP数据头(网络层) -- 20byte 3. ARP抓包分析 3.1 ARP介绍 3.2 报文格式 3.3 抓包分析 3.3.1 先arp -d把arp表清空。 3.3.2 过滤ARP协议的数据包 3.3.3 Ping 目标IP 3.3.4 第一个数据包请求分析 3.3.5 第二个数据包应…

利用python简单分析抓包数据

利用python简单分析抓包数据 wireshark的数据 先读一行看看长啥样 import json data_file rE:\download\data.json with open(data_file,r,encodingutf8) as f:data_list json.loads(f.read())print(data_list[0])用格式化工具看 完整代码&最终结果 import jsondata_…

wireshark抓包分析ping数据包

目录 1.抓取数据包 2&#xff0e;ping request数据包解析 2.1 ICMP 2.2 传输层 2.3 以太帧 2.3 数据链路层 3. ping reply数据包解析 1.抓取数据包 先用管理员权限打开WireShark应用&#xff0c;并在条件过滤栏输入“icmp”。打开cmd&#xff0c;输入:ping www.baidu.co…

Wireshark-----抓包分析

目录 一、Wireshark简介 二、安装与使用 三、抓包分析 1.初次抓包 2.捕获选项设置 3.ARP协议抓包分析 4.IP协议抓包分析 5.TCP协议抓包分析 6.UDP协议抓包分析 7.ICMP协议抓包分析 参考文献 一、Wireshark简介 Wireshark是一款世界范围最广、最好用的网络封包分析软件…

计算机网络——数据包抓取与分析

数据包抓取与分析 目录 一、实验目的 二、实验内容 三、实验环境 四、实验步骤与过程 一、实验目的 学习安装、使用协议分析软件&#xff0c;掌握基本的数据报捕获、过滤和协议的分析技巧&#xff0c;能对抓取数据包进行分析。 二、实验内容 协议分析软件的安装和使用、学…

抓包与分析

&#xff08;一&#xff09;作业目的 &#xff08;1&#xff09;了解网络通信的分层实现过程&#xff0c;了解不同层次PDU的逐层封装与解封过程&#xff1b; &#xff08;2&#xff09;了解数据通信的过程&#xff0c;进一步认知协议的构成与通信过程&#xff0c;进而对TCP/IP分…

Wireshark抓包分析基础

Wireshark抓包分析 &#xff08;仅作为个人笔记&#xff0c;如有雷同&#xff0c;请联系删除。。&#xff09; 下载&#xff1a;https://www.wireshark.org/#download 1、设置时间格式&#xff1a;视图–>时间显示格式 2、设置解析&#xff1a;视图–>Name Resoluti…

Java抓包分析四(基于jnetpcap进行抓包)——分析Http请求数据包

在上篇文章中Java抓包分析三&#xff08;基于jnetpcap进行抓包&#xff09;——抓取Http请求数据包&#xff0c;我们讲解了TCP三次握手的过程和如何抓取Http数据包&#xff0c;但是我们并没有进行一个数据分析&#xff0c;接下来这篇文章我们将要开始对Http抓取的数据报进行深入…

【HTTP】Fiddler(二) - 使用Fiddler做抓包分析

上文( http://blog.csdn.net/ohmygirl/article/details/17846199 )中已经介绍了Fiddler的原理和软件界面。本文主要针对Fiddler的抓包处理。 Fiddler抓取HTTP请求。 抓包是Fiddler的最基本的应用,以本博客为例,启动Fiddler之后,在浏览器中输入http://blog.csdn.net/ohmygi…

MySQL索引优化实战EXPLAIN解析

先来介绍一下具体的业务场景 当用户登录后&#xff0c;需要查看能够学习的课程&#xff0c;不同的用户看到的课程是不同的&#xff0c;课程存在权限&#xff0c;权限是被下面lesson_user_permissions表控制的&#xff0c;其中sys_user_id 和 lesson_id 作为联合主键 另外还有一…