ICMP與PING解析

一、ICMP格式

ICMP是(Internet Control Message Protocol)Internet控制報文協議。它是TCP/IP協議族的一個子協議,用於在IP主機、路由器之間傳遞控制消息。linux

ICMP是因特網的標準協議,但ICMP不是高層協議,而是IP層的協議。因此ICMP有一個IP層的頭,Protocol=1,ICMP協議。測試

 二、ICMP測試

進行測試:TYPE=8,CODE=0, echo test.code

 

抓包分析:上面進行了4次ping,因此數據包是8個,一來一回4組ICMP數據包。blog

對應IP包的格式,進行對應分解。IP包的數據部分,就是ICMP包的起始。ip

 

發送的包,ICMP部分,type=8,code=0,request,序號37/9472.
32bit的ICMP就是Header部分,下面是Identifier 1和256,這個字段是爲了標記序號,匹配接收到的響應和發送包。
在linux裏面每次都是惟一的值,而且自增,用來標記每次的發送和接收包。在Windows裏面,是固定值。
  

響應的包,ICMP部分,type=0,code=0,Echo reply,是request answer,序號37/9472.路由

 

 三、ICMP 類型表

https://en.wikipedia.org/wiki/Internet_Control_Message_Protocol#Control_messagesget

 

 

 

相關文章
相關標籤/搜索