Wireshark抓包——ICMP协议分析 - Go语言中文社区

Wireshark抓包——ICMP协议分析


内容:使用Wireshark抓包,分析较简单的数据包。

环境:Windows 7,Wireshark

 

ping是用来测试网络连通性的命令。

一旦发出ping命令,主机会发出连续的测试数据包到网络中,在通常的情况下,主机会收到回应数据包,ping采用的是ICMP协议。

 

例1:对ping www.baidu.com进行抓包和分析,过程如下:

第一步,确定目标地址,选择www.baidu.com作为目标地址。

第二歩,配置过滤器:针对协议进行过滤设置,ping使用的是ICMP协议,抓包前使用捕捉过滤器,过滤设置为icmp。

第三步,启动抓包:点击【start】开始抓包,在命令提示符下键入ping www.baidu.com。

第四步,停止抓包后,截取数据。

可以看到windows下ping默认执行四次ping,因此,Wireshark抓到8个ICMP查询报文,具体看一次请求和应答过程。

第五步,分析数据包,选取一个数据包进行分析。

    1.报文由IP首部和ICMP报文组成。

       蓝色部分为IP首部,共有20字节。

       蓝色部分为ICMP报文,共有40字节。

     2.Type和Code

        通过查询ICMP报文类型可知,Type为8的包为回射请求(Ping请求)

       使用相同的方法,查看Echo (ping) reply包,得到type类型为0

       通过查询ICMP报文类型可知,Type为0的包为回射应答(Ping应答)

 

例2:对ping 192.168.100.157进行抓包和分析,过程如下:

第一步,确定目标地址,选择192.168.100.157作为目标地址。

第二歩,配置过滤器:针对协议进行过滤设置,ping使用的是ICMP协议,抓包前使用捕捉过滤器,过滤设置为icmp。

第三步,启动抓包:点击【start】开始抓包,在命令提示符下键入ping 192.168.100.157。

第四步,停止抓包后,截取数据。

第五步,分析数据包,选取一个数据包进行分析。

每一个包都是通过数据链路层DLC协议,IP协议和ICMP协议共三层协议的封装。DLC协议的目的和源地址是MAC地址,IP协议的目的和源地址是IP地址,这层主要负责将上层收到的信息发送出去,而ICMP协议主要是Type和Code来识别,“Type:8,Code:0”表示报文类型为诊断报文的请求测试包,“Type:0,Code:0”表示报文类型为诊断报文类型请正常的包。ICMP提供多种类型的消息为源端节点提供网络额故障信息反馈,报文类型可归纳如下:

(1)诊断报文(类型:8,代码0;类型:0代码:0);

(2)目的不可达报文(类型:3,代码0-15);

(3)重定向报文(类型:5,代码:0--4);

(4)超时报文(类型:11,代码:0--1);

(5)信息报文(类型:12--18)。

1)目的地址和源地址:

Ipv6:

Ipv4

2)Type和Code:

3)Data:

 

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/fortune_cookie/article/details/89631848
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2019-09-01 10:41:02
  • 阅读 ( 1998 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

推荐文章

猜你喜欢