WireShark 安装指南:详细安装步骤和使用技巧

Wireshark是一个开源的网络协议分析工具,它能够捕获和分析网络数据包,并以用户友好的方式呈现这些数据包的内容。Wireshark 被广泛应用于网络故障排查、安全审计、教育及软件开发等领域。接下将讲解Wireshark的安装与简单使用。

目录

Wireshark安装步骤

Npcap安装步骤

USBPcap安装步骤

Wireshark使用入门

Wireshark过滤器使用


Wireshark安装步骤

首先我们先打开Wireshark的 官网 点击Get Acquainted菜单找到Download,点击进到下载界面。

进入到下载界面后,给我们提供了当前最新版本和历史版本下载的选项,这里我们选择下载最新版本,大家根据自身电脑系统进行选择下载相应的安装包,这里我拿windows举例,在最新版本中选择下载Windows 64位的安装包,单击Windows Installer(64-bit) 下载:

下载完成之后,双击下载的安装包,点击next,如下图:

点Noted之后再点击Next,如下图:

选择要安装的组件,默认下载也行,这里博主我就全选了,点Next,如下图

选择附件任务,以下是该任务的解释,根据自身需要进行勾选,博主选择如下方式安装:

Create Shortcuts:创建快捷方式

1)Wireshark Start Menu Item:Wireshark开始菜单项

2)Wireshark Desktop Icon:Wireshark桌面图标

Associate File Extensions:关联文件扩展

Associate trace file extensions with Wireshark将跟踪文件扩展名与 Wireshark 关联起来

自定义选择安装位置,推荐D盘安装即可,如下图:

Wireshark需要Npcap或WinPcap来捕获实时网络数据,默认下载即可,点击Next,如下图:

此处根据需要选择安装,这个插件还是测试版本的,本人选择安装:

USBPcap is required to capture USB traffic. Should USBPcap be installed(experimental)?

要捕获 USB 流量,需要 USBPcap。是否应该安装 USBPcap (实验)?

接下来wireshark跳转到安装界面如下图,同时弹出了一个Npcap的安装界面,第二个标题处理该安装步骤,如下图:

接下来wireshark跳转到安装界面如下图,同时弹出了一个USBPcap的安装界面,第三个标题处理该安装步骤,如下图:

上面两个工具安装完成之后,如下界面显示wireshark已经安装完成,点击Next即可,如下图:

检查电脑的文件是否保存,此步骤需要重新 Windows 系统,WireShark 才可以完全安装成功,重启后才可以使用 WireShark,选择如下重启即可,如下图:

电脑重启后至此我们的wireshark安装完成,可以继续阅读本文对wireshark使用讲解的内容。

Npcap安装步骤

点击 I Agree 同意进行下载,如下图:

根据自身情况进行如下的勾选下载,博主采取如下方式,如下图:

1)Restrict Npcap driver's access to Administrators only:仅管理员用户可以调用Npcap,一般不勾选

2)Support raw 802.11 traffic (and monitor mode) for wireless adapters:开启无线802.11报文的支持(含监控模式)

3)Install Npcap in WinPcap API-compatible Mode:兼容WinPcap模式,可勾选

下载完成点击Next,Finish即可,至此安装完成 ,如下图:

USBPcap安装步骤

两次勾选我同意协议的勾选框,然后点击Next,如下图:

默认点击Next即可,如下图:

自定义安装目录,推荐D盘,然后点击Install即可,如下图:

下载完成点击Close即可,如下图:

Wireshark使用入门

Wireshark是使用最广泛的一款「开源抓包软件」,常用来检测网络问题、攻击溯源、或者分析底层通信机制。它使用WinPCAP作为接口,直接与网卡进行数据报文交换。

Wireshark使用的环境大致分为两种,一种是电脑直连互联网的单机环境,另外一种就是应用比较多的互联网环境,也就是连接交换机的情况。其抓包原理如下:

单机情况下:Wireshark直接抓取本机网卡的网络流量。

交换机情况下:Wireshark通过端口镜像、ARP欺骗等方式获取局域网中的网络流量。

