(2019年2月19日注:这篇文章原先发在自己github那边的博客,时间是2016年8月25日)

  Wireshark为网络管理员常用的一个网络管理工具,通过使用这个软件,我们可以对本机网卡上的经过的数据包进行分析,通常包括了当前TCP/IP协议下几乎所有的数据包,我们可以根据抓取下来的数据包进行分析,从而得出本机附近的网络情况到底如何,以及网络的部分路由情况。

  本次所使用的操作系统是CentOS 6.5桌面图形版,比较简单,分为两种形式的安装,一种是直接安装,另外一种是源码安装。


一、直接安装

  只需要两句命令便可以完成安装,中间需要安装什么就按y。

 [root@JCChan ~]# yum install wireshark //  安装软件
[root@JCChan ~]# yum install wireshark-gnode // 安装软件的桌面显示,便于操作

  

  这种方法能快速安装一系列的软件及其依赖包,我们知道,在Linux中,软件的安装最麻烦的就是依赖包的安装系列,特别是基于编译好的rpm或者deb包,yum安装或者是apt-get安装能比较快捷的解决这个问题,但缺点就是安装源的软件版本一般不会是最新的,或者甚至是没有这样子的安装包,这时候就不能使用yum安装了,就要使用我们的源码安装。


二、源码安装

  对于软件来说,源码是指编写的程序,比如C语言,C++语言,Java语言等,是可以被人们所能读懂的。而另一种软件的代码是指二进制文件,人们读不懂,但是计算机能够明白它写的是什么,从源码到二进制文件的过程叫做编译,对于源码安装来说,编译过程是最漫长的。源码安装有个最大的好处就是你可以把软件安装到你所需要的地方,而不像yum会安装到各种各样的地方,另外源码安装可以安装软件的最新版本。

  1.先下载需要的两个安装包,分别是libpcap和wireshark source code。

  2. 下载解压libpcap和wireshark。

 [root@JCChan 下载]# tar zxvf libpcap-1.7..tar.gz //解压压缩包
[root@JCChan 下载]# tar xvf wireshark-1.12..tar.bz2 //解压压缩包

如下图所示,可以看到Wireshark软件是由很多个C文件写成的。

  3. 由于libpcap是wireshark的依赖包,因此需要先编译它。

 [root@JCChan 下载]# cd libpcap-1.7.
[root@JCChan libpcap-1.7.]# ./configure

  出现第一个错误,没有合适的C编译器,不能编译C文件。

  解决方案:安装gcc软件环境,如下图所示。

 [root@JCChan libpcap-1.7.]# yum -y install gcc    //安装gcc

  4. 重新开始编译,出现第二个错误,没有flex软件包。

  解决方案:安装flex软件包。

 [root@JCChan libpcap-1.7.]# yum install flex  //安装flex软件包

  5. 继续编译,这次就可以成功编译了。

  6. 开始安装

 [root@JCChan libpcap-1.7.]# make && make install

  出现如下的错误,yacc命令没找到。

  解决方案:安装byacc软件包。

 [root@JCChan libpcap-1.7.]# yum install byacc //安装byacc

  7. 再重新安装一次,没有报错误信息,代表libpcap安装成功。

  8. 进入wireshark安装包的目录,同样开始编译,出现错误,需要一个c++编译器。

  解决方案:安装一个C++编译器。

 [root@JCChan wireshark-1.12.]# yum -y install gcc gcc-c++ gdb    //安装c++编译器

  9. 重新编译,出现下一个错误,Qt is not available.

  解决方案:安装qt相关的包,如下图所示。

[root@JCChan wireshark-1.12.]# yum -y install qt4-dev-tools qt4-doc qt4-qtconfig qt4-demos qt4-designer

  10. 再次重新编译,继续有错误,这次是要安装gtk+3。

  解决方案:安装gtk+2,到时使用gtk+2来编译,gtk+3的安装方法暂时还没有找到。

 [root@JCChan wireshark-1.12.]# yum -y install gtk*
[root@JCChan wireshark-1.12.]# ./configure -with-gtk2

  这样子就能编译成功了。

  11. 开始安装,还是需要比较长的时间的,但是能安装成功!如下图所示

 [root@JCChan wireshark-1.12.]# make && make install

  12. 在当前目录下敲入一下命令,就能打开软件,并且打开到界面了!

 [root@JCChan wireshark-1.12.]# ./wireshark

  13. 抓包结果测试,可以看到有广播的ARP包以及有SSDP守护进程。

  如今经过一年的洗礼,已经早已习惯了Linux命令行界面,然而重新看回这些自己学习Linux时做过的小项目,依旧收获颇丰。

