0%

wireshark 观察网络协议

使用wireshark抓包分析网络协议TCPHTTP

Basic

  • 色彩标识,Wireshark 通过颜色让各种流量的报文一目了然。比如默认绿色是 TCP 报文,深蓝色是 DNS,浅蓝是 UDP,黑色标识出有问题的 TCP 报文——比如乱序报文
  • SampleCaptures 下载样本文件

使用 wireshark 观察网络基本协议

TCP

TCP/IP通过三次握手建立一个连接。这一过程中的三种报文是:SYNSYN/ACKACK。第一步是找到 PC 发送到网络服务器的第一个 SYN 报文,这标识了 TCP 三次握手的开始。

如果你找不到第一个 SYN 报文,选择Edit -> Find Packet菜单选项。选择 Display Filter,输入过滤条件:tcp.flags,这时会看到一个 flag 列表用于选择。选择合适的 flag,tcp.flags.syn==1。点击 Find,之后 trace 中的第一个 SYN 报文就会高亮出来了。

1552876060101

Find Packet也可以用于搜索十六进制字符或搜索字符串。

一个快速过滤 TCP 报文流的方式是在Packet List Panel中右键报文,并且选择Follow TCP Stream。这就创建了一个只显示 TCP 会话报文的自动过滤条件。

这一步骤会弹出一个会话显示窗口,默认情况下包含 TCP 会话的 ASCII 代码,客户端报文用红色表示服务器报文则为蓝色。窗口类似下图所示,对于读取协议有效载荷非常有帮助,比如 HTTP,SMTP,FTP。

1552876152950

更改为十六进制 Dump 模式查看载荷的十六进制代码,如下图所示:

1552876202078

关闭弹出窗口,Wireshark 就只显示所选 TCP 报文流。现在可以轻松分辨出 3 次握手信号。

1552876258999

Wireshark 自动为此 TCP 会话创建了一个显示过滤。本例中:tcp.stream eq 14

HTTP

抓包如下:

1552876838977

Follow HTTP如下

1552876904157

Wireshark 自动创建tcp.stream eq 14

1552876944966