简介
Wireshark是 开源 的非常流行的网络封包分析软件,功能十分强大,可以截取各种网络封包,显示网络封包的详细信息。
开源地址:https://github.com/wireshark/wireshark
编译和测试方式
1.选择操作环境
本文选用华为鲲鹏 云服务 ECS KC1实例做测试
2. 获取源代码
https://github.com/wireshark/wireshark/releases提供Wireshark各版本的源码压缩包,可以直接下载。
3. 编译源代码
本文以“wireshark-2.6.8”版本为例,下载源码,并编译安装。
1)配置“wireshark-2.6.8”的依赖环境。
yum install autoconf automake libtool byacc flex libgcrypt-devel gcc-c++ gtk3 gtk3-devel libpcap-devel -y
2)下载“wireshark-2.6.8”源码,并解压。
cd /usr/local/src/
wget https://github.com/wireshark/wireshark/archive/v2.6.8.tar.gz
tar -xvf v2.6.8.tar.gz
3)编译安装Wireshark。
cd /usr/local/src/wireshark-2.6.8/
./autogen.sh
./configure with_qt=no with_gtk=yes --prefix=/usr/local/src/wireshark/
make -j4 && make install
4)配置Wireshark环境变量。
vi /etc/profile
将下面的环境变量配置插入倒数第三行,并保存退出。
export PATH=$PATH:/usr/local/src/wireshark/bin
done
export PATH=$PATH:/usr/local/src/wireshark/bin
unset i
unset -f pathmunge
5) 使环境变量生效。
source /etc/profile
4. 测试已完成编译的软件
1)查看Wireshark版本号。
tshark --version
回显内容如下:
Running as user "root" and group "root". This could be dangerous.
TShark (Wireshark) 2.6.8 (Git Rev Unknown from unknown)
2)使用Wireshark抓取eth0网卡数据。
a.抓取数据。
tshark -w package.txt -i eth0 -q
回显内容如下:
Running as user "root" and group "root". This could be dangerous.
Capturing on 'eth0'
b.查看抓取的数据。
使用“Ctrl”+“Z”按键停止抓取,采用tshark打开“package.tx”t查看。
tshark -r package.txt -x -V | more
tshark参数说明
“-w”设置数据保存成的文件名称。
“-i”设置抓包的网络接口。
“-r”设置tshark分析的输入文件。
“-x”设置在解码输出结果中,以“HEX dump”的方式显示具体数据。
“-V”设置解码结果的细节输出格式。
回显内容如下:
Running as user "root" and group "root". This could be dangerous.
Frame 1: 72 bytes on wire (576 bits), 72 bytes captured (576 bits) on interface 0
Interface id: 0 (eth0)
Interface name: eth0
Encapsulation type: Ethernet (1)
Arrival Time: Jul 8, 2019 20:20:22.552687479 CST
[Time shift for this packet: 0.000000000 seconds]
Epoch Time: 1562588422.552687479 seconds
其他安装方式
对于CentOS,可以直接使用yum安装。
yum install wireshark wireshark-devel -y
安装完成后,其他的操作类似,但是yum安装的版本是“wireshark 1.10.14”。