【Linux】Wireshark在Linux系统下的安装及使用

来源:互联网 发布:java 射击游戏 编辑:程序博客网 时间:2024/06/01 18:25

       昨天在linux系统下想对OpenBTS进行抓包,所以安装了wireshark,这里简单介绍一下wireshark的安装以及设置,并对过程中遇到的一个问题提出另一个方案。

Wireshark安装

       Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换,并且其中包含了很多协议,比如GSMLTE等,可以方便的查看在数据交换过程中,不同层之间的通信,有利于学习,下面简单介绍wireshark的安装及配置。

       Ubuntu系统下,可以使用apt-get install来进行wireshark的安装,即使用以下命令,而在安装过程中,会提示配置如下,这个默认为No,选择为Yes,如果选错,也没关系,稍后可以进行设置:

       sudo apt-get install wireshark


       Wireshark安装完成后,在终端输入wireshark即可运行该软件,如下图所示:


        如上图所示,安装完成后,是无法进行直接使用的,即表示没有权限来进行操作,因为毕竟是要查看PC的网络传输嘛,所以需要进行一下配置,配置如下:首先输入一下命令,设置非root用户权限,即安装的时候的那个界面,选择Yes,

        sudo dpkg-reconfigure wireshark-common

        然后使用编辑器打开/etc/group,找到wireshark(如果是刚刚安装的,一般就在最后一行),这个表示wireshark在安装的时候,默认生成了一个叫做wireshark的group,但是没有任何用户属于这个group,所以只要将使用wireshark的用户添加到wireshark之后就可以了,楼主这里使用vim进行修改,命令如下:

        sudo vim /etc/group


Ok,保存修改,然后注销或者重启PC,重新输入wireshark即可使用其进行抓包分析了,界面如下所示:


Xshell使用wireshark问题

        由于我一直在使用ssh进行远程操作Linux PC,所以一直在使用Xshell,而在使用Xshell远程需要使用图形化界面的时候,需要配置Xmanager以及开通属性->隧道中的设置,但是在一次使用的过程中,由于系统本身由于依赖库的问题,没有图形化界面,因此在输入wireshark的时候,出现以下错误,

Qt: XKEYBOARD extension not present on the X server.

The X11 connection broke: I/O error (code 1)

XIO:  fatal IO error 0 (Success) on X server "localhost:10.0"

      after 202 requests (202 known processed) with 0 events remaining

       具体原因没有分析,以下是快速解决的方法,安装wireshark-gtk,顾名思义,就是wireshark的gtk版本,安装命令还是apt-getinstall即可,安装完成后,输入wireshark-gtk进行启动wireshark。

Wireshark使用介绍

       下面简单介绍一下使用wireshark抓包的过程,具体的大家可以参考官方的文档,以下简单介绍使用wireshark抓取OpenBTS发短信以及打电话的信息流程,首先,根据OpenBTS的端口定义,只需要抓取本机地址的即可,选择 LocalBack:IO,然后start


       开始抓取之后的界面如下图,主要包括三个部分吧,首先是数据帧(不太专业,我是这样理解的哈),表示实时的数据包,在该窗口选择需要查看的数据帧后,可以在下一个窗口进行分析,即该数据包是什么协议,帧头,信息什么的,最后一部分就是对应的数据。


       其中很重要的一个工具,就是Filter,顾名思义,就是滤波器,表示可以找出想要看的东西,在这里,OpenBTS是使用SIP协议进行短信收发以及打电话的,我们抓取SIP协议的数据包:




 

原创粉丝点击