第 2 章 编译/安装Wireshark
目录
- 2.1. 须知
- 2.2. 获得源
- 2.3. 在UNIX下安装之前
- 2.4. 在UNIX下编译Wireshark
- 2.5. 在UNIX下安装二进制包
- 2.6. 解决UNIX下安装过程中的问题
- 2.7. 在Windows下编译源
- 2.8. 在Windows下安装Wireshark
2.1. 须知
万事皆有开头,Wireshark也同样如此。要想使用Wireshark,你必须:
获得一个适合您操作系统的二进制包,或者
获得源文件为您的操作系统编译。
目前,只有两到三种Linux发行版可以传送Wireshark,而且通常传输的都是过时的版本。至今尚未有UNIX版本可以传输Wireshark . Windows的任何版本都不能传输Wireshark.基于以上原因,你需要知道从哪能得到最新版本的Wireshark以及如何安装它。
本章节向您展示如何获得源文件和二进制包,如何根据你的需要编译Wireshark源文件。
以下是通常的步骤:
下载需要的相关包,例如:源文件或者二进制发行版。
将源文件编译成二进制包(如果您下载的是源文件的话)。这样做做可以整合编译和/或安装其他需要的包。
安装二进制包到最终目标位置。
2.2. 获得源
你可以从Wireshark网站http://www.wireshark.org.同时获取源文件和二进制发行版。选择您需要下载的链接,然后选择源文件或二进制发行包所在的镜像站点(尽可能离你近一点的站点)。
下载所有需要的文件 !
一般来说,除非您已经下载Wireshark,如果您想编译Wireshark源文件,您可能需要下载多个包。这些在后面章节会提到。
注意
当你发现在网站上有多个二进制发行版可用,您应该选择适合您平台的版本,他们同时通常会有多个版本紧跟在当前版本后面,那些通常时拥有那些平台的用户编译的。
基于以上原因,您可能想自己下载源文件自己编译,因为这样相对方便一点。
2.3. 在UNIX下安装之前
在编译或者安装二进制发行版之前,您必须确定已经安装如下包:
GTK+, The GIMP Tool Kit.
您将会同样需要Glib.它们都可以从www.gtk.org获得。
Libpcap , Wireshark用来捕捉包的工具
您可以从www.tcpdump.org获得。
根据您操作系统的不同,您或许能够安装二进制包,如RPMs.或许您需要获得源文件并编译它。
如果您已经下载了GTK+源文件,例 2.1 “从源文件编译GTK+”提供的指令对您编译有所帮助。
例 2.1. 从源文件编译GTK+
gzip -dc gtk+-1.2.10.tar.gz | tar xvf -
<much output removed>
./configure
<much output removed>
make install
<much output remove>
test--------------
注意
您可能需要修改例 2.1 “从源文件编译GTK+”中提供的版本号成对应您下载的GTK+版本。如果GTK的目录发生变更,您同样需要修改它。,tar xvf 显示您需要修改的目录。
注意
如果您使用Linux,或者安装了GUN tar,您可以使用tar zxvfgtk+-1.2.10.tar.gz命令。同样也可能使用gunzip –c或者gzcat而不是许多UNIX中的gzip –dc
注意
如果您在windows中下载了gtk+ 或者其他文件。您的文件可能名称为:
gtk+-1_2_8_tar.gz
如果在执行例 2.1 “从源文件编译GTK+”中的指令时有错误发生的话,你可以咨询GTK+网站。
如果您已经下载了libpcap源,一般指令如例 2.2 “编译、安装libpcap” 显示的那样会帮您完成编译。同样,如果您的操作系统不支持tcpdump,您可以从tcpdump网站下载安装它。
例 2.2. 编译、安装libpcap
gzip -dc libpcap-0.9.4.tar.Z | tar xvf -
<much output removed>
cd libpcap-0.9.4
./configure
<much output removed>
make
<much output removed>
make install
<much output removed>
注意
Libpcap的目录需要根据您的版本进行修改。tar xvf命令显示您解压缩的目录。
RedHat 6.x及其以上版本环境下(包括基于它的发行版,如Mandrake),您可以直接运行RPM安装所有的包。大多数情况下的Linux需要安装GTK+和Glib.反过来说,你可能需要安装所有包的定制版。安装命令可以参考例 2.3 “在RedHat Linux 6.2或者基于该版本得发行版下安装需要的RPM包”。如果您还没有安装,您可能需要安装需要的RPMs。
例 2.3. 在RedHat Linux 6.2或者基于该版本得发行版下安装需要的RPM包
cd /mnt/cdrom/RedHat/RPMS
rpm -ivh glib-1.2.6-3.i386.rpm
rpm -ivh glib-devel-1.2.6-3.i386.rpm
rpm -ivh gtk+-1.2.6-7.i386.rpm
rpm -ivh gtk+-devel-1.2.6-7.i386.rpm
rpm -ivh libpcap-0.4-19.i386.rpm
注意
如果您使用RedHat 6.2之后的版本,需要的RMPs包可能已经变化。您需要使用正确的RMPs包。
在Debian下您可以使用apt-ge命令。apt-get 将会为您完成所有的操作。参见例 2.4 “在Deban下安装Deb”
例 2.4. 在Deban下安装Deb
apt-get install wireshark-dev
2.4. 在UNIX下编译Wireshark
如果在Unix操作系统下可以用如下步骤编译Wireshark源代码:
如果使用Linux则解压gzip'd tar文件,如果您使用UNIX,则解压GUN tar文件。对于Linux命令如下:
tar zxvf wireshark-0.99.5-tar.gz
对于 UNIX版本,命令如下
gzip -d wireshark-0.99.5-tar.gz
tar xvf wireshark-0.99.5-tar
| | 注意 | |
使用管道命令行 gzip –dc Wireshark-0.99.5-tar.gz|tar xvf 同样可以[9]
|
| | 注意 | |
如果您在Windows下下载了Wireshark,你会发现文件名中的那些点变成了下划线。
|
将当前目录设置成源文件的目录。
配置您的源文件以编译成适合您的Unix的版本。命令如下:
./configure
如果找个步骤提示错误,您需要修正错误,然后重新configure.解决编译错误可以参考第 2.6 节 “解决UNIX下安装过程中的问题 ”
使用make命令将源文件编译成二进制包,例如:
make
安装您编译好的二进制包到最终目标,使用如下命令:
make install
一旦您使用make install安装了Wireshark,您就可以通过输入Wireshark命令来运行它了。
[9] 译者注:看到别人翻译Pipelin之类的,似乎就是叫管道,不知道是否准确
2.5. 在UNIX下安装二进制包
一般来说,在您的UNIX下安装二进制发行包使用的方式根据您的UNIX的版本类型而各有不同。例如AIX下,您可以使用smit安装,Tru64 UNIX您可以使用 setld 命令。
2.5.1. 在Linux或类似环境下安装RPM包
使用如下命令安装Wireshark RPM包
rpm -ivh wireshark-0.99.5.i386.rpm
如果因为缺少Wireshark依赖的软件而导致安装错误,请先安装依赖的软件,然后再尝试安装。REDHAT下依赖的软件请参考例 2.3 “在RedHat Linux 6.2或者基于该版本得发行版下安装需要的RPM包”
2.5.2. 在Debian环境下安装Deb包
使用下列命令在Debian下安装Wireshark
apt-get install Wireshark
apt-get 会为您完成所有的相关操作
2.5.3. 在Gentoo Linux环境下安装Portage
使用如下命令在Gentoo Linux下安装wireshark以及所有的需要的附加文件
USE="adns gtk ipv6 portaudio snmp ssl kerberos threads selinux" emerge wireshark
2.5.4. 在FreeBSD环境下安装包
使用如下命令在FreeBSD下安装Wireshark
pkg_add -r wireshark
pkg_add会为您完成所有的相关操作
2.6. 解决UNIX下安装过程中的问题 [10]
安装过程中可能会遇到一些错误信息。这里给出一些错误的解决办法:
如果configure那一步发生错误。你需要找出错误的原因,您可以检查日志文件config.log(在源文件目录下),看看都发生了哪些错误。有价值的信息通常在最后几行。
一般原因是因为您缺少GTK+环境,或者您的GTK+版本过低。configure错误的另一个原因是因为因为缺少libpcap(这就是前面提到的捕捉包的工具)。
另外一个常见问题是很多用户抱怨最后编译、链接过程需要等待太长时间。这通常是因为使用老式的sed命令(比如solaris下传输)。自从libtool脚本使用sed命令建立最终链接命令,常常会导致不可知的错误。您可以通过下载最新版本的sed解决该问题http://directory.fsf.org/GNU/sed.html.
如果您无法检测出错误原因。发送邮件到wireshark-dev说明您的问题。当然,邮件里要附上config.log以及其他您认为对解决问题有帮助的东西,例如make过程的追踪。
[10] 译者注:本人不熟悉UNIX/LINUX,这一段翻译的有点云里雾里,可能大家通过这部分想安装Wireshark会适得其反,那就对不住了。下面个人说一下UNIX/LINUX下安装方法。 UNIX/LINUX下安装时,有两种安装方式,1是下载源码包自己编译,这种方式的好处是因为下载源码包是单一的,可以自行加以修改,编译就是适合自己平台的了。 2、是利用已经做好的发行包直接安装,这种方法的好处是只要下载到跟自己平台对应的就可以,但缺点也在这里,不是每个平台都能找到合适的。不管是编译安装,还是使用发行包安装,都需要有一些有些基本基本支持。比如Linux下的GTK+支持,捕捉包时需要用的libpcap. 这一点可以参考第 2.3 节 “在UNIX下安装之前 ”。编译的一般步骤是解压,编译,安装(tar zxvf Wireshark-0.99.5-tar.gz;make;make install).直接安装则是根据各自平台安装的特点。
2.7. 在Windows下编译源
在Windows平台下,我们建议最好是使用二进制包直接安装,除非您是从事Wireshark开发的。 如果想了解关于Windows下编译安装Wireshark,请查看我们的开发WIKI网站http://wiki.wireshark.org/Development来了解最新的开发方面的文档。
2.8. 在Windows下安装Wireshark
本节将探讨在Windows下安装Wireshark二进制包。
2.8.1. 安装Wireshark
您获得的Wireshark二进制安装包可能名称类似Wireshark-setup-x.y.z.exe.
Wireshark安装包包含WinPcap,所以您不需要单独下载安装它。
您只需要在http://www.wireshark.org/download.html#releases下载Wireshark安装包并执行它即可。除了普通的安装之外,还有几个组件供挑选安装。
提示:尽量保持默认设置
如果您不了解设置的作用的话。
<a name="2.8.1.1"></a>选择组件[11]
Wireshark(包括GTK1和GTK2接口无法同时安装):
如果您使用GTK2的GUI界面遇到问题可以尝试GTK1,在Windows下256色(8bit)显示模式无法运行GTK2.但是某些高级分析统计功能在GTK1下可能无法实现。
Wireshark GTK1-Wireshark 是一个GUI网络分析工具
Wireshark GTK2-Wireshark 是一个GUI网络分析工具(建议使用GTK2 GUI模组工具)
GTK-Wimp-GTKWimp是诗歌GTK2窗口模拟(看起来感觉像原生windows32程序,推荐使用)
TSshark-TShark 是一个命令行的网络分析工具
插件/扩展(Wireshark,TShark分析引擎):
Dissector Plugins-分析插件:带有扩展分析的插件
Tree Statistics Plugins-树状统计插件:统计工具扩展
Mate - Meta Analysis and Tracing Engine (experimental):可配置的显示过滤引擎,参考http://wiki.wireshark.org/Mate.
SNMP MIBs: SNMP,MIBS的详细分析。
Tools/工具(处理捕捉文件的附加命令行工具
User’s Guide-用户手册-本地安装的用户手册。如果不安装用户手册,帮助菜单的大部分按钮的结果可能就是访问internet.
- Editcap - Editcap is a program that reads a capture file and writes some or all of the packets into another capture file. /Editcap是一个读取捕捉文件的程序,还可以将一个捕捉文件力的部分或所有信息写入另一个捕捉文件。(文件合并or插入?)
Text2Pcap - Text2pcap is a program that reads in an ASCII hex dump and writes the data into a libpcap-style capture file./Tex2pcap是一个读取ASCII hex,写入数据到libpcap个文件的程序。
Mergecap - Mergecap is a program that combines multiple saved capture files into a single output file. / Mergecap是一个可以将多个播捉文件合并为一个的程序。
Capinfos - Capinfos is a program that provides information on capture files. /Capinfos是一个显示捕捉文件信息的程序。
<a name="c2.8.1.2"></a>“Additional Tasks”页
Start Menu Shortcuts-开始菜单快捷方式-增加一些快捷方式到开始菜单
Desktop Icon-桌面图标-增加Wireshark图标到桌面
Quick Launch Icon-快速启动图标-增加一个Wireshark图标到快速启动工具栏
Associate file extensions to Wireshark-Wireshark文件关联-将捕捉包默认打开方式关联到Wireshark
<a name="c2.8.1.3"></a>Install WinPcap?”页
Wireshark安装包里包含了最新版的WinPcap安装包。
如果您没有安装WinPcap 。您将无法捕捉网络流量。但是您还是可以打开以保存的捕捉包文件。
Currently installed WinPcap version-当前安装的WinPcap版本
Install WinPcap x.x -如果当前安装的版本低于Wireshark自带的,该选项将会是默认值。
Start WinPcap service "NPF" at startup -将WinPcap的服务NPF在启动时运行-这样其它非管理员用户就同样可以捕捉包了。
更多关于WinPcap的信息:
Wireshark 相关http://wiki.wireshark.org/WinPcap
WinPcap官方网站:http://www.winpcap.org
<a name="c2.8.1.4"></a>安装命令选项
您可以直接在命令行运行安装包,不加任何参数,这样会显示常用的参数以供交互安装。 在个别应用中,可以选择一些参数定制安装:
/NCRC 禁止CRC校检
/S 静默模式安装或卸载Wireshark.注意:静默模式安装时不会安装WinPcap!
/desktopicon 安装桌面图标,/desktopicon=yes表示安装图标,反之则不是,适合静默模式。
/quicklaunchicon 将图标安装到快速启动工具栏,=yes-安装到工具栏,=no-不安装,不填按默认设置。
/D 设置默认安装目录(
$INSTDIR
),首选安装目录和安装目录注册表键值,该选项必须设置到最后。即使路径包含空格
例 2.5.
wireshark-setup-0.99.5.exe /NCRC /S /desktopicon=yes /quicklaunchicon=no /D=C:\Program Files\Foo
2.8.2. 手动安装WinPcap
注意
事先声明,Wireshark安装时会谨慎对待WinPcap的安装,所以您通常不必担心WinPcap。
下面的WinPcap仅适合您需要尝试未包括在Wireshark内的不同版本WinPcap。例如一个新版本的WinPcap发布了,您需要安装它。
单独的WinPcap版本(包括alpha or beta版)可以在下面地址下载到
WinPcap官方网站:http://www.winpcap.org
Wiretapped.net 镜像站点: http://www.mirrors.wiretapped.net/security/packet-capture/winpcap
在下载页面您将会发现WinPcap的安装包名称通常类似于”auto-installer”。它们可以在NT4.0/2000/XP/vista下安装。
2.8.3. 更新Wireshark
有时候您可能想将您的WinPcap更新到最新版本,如果您订阅了Wireshark通知邮件,您将会获得Wireshark新版本发布的通知,见第 1.6.4 节 “邮件列表”
。
新版诞生通常需要8-12周。更新Wireshark就是安装一下新版本。下载并安装它就可以。更新通常不需要重新启动,也不会更改过去的默认设置
2.8.4. 更新WinPcap
WinPcap的更新不是十分频繁,通常一年左右。新版本出现的时候您会收到WinPcap的通知。更新WinPcap后需要重新启动。
警告
在安装新版WinPcap之前,如果您已经安装了旧版WinPcap,您必须先卸载它。最近版本的WinPcap安装时会自己卸载旧版。
2.8.5. 卸载Wireshark
你可以用常见方式卸载Wireshark,使用添加/删除程序,选择”Wireshark”选项开始卸载即可。
Wireshark卸载过程中会提供一些选项供您选择卸载哪些部分,默认是卸载核心组件,但保留个人设置和WinPcap.
WinPcap默认不会被卸载,因为其他类似Wireshark的程序有可能同样适用WinPcap
2.8.6. 卸载WinPcap
你可以单独卸载WinPcap,在添加/删除程序选择”WinPcap”卸载它。
注意
卸载WinPcap之后您将不能使用Wireshark捕捉包。
在卸载完成之后最好重新启动计算机。
[11] 涉及到过多的名次,软件又没有中文版,这里及以后尽量不翻译名称