如何使用Wireshark捕获,过滤和检查数据包
Wireshark是一种以前称为Ethereal的网络分析工具,可以实时捕获数据包并以人类可读的格式显示它们。 Wireshark包括过滤器,颜色编码和其他功能,可让我们深入研究网络流量并检查单个数据包。
本教程将使我们快速掌握捕获数据包,过滤和检查数据包的基本知识。我们可以使用Wireshark来检查可疑程序的网络流量,分析网络上的流量,或者对网络问题进行故障排除。
获取Wireshark
我们可以从其官方网站下载适用于Windows或者macOS的Wireshark。如果我们使用Linux或者其他类似UNIX的系统,则可能会在其软件包存储库中找到Wireshark。例如,如果我们使用Ubuntu,则可以在Ubuntu软件中心找到Wireshark。
快速警告:许多组织不允许在其网络上使用Wireshark和类似工具。除非获得许可,否则请勿在工作中使用此工具。
捕获数据包
下载并安装Wireshark之后,可以启动它并双击Capture下的网络接口名称,以开始捕获该接口上的数据包。例如,如果要捕获无线网络上的流量,请单击无线接口。我们可以通过单击捕获>选项来配置高级功能,但这不是必需的。
单击接口名称后,我们将立即看到数据包开始实时显示。 Wireshark捕获发送到系统或者从系统发送的每个数据包。
如果我们启用了混杂模式,则默认情况下将其启用,我们还将看到网络上的所有其他数据包,而不仅仅是发送到网络适配器的数据包。要检查是否启用了混杂模式,请单击捕获>选项,并验证此窗口底部的在所有接口上启用混杂模式复选框已激活。
当我们要停止捕获流量时,单击窗口左上角附近的红色"停止"按钮。
颜色编码
我们可能会看到以各种不同颜色突出显示的数据包。 Wireshark使用颜色一眼识别流量类型。缺省情况下,浅紫色表示TCP流量,浅蓝色表示UDP流量,黑色表示错误的数据包,例如,它们可能已被乱序发送。
要准确查看颜色代码的含义,请单击查看>着色规则。如果愿意,我们还可以从此处自定义和修改着色规则。
样品采集
如果我们自己的网络上没有什么有趣的东西可以检查,Wiresharks Wiki可以满足要求。 Wiki包含一页示例捕获文件,我们可以加载和检查它们。单击文件>在Wireshark中打开,然后浏览以下载文件以打开一个文件。
我们也可以将自己的捕获保存在Wireshark中,以后再打开。单击文件>保存以保存捕获的数据包。
过滤数据包
如果我们尝试检查某些特定内容,例如程序在打电话回家时发送的流量,则有助于关闭使用网络的所有其他应用程序,以便我们缩小流量范围。尽管如此,我们仍然可能需要筛选大量数据包。那就是Wiresharks过滤器进来的地方。
应用过滤器的最基本方法是,将其输入到窗口顶部的过滤器框中,然后单击"应用"(或者按Enter键)。例如,键入dns,我们将仅看到DNS数据包。当我们开始键入内容时,Wireshark将自动完成过滤器。
我们也可以单击分析>显示过滤器以从Wireshark包含的默认过滤器中选择一个过滤器。在这里,我们可以添加自己的自定义过滤器并将其保存,以供日后轻松访问。
有关Wireshark的显示过滤语言的更多信息,请阅读Wireshark官方文档中的"构建显示过滤器表达式"页面。
我们可以做的另一件事是右键单击数据包,然后选择"跟随">" TCP流"。
我们将看到客户端和服务器之间的完整TCP对话。我们也可以在"关注"菜单中单击其他协议,以查看其他协议的完整对话(如果适用)。
关闭窗口,我们会发现一个过滤器已自动应用。 Wireshark正在向我们显示构成对话的数据包。
检查数据包
单击一个数据包以将其选中,然后可以向下挖掘以查看其详细信息。
我们也可以从此处创建过滤器,只需右键单击详细信息之一,然后使用"应用为过滤器"子菜单即可基于它创建过滤器。
Wireshark是一个功能非常强大的工具,本教程只是介绍我们可以使用它做些什么。专业人员使用它来调试网络协议实现,检查安全问题并检查网络协议内部。