1、 wireshark概述
wireshark也是一种抓包工具,它与fiddler不同于,fiddler通常用于网络包,http,https的抓包,而wireshark通常用于网络协议,如TCP,ARP等,可以查看对应协议发送的报文的每个字段,包头等。
wireshark是针对网卡的抓包,当pc有多块网卡时,只需要选择一块网卡用于抓包。
2、wireshark安装与配置
(1)下载
可以去官网下载最新版本:http://wireshark.org/download
(2)安装
① 点击下载好的exe文件
②这里是阅读协议内容,直接点击下一步
③这里默认安装就可以
④这里第二个选项为创建桌面图标,可按照自己的情况选择,其余的保持默认
⑤安装路径选择
⑥这里需要安装NPcap,如果电脑上已安装的可忽略
⑦这里需要安装USBPcap,如果电脑上已安装的可以忽略
⑧开始安装Wireshark
⑨安装到后期阶段会提示安装NPcap,直接点击下一步默认安装即可
⑩安装完成。
3、wireshark使用方法
(1)选择网卡
打开wireshark,并选择抓包的网卡 ,如图,由于本人PC连接的是自己家里的wifi,所以这里选择WLAN即可,首次打开为图一,进入wireshark抓包界面后打开方法为图二。
(2)抓包
开始抓包:
进入wireshark抓包界面,进入之后是正在捕获中。 这里先展示不过滤的情况。
停止抓包:
点击左上角的停止抓包按钮,可停止抓包,接下来就可以分析抓到的包内容。
(3)包体分析
可以看到上图中,我们可以抓到各种包体,如ARP、TCP、DNS、HTTP等,这里以ARP为例,点击ARP包体信息,查看对应的包内容。
首先,需要了解一下ARP的原理。ARP是地址解析协议,其原理是,当设备A想要向设备B发送报文时,但是设备A并不知道设备B的mac地址,而ARP又是二层协议,只认mac,所以这时,设备A就会先在自己的高速缓存表中通过设备B的ip去找B的mac信息,若不存在,就会广播报文给设备A所在网段的所有设备,其中,广播的报文就会包括一些字段,设备A的ip,设备A的mac,设备B的ip,设备B的mac(mac为空),这时,同一网段的所有设备都会收到设备A发送的报文,这些设备会判断报文中字段设备B的ip是不是自己的ip地址,若不是,直接丢弃,不会回应,当B收到后发现对应的目的ip为自己的ip,就会将A的ip、mac等信息放于自己的高速缓存表中,并且回应A一个ARP报文,其中就包括自己的mac地址,A收到后,也会存与自己的高速缓存表中,此时,A和B就互相知道对方的信息,下次发送就可以直接通过表信息找到B并发送其他报文了。
如下图,我这里是,路由器会发送广播报文找192.168.127.196,而我的pc收到后,给出一个ARP的回应。
这里是以ARP协议为例,其他的报文协议也类似。
(4)过滤
过滤分为两种,一种是抓包的时候就过滤对应的协议,前面有提到过,另一中是抓包后进行过滤。
①抓包过滤
其中,tcp就是一种抓包设置的过滤,抓包开始后,只会抓到tcp的包体。
②筛选过滤
协议过滤,一般为抓到的各种协议,筛选协议,如ARP、TCP、DNS等。
还可以对其他字段进行筛选,如端口、源地址等。