CentOS源码安装Wireshark的更多相关文章

  1. CentOS源码安装QT

    在VirtualBox上的CentOS下安装qt-everywhere-opensource-src-4.8.4 ,执行 ./confiure时失败,失败信息为:Basic XLib function ...

  2. 简单说明CentOS源码安装程序

    第一步.安装依赖包.一般官网会有依赖关系,没有就网上搜索一下. 第二步.下载源码包,上传至CentOS服务器 第三步.解压缩 第四步.进入源码文件夹 第五步.执行./configure,这一步主要是为 ...

  3. CentOS 源码安装MySQL5.7

    一.安装方式源码安装,源码包名称mysql-boost-5.7.27.tar.gz,此版本包含boost库,在解压后的boost路径下.安装时,可以-DDOWNLOAD_BOOST=1 -DWITH_ ...

  4. linux(centos)源码安装git

    最近使用一个开源库,部署的的时候需要用git克隆依赖库.刚好系统没安装git.就尝试了源码安装git. 源码下载地址:http://codemonkey.org.uk/projects/git-sna ...

  5. CentOS源码安装 Tomcat/8.0.24

    依个人的习惯,喜欢将源码安装在/usr/local这个目录下面: 第一步:下载源码 wget http://archive.apache.org/dist/tomcat/tomcat-8/v8.0.2 ...

  6. Centos源码安装Python3

    CentOS7默认安装了python2.7.5,当需要使用python3的时候,可以手动下载Python源码后编译安装. 下载python(https://www.python.org/ftp/pyt ...

  7. centos 源码安装php5.5

    系统环境: CentOS 6.5 / 7.0 x86_64 Fedora 20 x86_64下载 PHP 源码包 # wget http://cn2.php.net/distributions/php ...

  8. CentOS源码安装搭建LNMP全过程(包括nginx,mysql,php,svn)【转】

    转自:http://blog.csdn.net/yanzi1225627/article/details/49123659 服务器环境为:CentOS6.5 64位 目标:搭建LNMP(Linux + ...

  9. centos 源码安装git

    (1) 添加rpmforge源 wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686 ...

随机推荐

  1. 在linux 或docker中使用 system.drawing.common

    在dockerfile 中添加 FROM microsoft/dotnet:2.1-aspnetcore-runtime RUN apt-get update RUN apt-get install ...

  2. OC开发系列-@property和@synthesize

    property和synthesize 创建一个Person类.提供成员属性的_age和_height的setter和getter方法. #import <Foundation/Foundati ...

  3. iOS开发系列-HTTPS

    HTTPS 网景在1994年创建了HTTPS,并应用在网景导航者浏览器中. 最初,HTTPS是与SSL一起使用的:在SSL逐渐演变到TLS. HTTPS协议与HTTP协议的一些不同: http是超文本 ...

  4. c# 使用Expression 生成sql

    使用Expression 生成sql  update语句的时候遇到了个问题 ,Expression<Action<T>>  la   这个委托里面老获取不到 引用类型的值,甚至 ...

  5. sql (3) where

    WHERE 子句用于规定选择的标准.语法SELECT 列名称 FROM 表名称 WHERE 列 运算符 值 引号的使用请注意,我们在例子中的条件值周围使用的是单引号. SQL 使用单引号来环绕文本值( ...

  6. python中map函数的用法

    map函数类似一个生成器 具体用例如下: def add(x): a =[,,] b = map(add,[,,]) print( list(map(add,[,,])) ) print(b,type ...

  7. 思维构造——cf1090D

    /* 只要找到两个没有关系的点即可 */ #include<bits/stdc++.h> using namespace std; #define maxn 100005 long lon ...

  8. Vue+Iview+Node 项目结构和配置

    1.项目调整后的目录 api:数据接口定义 assets:静态文件 components:组件  config:项目相关配置  driective:指令   router:路由   store:状态管 ...

  9. 普通的maven项目变成web项目

    command+: 或者 这个修改同样可以解决idea中不能新建servlet的问题. 这里最后的目录结构是这样的,如果在上面的设置中尝试修改目录,会导致无法创建servlet,比如我希望将根目录改成 ...

  10. 阿里云CentOs7上安装GitLab

    一.安装 基本上可以根据官网的教程来安装:https://www.gitlab.com.cn/installation/#centos-7 只不过我们暂时没有邮件服务器,所以postfix没有安装. ...