端口镜像:利用交换机的接口,将局域网的网络流量转发到指定电脑的网卡上。

ARP欺骗:交换机根据MAC地址转发数据,伪装其他终端的MAC地址,从而获取局域网的网络流量。

接下来开始正式对Wireshark工具进行使用介绍:

选择网卡:当我们打开Wireshark后就会进入到欢迎界面也称网卡选择界面,如下图有很多的网络连接,这里大多数的连接我们基本都用不到,那么我们到底应该点哪个网络连接呢?要去抓哪个网络连接的包呢?继续往下看

键盘win+r键输入cmd回车打开终端,终端输入 ipconfig 获取有关计算机当前网络连接的各种详细信息,包括 IP 地址、子网掩码、默认网关、DNS 服务器等。可以看到当前博主电脑采用的是无线局域网连接(WLANl连接),博主电脑的所有数据都会经过这个网络。

找到电脑的网络连接(WLAN连接)之后, 抓一下这个网卡的流量,双击网卡名,自动开始抓包:

如下可以看到我们已经开始自动抓包了,点击左上角的红色方块可以停止抓包:

界面介绍:以下是对wireshark界面的初步介绍:

Wireshark 的主界面包含6个部分:

1)菜单栏:用于调试、配置

2)工具栏:常用功能的快捷方式

3)过滤栏:指定过滤条件,过滤数据包

4)数据包列表:核心区域,每一行就是一个数据包

5)数据包详情:数据包的详细数据

6)数据包字节:数据包对应的字节流,二进制

基础操作:以下是wireshark常用的基础操作:

设置显示列:数据包列表是最常用的模块之一,列表中有一些默认显示的列,我们可以添加、删除、修改显示的列。

设置时间:数据包列表栏的时间这一列,默认显示格式看起来很不方便,我们可以调整时间的显示格式。

标记数据包:对于某些比较重要的数据包,可以设置成高亮显示,以达到标记的目的。

选中数据包,按 Ctrl + M 也可以实现同样的效果,按两次可以取消标记。

导出数据包:保存操作默认保存所有已经抓取的数据包。但有时候,我们只需要保存指定的数据包,这时候可以使用导出的功能。

在「导出分组界面」,选择第二个 「Selected packets only」,只保存选中的数据包。

有时候我们需要导出多个数据包,Wireshark有一个导出标记的数据包的功能,我们将需要导出的数据包都标记起来,就可以同时导出多个数据包。

在「导出分组界面」,勾选第三个 「Marked packets only」,只导出标记的数据包。 

切换模式:以下是wireshark切换模式的操作:

混杂模式:混杂模式就是接收所有经过网卡的数据包,包括不是发给本机的包,即不验证MAC地址。

普通模式:普通模式下网卡只接收发给本机的包(包括广播包)传递给上层程序,其它的包一律丢弃。

一般来说,混杂模式不会影响网卡的正常工作,多在网络监听工具上使用。如下是开启混杂模式的步骤:

点击菜单栏中的捕获按钮,点击选择:

如下有一个开启混杂模式的勾选,勾选之后,不管电脑接收到的是正确的还是错误的数据,基本上所有经过我电脑网卡的数据包都能被抓到,因为它不会去校验接收的mac地址是否合法,方便网络安全人员在做信息排查的时候的一个重要选项,对于一般网络安全人员博主建议开启混杂模式,因为我们要排查是否有非法的黑客进入进来。

勾选去掉的话就是采用普通模式,电脑只接受正确发送到网卡的数据,其他的包统统丢掉:

Wireshark过滤器使用

初学者使用wireshark时,将会得到大量的冗余数据包列表,以至于很难找到自己需要抓取的数据包部分。wireshark工具中自带了两种类型的过滤器,学会使用这两种过滤器会帮助我们在大量的数据中迅速找到我们需要的信息。

过滤器是Wireshark的核心功能,也是我们平时使用最多的一个功能。Wireshark提供了两个过滤器:抓包过滤器 和 显示过滤器。两个过滤器的过滤思路不同

