天天看點

TCP/IP詳解(四)---ICMP:Internet控制封包協定基本概念ICMP查詢封包和差錯封包基于ICMP的應用

基本概念

ICMP(Internet Control Message Protocol,網絡控制封包協定),屬于OSI七層模型中的網絡層,與IP/UDP同屬一層,可以将其看成IP、UDP協定功能的一個補充,因為以前說過,IP協定是不可靠的,其可靠性需借助其他子產品來完成,比如上層的TCP協定或同層的ICMP協定,同層的ICMP提供了差錯封包和查詢封包來了解目前的網絡狀态。

ICMP查詢封包和差錯封包

TCP/IP詳解(四)---ICMP:Internet控制封包協定基本概念ICMP查詢封包和差錯封包基于ICMP的應用

基于ICMP的應用

Ping指令和Traceroute指令。

Ping指令:

相信大家都不陌生,用于檢測目的主機是否可達。

如果主機可達,傳回如下:

TCP/IP詳解(四)---ICMP:Internet控制封包協定基本概念ICMP查詢封包和差錯封包基于ICMP的應用

這裡ping了位址192.168.1.1

位元組=32:說明發了一個32位元組的ICMP查詢封包。

時間=1ms:說明從發封包到收到目的主機回複的時間是1ms,也就是常說的網絡延時。

TTL=64:Time To Live,說明如果這個查詢封包經過64跳還沒被回複,将被丢棄。

注意:如果Ping不通,除了檢測網絡連通性以外,還需注意目的主機防火牆是否屏蔽了Ping的回應要求,這在區域網路Ping不通的情況下非常常見。

Traceroute指令:

Windows下是tracert指令,Linux下是traceroute指令。

用以檢視本地主機到目的網絡主機經過了哪些節點。

TCP/IP詳解(四)---ICMP:Internet控制封包協定基本概念ICMP查詢封包和差錯封包基于ICMP的應用

在Ping不通的情況下,常用此指令來定位到底在哪個網絡節點出了問題。

繼續閱讀