我是如何使用wireshark软件的

嵌入式Linux

共 2191字,需浏览 5分钟

 ·

2021-01-29 08:44





长按二维码识别关注

技术共享|资料共享|沟通交流



01
简介
这篇文章介绍一个好用的抓包工具Wireshark, 用来获取网络数据封包,包括HTTPTCPUDP等网络协议包。

开始界面

wireshark是捕获机器上的某一块网卡的网络包,当你的机器上有多块网卡的时候,你需要选择一个网卡。直接双击上面的某个网卡即可。


02
Wireshark窗口


Wireshark 窗口介绍:

WireShark 主要分为这几个界面:

1. Display Filter(显示过滤器), 用于过滤。

2. Packet List Pane(封包列表),显示捕获到的封包, 有源地址和目标地址,端口号。颜色不同,代表。

3. Packet Details Pane(封包详细信息),显示封包中的字段。

4. Dissector Pane(16进制数据)

5. Miscellanous(地址栏,杂项)

常用操作按钮

开始捕获,②停止捕获,③重新捕获

03
Wireshark显示过滤
使用过滤是非常重要的,初学者使用wireshark时,将会得到大量的冗余信息,在几千甚至几万条记录中,以至于很难找到自己需要的部分。搞得晕头转向。

过滤器会帮助我们在大量的数据中迅速找到我们需要的信息。

比如上图的过滤方式,只会显示TCP端口为5005的通信数据包。

注意:这里设置的是显示过滤是只显示,实际上wireshark还是会抓取这个网卡上的所有数据包。

过滤器有两种:

一、显示过滤器

就是主界面上那个,用来在捕获的记录中找到所需要的记录。

二、捕获过滤器

用来过滤捕获的封包,以免捕获太多的记录,在捕获->捕获过滤器中设置。这种适用于只抓取某个通道的通信。

保存显示过滤

通常情况下,我们在工作中每次打开wireshark都是抓取同样类型的数据,比如公司产品的默认TCP的端口是5005,也就是上面的tcp.port== 5005。我们不希望每次打开wireshark时都重新输入一遍过滤表达式,我们可以保存下来。

再输入表达式后,点击左侧的书签按钮,选择保存此过滤器。

然后修改名字。

下次点击左侧书签,可以直接选择这个保存显示过滤条件,不用重复输入。

04
过滤表达式的规则


1. 协议过滤

比如TCP,只显示TCP协议。

2. IP 过滤

比如ip.src ==192.168.1.102 显示源地址为192.168.1.102

ip.dst==192.168.1.102, 目标地址为192.168.1.102。

3. 端口过滤

tcp.port ==80,  端口为80的。

tcp.srcport == 80,  只显示TCP协议的为端口为80的。

4. Http模式过滤

http.request.method==”GET”,   只显示HTTPGET方法的。

5. 逻辑运算符为AND/ OR

常用的过滤表达式:

05
封包详细信息

封包详细信息(Packet Details Pane)面板是我们最重要的,用来查看协议中的每一个字段。

各行信息分别为:

Frame:   物理层的数据帧概况。

Ethernet II: 数据链路层以太网帧头部信息。

Internet Protocol Version 4: 互联网层IP包头部信息。

Transmission Control Protocol:  传输层的数据段头部信息,此处是TCP。

Data:应用层的信息。

wireshark与对应的TCP/IP四层模型

详细的使用wireshark抓取数据包,分析TCP/IP协议簇的IP首部字节,TCP首部字节等等,请看专栏《STM32网络开发》。
06
自动保存
开发中,我们有时候需要抓取某个设备运行过程中一段时间的数据,可能是几天,甚至十几天。如果我们按照上面的方法,抓取数据,运行一段时间,wireshark一直在抓取数据,运行几个小时后,在内存小的PC上就崩溃了。这个时候我们需要wireshark抓取一段时间,自动保存一下。

设置方法:捕获->选项->输出。

在实际项目中,有些嵌入式设备并不是和PC进行数据通信,可能与另一台嵌入式设备通信。这时候我们要借助带有端口镜像的交换机进行数据监控。如下图,将交换机端口配置成32的镜像,配合wireshark的自动保存功能,可以监控一个网络设备的全部数据包。

07
Wireshark的统计功能
Wireshark的一个强大的功能在于他的统计工具,使用Wireshark的时候我们有各种类型的工具可供选择。

比如协议分级。协议分级统计窗口显示为,捕捉文件包含的所有协议和树状分支;分组百分比永远按照的是相同协议层。

再比如可以展示TCP的吞吐量。

这些统计功能是wireshark的重要功能,运维工作人员,网络维护人员使用的比较多,嵌入式或单片机网络开发,还是以TCP/IP协议簇抓包分析为主,详细的统计功能这里不再详解。

推荐阅读:
专辑|Linux文章汇总
专辑|程序人生
专辑|C语言
我的知识小密圈

关注公众号,后台回复「1024」获取学习资料网盘链接。

欢迎点赞,关注,转发,在看,您的每一次鼓励,我都将铭记于心~



浏览 23
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报