1)抓包过滤器:重点在动作,需要的包我才抓,不需要的我就不抓。

2)显示过滤器:重点在数据的展示,包已经抓了,只是不显示出来。

在学习过滤器之前我们需要先掌握tcp三次握手的原理

TCP 三次握手是建立 TCP 连接时使用的一种协议,用于确保通信双方能够正常交换数据。下面是 TCP 三次握手的流程:

第一步客户端向服务端发送连接请求(SYN)

客户端(Client)首先向服务端(Server)发送一个带有 SYN(同步序列编号)标志的数据包,表示客户端想要建立连接,并选择一个初始的序列号(Sequence Number)。

第二步服务端收到连接请求并回复(SYN + ACK)

服务端收到客户端发送的 SYN 数据包后,会回复一个带有 SYN 和 ACK 标志的数据包,表示服务端已经接受了客户端的连接请求,并选择自己的初始序列号,同时确认客户端的序列号。

第三步客户端收到服务端的回复并发送确认(ACK)

最后,客户端再次向服务端发送一个带有 ACK 标志的数据包,表示客户端也确认了服务端的序列号。

完成了以上三个步骤,TCP 连接就建立起来了,通信双方可以开始正常地进行数据传输。

总的来说,TCP 三次握手协议确保了通信双方都能够正确地同步序列号,并确认彼此的能力和意愿进行数据传输,从而建立起可靠的连接。以下是具体流程图的实现:

抓包过滤器:使用抓包过滤器时,需要先停止抓包,设置完过滤规则后,再开始抓包。停止抓包的前提下,点击工具栏的捕获按钮,点击选项。在弹出的捕获选项界面,最下方的输入框中输入过滤语句,点击开始即可抓包。

抓包过滤器在抓包前使用,它的过滤有一个基本的语法格式,如下:

四个核心元素:类型、方向、协议 和 逻辑运算符。

1)类型Type:主机(host)、网段(net)、端口(port)

2)方向Dir:源地址(src)、目标地址(dst)

3)协议Proto:各种网络协议,比如:tcp、udp、http

4)逻辑运算符:与( && )、或( || )、非( !)

四个元素可以自由组合,比如:

src host 192.168.31.1:抓取源IP为 192.168.31.1 的数据包

tcp || udp:抓取 TCP 或者 UDP 协议的数据包

注意:抓包过滤器的输入框,会自动检测语法,绿色代表语法正确,红色代表语法错误。

对于抓包过滤器的使用,我们只需点击捕获中的选项按钮,最下方的输入框中输入过滤语句,点击开始即可抓包。

显示过滤器: 显示过滤器在抓包后或者抓包的过程中使用。

显示过滤器在抓包前使用,它的过滤有一个基本的语法格式,如下:

五个核心元素:IP、端口、协议、比较运算符和逻辑运算符。

1)IP地址:ip.addr、ip.src、ip.dst

2)端口:tcp.port、tcp.srcport、tcp.dstport

3)协议:tcp、udp、http

4)比较运算符:> < == >= <= !=

5)逻辑运算符:and、or、not、xor(有且仅有一个条件被满足)

五个核心元素可以自由组合,比如:

ip.addr == 192.168.32.121:显示IP地址为 192.168.32.121 的数据包

tcp.port == 80 :显示端口为 80 的数据包

注意:过滤栏有自动纠错功能,绿色表示语法正确,红色表示语法错误。

接下来我们通过wireshark来筛选tcp第一次握手,客户端向服务端发送连接请求的数据,在过滤栏输入过滤语句,修改后立即生效。

当然我们也可以通过如下命令过滤来判断哪些已经完成了三次握手,在TCP协议中,当一个端口要求关闭连接时,它会发送一个带有FIN标志的数据包来表示其关闭连接请求。通过在Wireshark中使用 tcp.flags.fin == 1 这个过滤器,可以只显示具有FIN标志的TCP数据包,从而方便用户分析和观察TCP连接的关闭情况。

