Wireshark-ICMP协议学习

一、ICMP简介及报文格式

1、ICMP简介

ICMP是(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。

2、ICMP报文格式,如下图所示,ICMP包有一个8字节长的包头,其中前4个字节是固定的格式,包含8位类型字段,8位代码字段和16位的校验和;后4个字节根据ICMP包的类型而取不同的值。


类型:一个8位类型字段,表示ICMP数据包类型;

代码:一个8位代码域,表示指定类型中的一个功能,如果一个类型中只有一种功能,代码域置为0;

检验和:数据包中ICMP部分上的一个16位检验和。

类型和代码如下图所示:


二、Wireshark抓包分析

ICMP报文的类型和代码组合起来有很多种,用Wireshark找几个常见的来学习一下。

1、下图是一个PING百度包,从中可以看到类型为8,代码为0,代表一个PING请求。


2、下图是一个PING百度包,从中可以看到类型为0,代码为0,代表一个应答PING。


3、下图是一个tracert百度包,从中可以看到类型为11,代码为0,代表超时(从IP协议可以看到源地址为192.168.1.1,目的地址为192.168.1.106,应该是tracer www.baidu.com后返回的应答消息,为什么会超时,目前没想明白)。


4、下图是一个tracert百度包,从中可以看到类型为3,代码为3,代表端口不可达(应该是tracer www.baidu.com后返回的应答消息,为什么会端口不可达,目前没想明白)。


三、小结

协议这个东西不学的时候,自己感觉还懂一点点,再学就发现自己毛都不会。

路漫漫其修远啊。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.这篇文章不是本人原创的,只是个人为了对这部分知识做一个整理和系统的输出而编辑成的,在此郑重地向本文所引用文章的...
    SOMCENT阅读 13,132评论 6 174
  • 本篇结构: ICMP IGMP 附 反思 接着上一篇TCP/IP--划分子网和构造超网,本章接着分享IP协议的两个...
    w1992wishes阅读 11,032评论 0 4
  • 个人认为,Goodboy1881先生的TCP /IP 协议详解学习博客系列博客是一部非常精彩的学习笔记,这虽然只是...
    贰零壹柒_fc10阅读 5,090评论 0 8
  • 1. 基础知识 1.1 3种常见的计算机体系结构划分 OSI分层(7层):物理层、数据链路层、网络层、传输层、会话...
    Mr希灵阅读 19,936评论 6 120
  • 地址解析协议ARP 物理这一级,主机和路由器是用物理地址来区别的。物理地址是一个本地地址,管辖范围是本地网络,所以...
    顾慎为阅读 1,110评论 0 1