1、wireshark基础


wireshark中 过滤协议_wireshark中 过滤协议


②双击你电脑使用的网卡,比如:本地连接(有线网卡) 或 WLAN(无线网络连接),即可进入wireshark抓包界面,其实大家仔细观察可以发现,有数据流量包的网卡的曲线很明显。

wireshark中 过滤协议_wireshark_02


③wireshark启动后,wireshark处于抓包状态中,若要停止抓包,可以点击:红色的正方形按钮

wireshark中 过滤协议_网络_03


④为避免其他无用的数据包影响分析,可以通过在过滤栏设置过滤条件进行数据包列表过滤

wireshark中 过滤协议_HTTP_04


wireshark中 过滤协议_wireshark_05


Packet Details Pane(数据包详细信息), 在数据包列表中选择指定数据包,在数据包详细信息中会显示数据包的所有详细信息内容。数据包详细信息面板是最重要的,用来查看协议中的每一个字段。各行信息分别为

(1)Frame: 物理层的数据帧概况

(2)Ethernet II: 数据链路层以太网帧头部信息

(3)Internet Protocol Version 4: 互联网层IP包头部信息

(4)Transmission Control Protocol: 传输层T的数据段头部信息,此处是TCP

(5)Hypertext Transfer Protocol: 应用层的信息,此处是HTTP协议

wireshark中 过滤协议_wireshark_06


wireshark中 过滤协议_wireshark_07


wireshark中 过滤协议_HTTP_08


wireshark中 过滤协议_测试工具_09


wireshark中 过滤协议_wireshark_10


wireshark中 过滤协议_测试工具_11

2、wireshark过滤器表达式的规则
显示过滤器语法和实例:
1)wireshark抓包比较操作符

比较操作符有== 等于、!= 不等于、> 大于、< 小于、>= 大于等于、<=小于等于。

(2)wireshark抓包协议过滤

比较简单,直接在Filter框中直接输入协议名即可。注意:协议名称需要输入小写。

tcp,只显示TCP协议的数据包列表

http,只查看HTTP协议的数据包列表

icmp,只显示ICMP协议的数据包列表

wireshark中 过滤协议_测试工具_12


(3) wireshark抓包ip过滤

ip.src ==192.168.1.104 显示源地址为192.168.1.104的数据包列表

ip.dst==192.168.1.104, 显示目标地址为192.168.1.104的数据包列表

ip.addr == 192.168.1.104 显示源IP地址或目标IP地址为192.168.1.104的数据包列表

wireshark中 过滤协议_HTTP_13


(4)wireshark抓包端口过滤

tcp.port ==80, 显示源主机或者目的主机端口为80的数据包列表。

tcp.srcport == 80, 只显示TCP协议的源主机端口为80的数据包列表。

tcp.dstport == 80,只显示TCP协议的目的主机端口为80的数据包列表。

wireshark中 过滤协议_wireshark_14


(5) wireshark抓包Http模式过滤

http.request.method==“GET”, 只显示HTTP GET方法的。

(6)wireshark抓包逻辑运算符为 and/or/not过滤多个条件组合时,使用and/or。比如获取IP地址为192.168.1.104的ICMP数据包表达式为ip.addr == 192.168.1.104 and icmp

wireshark中 过滤协议_网络_15


(7)按照数据包内容过滤。点击具体的协议表示,进行针对过滤

wireshark中 过滤协议_HTTP_16


wireshark中 过滤协议_网络_17


或者选择 名字、字段描述之类的

wireshark中 过滤协议_HTTP_18


wireshark中 过滤协议_测试工具_19


后面条件表达式就需要自己填写。如下我想过滤出data数据包中包含"abcd"内容的数据流。包含的关键词是contains 后面跟上内容

对于我们日常的分析有用的就是前面的五个字段。它们的含义是:SYN表示建立连接,FIN表示关闭连接,ACK表示响应,PSH表示有DATA数据传输,RST表示连接重置。

3、流跟踪
Wireshark分析功能中令人满意的一点就是它能够将来自不同包的数据重组成统一易读的格式,一般称作packet transcript。

流跟踪功能可以把从客户端发网服务器的数据都排好序使其变得更易查看。

现有四种类型的流可以被跟踪。

TCP流:重组使用TCP协议的数据,比如HTTP和FTP。

UDP流:重组使用UDP协议的数据,比如DNS。

SSL流:重组加密的协议,比如HTTPS。你必须提供密钥来解密流量。

HTTP流:从HTTP协议中重组和解压数据。当使用TCP流跟踪但又没有完全解码出HTTP数据时,这个功能就派上用场了。

如一个简单的HTTP交互举例来说,选中一个HTTP或TCP数据包,右键单击这个文件并选择追踪流。此时会打开一个新窗口。

wireshark中 过滤协议_wireshark中 过滤协议_20


wireshark中 过滤协议_测试工具_21


注意这个窗口中的文字以两个颜色显示,其中红色用来标记从源地址前往目标地址的流量,而蓝色用来区分出相反方向,也就是从目标地址到源地址的流量。这里的颜色标记以哪方先开始通信为准。