当然我们也可以过滤出源 IP 地址或目标 IP 地址为 192.168.31.8 的数据包,通过在Wireshark中使用这个过滤器,可以只显示源 IP 地址或目标 IP 地址为 192.168.31.8 的数据包,从而方便用户针对特定主机进行网络流量分析和监控。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/397836.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ArcGIS API for JavaScript 4.X 本地部署(js,字体)

0 目录&#xff08;4.19&#xff09; /4.19/ 1 修改文件 1.1 init.js 编辑器打开/4.19/init.js搜索文本[HOSTNAME_AND_PATH_TO_JSAPI]&#xff0c;然后将其连同前面的https://替换为http://ip地址/4.19&#xff0c;可以是localhost&#xff0c;只能本机引用 替换后&#xff…

对象的接口

“类”&#xff0c;那个类具有自己的通用特征与行为。 因此&#xff0c;在面向对象的程序设计中&#xff0c;尽管我们真正要做的是新建各种各样的数据“类型”&#xff08;Type&#xff09;&#xff0c;但几乎所有面向对象的程序设计语言都采用了“class”关键字。当您看到“ty…

单片机学习笔记---红外遥控(外部中断)

目录 红外遥控简介 硬件电路 基本发送与接收 NEC编码​​​​​​​ 遥控器键码 复习外部中断和定时器 红外遥控简介 红外遥控是利用红外光进行通信的设备&#xff0c;由红外LED将调制后的信号发出&#xff0c;由专用的红外接收头进行解调输出 通信方式&#xff1a;单工…

2023年便宜的云服务器分享:最低26元4核16G

2024年阿里云服务器租用价格表更新&#xff0c;云服务器ECS经济型e实例2核2G、3M固定带宽99元一年、ECS u1实例2核4G、5M固定带宽、80G ESSD Entry盘优惠价格199元一年&#xff0c;轻量应用服务器2核2G3M带宽轻量服务器一年61元、2核4G4M带宽轻量服务器一年165元12个月、2核4G服…

electron Tab加载动画开启和关闭

记个开发中的bug&#xff0c;以此为鉴。眼懒得时候手勤快点儿&#xff0c;不要想当然&#xff01;&#xff01;&#xff01; 没有转载的价值&#xff0c;请勿转载搬运呦。 WebContents API&#xff1a; Event: did-finish-load​ 导航完成时触发&#xff0c;即选项卡的旋转…

开发消息多发工具需要用到的源代码

在数字化时代&#xff0c;消息传递是许多应用程序的核心功能之一&#xff0c;从社交媒体到企业通信&#xff0c;从个人聊天到群发消息&#xff0c;消息传递无处不在&#xff0c;为了满足这种需求&#xff0c;开发者经常需要创建或定制消息多发工具。 这些工具通常需要处理多个…

算法刷题:找到字符串中所有的字母异位词

找到字符串中所有的字母异位词 .题目链接题目详情题目解析算法原理滑动窗口流程图定义指针及变量进窗口判断出窗口更新结果 我的答案 . 题目链接 找到字符串中所有的字母异位词 题目详情 题目解析 所谓的异位词,就是一个单词中的字母,打乱顺序,重新排列得到的单词 如:abc-&g…

【AI学习】LangChain学习

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老导航 檀越剑指大厂系列:全面总结 jav…

如何画架构图:从概念到实践

如何画架构图&#xff1a;从概念到实践 在软件开发和系统设计中&#xff0c;架构图是一种重要的工具&#xff0c;它能够帮助开发人员和利益相关者更好地理解系统的结构和组件之间的关系。但是&#xff0c;对于许多人来说&#xff0c;画架构图可能是一个挑战。本文将探讨如何有…

分布式id实战

目录 常用方式 特征 潜在问题 信息安全 高性能 UUID 雪花算法 数据库生成 美团Leaf方案 Leaf-segment 数据库方案 Leaf-snowflake 方案 常用方式 uuid雪花算法数据库主键 特征 全局唯一趋势递增信息安全 潜在问题 信息安全 如果id连续递增, 容易被爬虫, 批量下…

