【软件介绍】
Wireshark是一款非常棒的Unix和Windows上的开源网络协议分析器。它可以实时检测网络通讯数据,也可以检测其抓取的网络通讯数据快照文件。可以通过图形界面浏览这些数据,可以查看网络通讯数据包中每一层的详细内容。【软件特色】
网络管理员用来解决网络问题网络安全工程师用来检测安全隐患
开发人员用来测试协议执行情况
用来学习网络协议
除了上面提到的,Wireshark还可以用在其它许多场合
【软件功能】
Wireshark拥有许多强大的特性:包含有强显示过滤器语言(rich display filter language)和查看TCP会话重构流的能力;
它更支持上百种协议和媒体类型:
拥有一个类似tcpdump(一个Linux下的网络协议分析工具)的名为tethereal的的命令行版本。
在过去,网络封包分析软件是非常昂贵,或是专门属于营利用的软件。
Ethereal的出现改变了这一切。
在GNU GPL通用许可证的保障范围底下,使用者可以以免费的代价取得软件与其程式码,并拥有针对其原始码修改及客制化的权利。Ethereal是目前全世界最广泛的网络封包分析软件之一。
【工作流程】
1.确定 Wireshark 的位置如果没有一个正确的位置,启动Wireshark后会花费很长的时间捕获一些与自己无关的数据。
2.选择捕获接口
一般都是选择连接到Internet网络的接口,这样才可以捕获到与网络相关的数据。否则,捕获到的其它数据对自己也没有任何帮助。
3.使用捕获过滤器
通过设置捕获过滤器,可以避免产生过大的捕获文件。这样用户在分析数据时,也不会受其它数据干扰。而且,还可以为用户节约大量的时间。
4.使用显示过滤器
通常使用捕获过滤器过滤后的数据,往往还是很复杂。为了使过滤的数据包再更细致,此时使用显示过滤器进行过滤。
5.使用着色规则
通常使用显示过滤器过滤后的数据,都是有用的数据包。如果想更加突出的显示某个会话,可以使用着色规则高亮显示。
6.构建图表
如果用户想要更明显的看出一个网络中数据的变化情况,使用图表的形式可以很方便的展现数据分布情况。
7.重组数据
Wireshark的重组功能,可以重组一个会话中不同数据包的信息,或者是一个重组一个完整的图片或文件。由于传输的文件往往较大,所以信息分布在多个数据包中。为了能够查看到整个图片或文件,这时候就需要使用重组数据的方法来实现。
【安装教程】
1、在本站下载最新版的wireshark安装包,双击运行,打开Wireshark安装向导,如下图所示:2、阅读软件协议,同意协议即可,点击I Agree按钮:
3、选择安装组件,默认勾选即可,点击Next:
4、选择附加任务,默认勾选即可,如下图所示,点击Next:
5、按照提示点击下一步即可,直至如下界面,可以点击【browse】来定义软件的安装位置。默认安装在C盘,小编建议您单击Browse按钮自定义安装路径:
6、准备安装,点击Next:
7、点击install开始安装,该软件安装可能需要几分钟,请耐心等待。
8、安装完毕会有提示,点击【finish】即可使用软件啦。
【使用教程】
一、抓取报文:1.下载和安装好Wireshark之后,启动Wireshark并且在接口列表中选择接口名,然后开始在此接口上抓包。例如,如果想要在无线网络上抓取流量,点击无线接口。点击Capture Options可以配置高级属性,但现在无此必要。
2.点击接口名称之后,就可以看到实时接收的报文。Wireshark会捕捉系统发送和接收的每一个报文。如果抓取的接口是无线并且选项选取的是混合模式,那么也会看到网络上其他报文。
3.上端面板每一行对应一个网络报文,默认显示报文接收时间(相对开始抓取的时间点),源和目标IP地址,使用协议和报文相关信息。点击某一行可以在下面两个窗口看到更多信息。“+”图标显示报文里面每一层的详细信息。底端窗口同时以十六进制和ASCII码的方式列出报文内容。
需要停止抓取报文的时候,点击左上角的停止按键。
二、色彩标识
进行到这里已经看到报文以绿色,蓝色,黑色显示出来。Wireshark通过颜色让各种流量的报文一目了然。比如默认绿色是TCP报文,深蓝色是DNS,浅蓝是UDP,黑色标识出有问题的TCP报文——比如乱序报文。
三、报文样本
比如说你在家安装了Wireshark,但家用LAN环境下没有感兴趣的报文可供观察,那么可以去Wireshark wiki下载报文样本文件。
打开一个抓取文件相当简单,在主界面上点击Open并浏览文件即可。也可以在Wireshark里保存自己的抓包文件并稍后打开。
四、过滤报文
如果正在尝试分析问题,比如打电话的时候某一程序发送的报文,可以关闭所有其他使用网络的应用来减少流量。但还是可能有大批报文需要筛选,这时要用到Wireshark过滤器。
最基本的方式就是在窗口顶端过滤栏输入并点击Apply(或按下回车)。例如,输入“dns”就会只看到DNS报文。输入的时候,Wireshark会帮助自动完成过滤条件。
也可以点击Analyze菜单并选择Display Filters来创建新的过滤条件。
另一件很有趣的事情是你可以右键报文并选择Follow TCP Stream。
你会看到在服务器和目标端之间的全部会话。
关闭窗口之后,你会发现过滤条件自动被引用了——Wireshark显示构成会话的报文。
五、检查报文
选中一个报文之后,就可以深入挖掘它的内容了。
也可以在这里创建过滤条件——只需右键细节并使用Apply as Filter子菜单,就可以根据此细节创建过滤条件。
Wireshark是一个非常之强大的工具,第一节只介绍它的最基本用法。网络专家用它来debug网络协议实现细节,检查安全问题,网络协议内部构件等等。
【使用技巧】
Wireshark字体设置:注意:如果你选择中文的话,请选择合适的字体,具体在编辑->首选项设置->用户接口->字体中设置!
Wireshark语言设置:
1、首先将软件双击打开进入主界面,若是桌面没有软件可以在软件的安装文件夹中找到它哦!
2、打开了软件值如下图所示,显示的界面中是全英文的
3、请使用鼠标点击上方的edit选项卡,找到最下方的preferences按钮!
4、这样我们就可以进入软件的设置界面了,打开之后如下图所示,我们可以看见此时语言显示的是英文!
5、点击单击language一栏就可以将它更改为chinese选项了!
6、若是你的电脑系统是中文版的,可以设置为“use system setting”一栏!
7、设置成功之后点击确定进行保存,此时可以看见界面的语言已经变成中文版本的了!
【常见问题】
1.Wireshark可以使用哪些设备来捕获数据包?答:Wireshark可以读取以太网,令牌环,FDDI,串行(PPP和SLIP)的实时数据(如果它运行的操作系统允许Wireshark这样做),802.11无线局域网(如果它运行的操作系统允许Wireshark)要做到这一点),ATM连接(如果它运行的操作系统允许Wireshark这样做),以及最近版本的libpcap在Linux上支持的“任何”设备。
2.我安装了Wireshark RPM(或其他软件包); 为什么安装TShark而不是Wireshark?
答: 许多发行版都有单独的Wireshark软件包,一个用于非GUI组件,如TShark,editcap,dumpcap等,另一个用于GUI。如果您的系统出现这种情况,可能会有一个名为的单独软件包wireshark-qt。找到并安装它。
3.当我尝试运行Wireshark时,为什么抱怨 sprint_realloc_objid未定义?
答: Wireshark只能与版本4.2.2或更高版本的UCD SNMP链接。你的Wireshark版本与这种版本的UCD SNMP动态链接; 但是,您安装了较旧版本的UCD SNMP,这意味着当运行Wireshark时,它会尝试链接到旧版本,并失败。您必须使用4.2.2版或更高版本替换该版本的UCD SNMP。
4.我的机器上有一张XXX网卡; 如果我试图捕获它,为什么我的机器崩溃或重置自己?
答: 这几乎肯定是一个或多个问题:
你正在使用的操作系统;
您正在使用的界面的设备驱动程序;
libpcap / WinPcap库,如果是Windows,则是WinPcap设备驱动程序;
所以:
如果您使用的是Windows,请参阅WinPcap支持页面 - 查看“提交错误”部分;
如果您使用的是某些Linux发行版,某些版本的BSD或其他一些UNIX风格的操作系统,您应该将问题报告给生成操作系统的公司或组织(如果是Linux发行版,请将问题报告给任何生产者分布)。
5.Wireshark的使用(抓包、过滤器)
Wireshark是世界上最流行的网络分析工具。这个强大的工具可以捕捉网络中的数据,并为用户提供关于网络和上层协议的各种信息。与很多其他网络工具一样,Wireshark也使用pcap network library来进行封包捕捉。。。
6.wireshark和winpcap哪个比较好用?有什么区别?
WinPcap是用于网络封包抓取的一套工具,可适用于32位的操作平台上解析网络封包,包含了核心的封包过滤,一个底层动态链接库,和一个高层系统函数库,及可用来直接存取封包的应用程序界面。
Winpcap是一个免费公开的软件系统。它用于windows系统下的直接的网络编程。
大多数网络应用程序访问网络是通过广泛使用的套接字。这种方法很容易实现网络数据传输,因为操作系统负责底层的细节(比如协议栈,数据流组装等)以及提供了类似于文件读写的函数接口。
但是有时,简单的方法是不够的。因为一些应用程序需要一个底层环境去直接操纵网络通信。因此需要一个不需要协议栈支持的原始的访问网络的方法
Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。
网络封包[1]分析软件的功能[1]可想像成 "电工技师使用电表来量测电流、电压、电阻" 的工作 - 只是将场景移植到网络上,并将电线替换成网络线。
在过去,网络封包分析软件是非常昂贵,或是专门属于营利用的软件。Ethereal的出现改变了这一切。在GNUGPL通用许可证的保障范围底下,使用者可以以免费的代价取得软件与其源代码,并拥有针对其源代码修改及客制化的权利。Ethereal是目前全世界最广泛的网络封包分析软件之一。
总结:两者功能不尽相同,用户可根据自己实际需求进行选择。