3.4 Wireshark初步入门
当你成功地在你的系统中装好了Wireshark,你就可以开始熟悉它了。当你终于打开了这个功能强大的数据包嗅探器,却会发现你什么都看不见!
好吧,Wireshark在刚打开的时候确实不太好玩,只有在拿到一些数据之后事情才会变得有趣起来。
3.4.1 第一次捕获数据包
为了能让Wireshark得到一些数据包,你可以开始你的第一次数据包捕获实验了。你可能会想:“当网络什么问题也没有的时候,怎么能捕获数据包呢?”
首先,网络总是有问题的。如果你不相信,那么你去给你网络上所有的用户发一封邮件,告诉他们一切都工作得非常好。
第二,做数据包分析并不一定要等到有问题的时候再做。事实上,大多数的数据包分析员在分析没有问题的网络流量上花的时间要比解决问题的时候多。为了能高效地解决网络问题,你也同样需要得到一个基准来与之对比。举例来说,如果你想通过分析网络流量来解决关于DHCP的问题,你至少需要知道DHCP在正常工作时的数据流是什么样子的。
更广泛地讲,为了能够发现日常网络活动的异常,你必须对日常网络活动的情况有所掌握。当你的网络正常运行时,你以此作为基准,就能知道网络流量在正常情况下的样子。
闲言少叙,让我们来捕获一些数据包吧!
1.打开Wireshark。
2.从主下拉菜单中选择Capture,然后是Interface。
这时你应该可以看到一个对话框,里面列出了你可以用来捕获数据包的各种设备,以及它们的IP地址。
3.选择你想要使用的设备,如图3-4所示,然后单击Start,或者直接单击欢迎画面中Interface List下的某一个设备。随后数据就会在窗口中呈现出来。
4.等上一分钟左右,当你打算停止捕获并查看你的数据时,在Capture的下拉菜单中单击Stop按钮即可。
当你做完了以上步骤并完成了数据包的捕获,Wireshark的主窗口中应该已经呈现了相应的数据,但此时你可能已经对那些数据的规模感到头疼,这也就是为什么我们把Wireshark一整块的主窗口进行拆分的原因。
3.4.2 Wireshark主窗口
Wireshark的主窗口是将你所捕获的数据包显示或拆分成更容易使人理解的方式的地方,也将是你花费时间最多的地方。我们使用刚刚捕获的数据包来介绍一下Wireshark的主窗口,如图3-5所示。
主窗口的3个面板相互有着联系。如果希望在Packet Details面板中查看一个单独的数据包的具体内容,你必须现在Packet List面板中单击选中那个数据包。在你选中了数据包之后,你可以通过在Packet Details面板中选中数据包的某个字段,从而在Packet Bytes面板中查看相应字段的字节信息。
注意
在图3-5中的Packet List面板中列出了几种不同的协议,但这里并没有使用不同的层次来对不同的协议进行视觉上的区分,所有的数据包都是按照其在链路上接收到的顺序排列的。
下面介绍了每个面板的内容。
Packet List(数据包列表):最上面的面板用表格显示了当前捕获文件中的所有数据包,其中包括了数据包序号、数据包被捕获的相对时间、数据包的源地址和目标地址、数据包的协议以及在数据包中找到的概况信息等列。
注意
当文中提到流量的时候,我通常是指Packet List面板中所有呈现出来的数据包,而当特别提到DNS流量时,我指的是Packet List面板中DNS协议的数据包。
Packet Details(数据包细节):中间的面板分层次地显示了一个数据包中的内容,并且可以通过展开或是收缩来显示这个数据包中所捕获到的全部内容。
Packet Bytes(数据包字节):最下面的面板可能是最令人困惑的,因为它显示了一个数据包未经处理的原始样子,也就是其在链路上传播时的样子。这些原始数据看上去一点都不舒服而且不容易理解。
3.4.3 Wireshark首选项
Wireshark提供了一些首选项设定,可以让你根据需要进行定制。如果需要设定Wireshark首选项,在主下拉菜单中选择Edit然后单击Preferences,然后你便可以看到一个首选项的对话框,里面有一些可以定制的选项,如图3-6所示。
Wireshark首选项分为6个主要部分。
User Interface(用户接口):这些选项决定了Wireshark将如何显示数据。你可以根据你的个人喜好对大多数选项进行调整,比如是否保存窗口位置、3个主要窗口的布局、滚动条的摆放、Packet List面板中列的摆放,以及显示捕获数据的字体、前景色和背景色等。
Capture(捕获):这些选项可以让你对你捕获数据包的方式进行特殊的设定,比如你默认使用的设备、是否默认使用混杂模式、是否实时更新Packet List面板等。
Printing(打印):这个部分中的选项可以让你对Wireshark如何打印你的数据进行各种特殊的设定。
Name Resolutions(名字解析):通过这些设定,你可以开启Wireshark将地址(包括MAC、网络以及传输名字解析)解析成更加容易分辨的名字这一功能,并且可以设定可以并发处理名字解析请求的最大数目。
Statistics(统计):这一部分提供了一些Wireshark中统计功能的设定选项。
Protocols(协议):这个部分中的选项与捕捉和显示各种Wireshark能够解码的数据包有关。并不是每一个协议都有配置选项,但是一些协议的某些选项则可以进行更改。除非你有特殊的原因去修改这些选项,否则最好保持它们的默认值。
3.4.4 数据包彩色高亮
如果你像我一样喜欢五颜六色的物体,那么你应该会对Packet List面板中那些不同的颜色感到兴奋。如图3-7所示(尽管图示是黑白的,但你应该可以理解),那些颜色看上去就像是随机分配给每一个数据包的,但其实并不是这样的。
每一个数据包的颜色都是有讲究的,这些颜色对应着数据包使用的协议。举例来说,所有的DNS流量都是蓝色的,而HTTP流量都是绿色的。将数据包进行彩色高亮,可以让你很快地将不同协议的数据包分开,而不需要对每个数据包都查看Packet List面板中的协议列。你会发现这样在浏览较大的捕获文件时,可以极大地节省时间。
如图3-8所示,Wireshark通过Coloring Rules(着色规则)窗口可以很容易地查看每个协议所对应的颜色。如果想要打开这个窗口,在主下拉菜单中选择View然后单击Coloring Rules。
你可以创建你自己的着色规则,或者修改已有设置。举例来说,使用下列步骤可以将HTTP流量绿色的默认背景改成淡紫色。
1.打开Wireshark,并且打开Coloring Rules窗口(View三角图01Coloring Rules)。
2.在着色规则的列表中找到HTTP着色规则并单击选中。
3.单击Edit按钮,你会看到一个Edit Color Filter窗口,如图3-9所示。
4.单击Background Color按钮。
5.使用颜色滚轮选择一个你希望使用的颜色,然后单击OK。
6.再次单击OK来应用改变,并回到主窗口。主窗口此时应该已经重载,并使用了更改过的颜色样式。
当你在网络上使用Wireshark时,你可能会发现你处理某些协议比其他协议要多。这时彩色高亮的数据包就能让你工作得更加方便。举例来说,如果你觉得你的网络上有一个恶意的DHCP服务器在分发IP,你可以简单地修改DHCP协议的着色规则,使其呈现明黄色(或者其他易于辨认的颜色)。这可以使你能够更快地找出所有DHCP流量,并让你的数据包分析工作更有效率。
你还可以通过基于你自己定制的过滤器创建着色规则,来扩展这些着色规则的用途。
现在你的Wireshark应该已经安装好并运行起来了,你已经准备好进行数据包的分析了。在下一章中,我们将详细讲述如何处理你所捕获的数据包。
本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。