wireshark网络分析实战(抓包工具wireshark分析数据)
第一次学习TCP/IP协议时,我觉得协议是非常抽象的。 wireshark可以捕获和分析各种协议,以使抽象更加具体。
wireshark抓住包
wireshar有很多抓住包的教程,所以这里不重复。 参照下图:
wireshark抓住包
支持wireshark快速获取的过滤器
wireshark抓住的内容很多,我们知道过滤我们需要的信息需要设置相应的过滤器。 例如,如果要筛选与ICMP协议相关的日志,可以通过直接在过滤器中输入协议名称“ICMP”来筛选ICMP日志。
这是最简单的过滤条件。 实际上有很多语句可以设置filter,但是如果尝试用ICMP过滤type为3 (无法到达目标)的数据报,但不知道如何写filter,该怎么办?
此时,可以直接利用wireshark提供的As Filter功能,快速获取想要设定的filter。
要过滤ARP数据报中的ARP请求数据报,请直接选中opcode:request(1),右键单击-Copy-As Filter,获得相应的过滤器,如下图所示
支持wireshark快速获取的过滤器
IP数据报
IPv4消息标头
要分析IP数据报的内容,首先需要知道该数据报的数据结构。
IPv4消息标头-图像比维基百科
wireshark过滤IP数据报
然后过滤IP数据报。 从下图可以看到,IP数据报封装在以太网帧中。 以太网帧的类型值为0x0800时,以太网帧封装了IP数据报。
IP数据报封装在以太网帧中
因此,可以通过设置eth.type==0x800来过滤IP数据报。 根据该图,通过比较IPv4消息报头的数据结构,可以更清楚地理解IP数据报。
IP数据报
ARP
ARP消息格式
ARP消息格式-图像比维基百科
wireshark过滤ARP数据报
与IP数据报一样,将ARP数据报封装在以太网帧上,并当以太网帧的类型值为0x0806时进行设置
可以使用eth.type==0x806过滤ARP数据报。
ARP数据图分为请求数据图和应答数据图。
首先,检查我的本机MAC地址,用wireshark过滤ARP请求数据报的MAC地址等于我的本机地址的log。 如下图所示,本机请求IP地址为10.120.1.91的主机的MAC的ARP请求。
ARP请求
上面的ARP数据报提供了ARP请求的sender IP地址过滤器格式。 你只需要过滤
sender IP地址为10.120.1.91,最后过滤的结果只有两条。
其中Target MAC address是我的本地MAC地址,Opcode是2,是从10.120.1.91返回的APR响应。 其中,sender MAC地址是ARP请求的MAC地址。
ARP响应
国际货币基金组织
ICMP数据报格式
ICMP标头-图像比维基百科
wireshark过滤ICMP数据报
IMP标头格式很简单,但对应的类型很多,分析方法也很相似。 选择要设定为过滤条件的参数,将copy设为filter
萍萍请求
ping reply
没有到目的地的路线
ICMP重定向
参考资料
[TCPIP] TCP/IP Illustrated,volume 1: the protocols.w.Richard Stevens。