字典树Trie 简介和相关例题分析

一.字典树定义 概念&#xff1a;字典树&#xff08;TrieTree&#xff09;&#xff0c;是一种树形结构&#xff0c;典型应用是用于统计&#xff0c;排序和保存大量的字符串&#xff08;但不仅限于字符串,如01字典树&#xff09;。主要思想是利用字符串的公共前缀来节约存储空间…

【运维】站点可靠性工程介绍:研发,运维,SRE,Devops的关系

文章目录 1、什么是SRE2、SRE与研发、运维的区别 1、什么是SRE 站点可靠性工程&#xff08;SRE&#xff09; 是 IT 运维的软件工程方案。 SRE 团队使用软件作为工具&#xff0c;来管理系统、解决问题并实现运维任务自动化。 SRE 执行的任务以前通常由运维团队手动执行&#x…

网络运行安全

网络运行安全 第一节 一般规定 第二十一条 国家实行网络安全等级保护制度。网络运营者应当按照网络安全等级保护制度的要求,履行下列安全保护义务,保障网络免受干扰、破坏或者未收授权的访问,防止网络数据泄露或者被窃取、篡改: 制定内部安全管理制度和操作规程,确定网络…

深度学习图像算法工程师--面试准备(1)

1 请问人工神经网络中为什么 ReLU 要好过于 tanh 和 Sigmoid function&#xff1f; 采⽤Sigmoid 等函数&#xff0c;算激活函数时&#xff08;指数运算&#xff09;&#xff0c;计算量⼤&#xff0c;反向传播求误差梯度时&#xff0c;求导涉及除法和指数运算&#xff0c;计算量…

【常识】大数据设计基础知识

底层存储&#xff1a;hadoop&#xff08;hdfsmapreduce&#xff09; Hadoop已经有十几年的历史&#xff0c;它是大数据领域的存储基石&#xff0c;HDFS目前仍然没有成熟替代品;MapR 文件系统在业内已经具有一定知名度了&#xff0c;不仅 MapR 宣布它自己的文件系统比 HDFS 快2-…

十三、集合进阶——单列集合 及 数据结构

单列集合 及 数据结构 13.1 集合体系结构13.1.2 单列集合1. Collection2.Collection 的遍历方式迭代器遍历增强for遍历Lambda表达式遍历 3.List集合List集合的特有方法List集合的遍历方式五种遍历方式对比 4.数据结构1).栈2).队列3&#xff09;数组4&#xff09;链表小结5&…

嵌入式学习-qt-Day1

嵌入式学习-qt-Day1 一、思维导图 二、作业 1.自由发挥登录窗口的应用场景&#xff0c;实现一个登录窗口界面 #include "widget.h"Widget::Widget(QWidget *parent): QWidget(parent) {//字体设置QFont font1;//创建字体对象1font1.setWeight(QFont::Bold);//字体…

普法:正当防卫,保护自己

今天该换一换口味了&#xff0c;所以本“人民体验官”推广人民日报官方微博《警察小哥科普第二十条指什么》。 图&#xff1a;来源“人民体验官”推广平台 电影《第二十条》片名&#xff0c;取自刑法第二十条规定。这一法条具体写了什么&#xff1f;对我们的生活有何影响&…

《白话C++》第10章 STL和boost,Page105 enable_shared_from_this

说到“循环引用”&#xff0c;其中“自己对自己”的引用是最直接的循环引用&#xff0c;如图10-12所示。 而说到“自己”&#xff0c;在C语言中应该首先想到的类的“this”指针。不过&#xff0c;this指针是裸指针&#xff0c;如果我们在类中&#xff0c;需要传递当前对象本身&…

【嵌入式-Keil】keil代码提示快捷键

CTRL空格 如果没有提示&#xff0c;可能跟输入法的快捷键冲突&#xff0c; 右键->设置->按键->勾掉第一个就行了 再按CTRL空格就有提示了 参考&#xff1a;串口发送&串口发送接收