偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

ICMP協(xié)議全解析

網絡 網絡管理
ICMP全名為(INTERNET CONTROL MESSAGE PROTOCOL)網絡控制消息協(xié)議。ICMP報文就像是IP報文的小弟,總頂著IP報文的名頭出來混。

1. ICMP簡介

ICMP全名為(INTERNET CONTROL MESSAGE PROTOCOL)網絡控制消息協(xié)議。

ICMP的協(xié)議號為1。

ICMP報文就像是IP報文的小弟,總頂著IP報文的名頭出來混。

因為ICMP報文是在IP報文內部的,如圖:

ICMP屬于TCP/IP協(xié)議族,工作在網絡層(第三層),用于在IP主機、路由器之間傳遞控制消息。

控制消息是指網絡通不通、主機是否可達、路由是否可用等網絡本身的消息。這些控制消息雖然并不傳輸用戶數據,但是對于用戶數據的傳遞起著重要的作用。

2. ICMP典型運用—ping

ICMP的一個典型應用是Ping。

Ping是檢測網絡連通性的常用工具,同時也能夠收集其他相關信息。

用戶可以在Ping命令中指定不同參數,如ICMP報文長度、發(fā)送的ICMP報文個數、等待回復響應的超時時間等,設備根據配置的參數來構造并發(fā)送ICMP報文,進行Ping測試。

Ping常用的配置參數說明如下:

  • -a source-ip-address指定發(fā)送ICMP ECHO-REQUEST報文的源IP地址。如果不指定源IP地址,將采用出接口的IP地址作為ICMP ECHO-REQUEST報文發(fā)送的源地址。
  • -c count指定發(fā)送ICMP ECHO-REQUEST報文次數。缺省情況下發(fā)送5個ICMP ECHO-REQUEST報文。
  • -h ttl-value指定TTL的值。缺省值是255。
  • -t timeout指定發(fā)送完ICMP ECHO-REQUEST后,等待ICMP ECHO-REPLY的超時時間。

Ping命令的輸出信息中包括目的地址、ICMP報文長度、序號、TTL值、以及往返時間。序號是包含在Echo回復消息(Type=0)中的可變參數字段,TTL和往返時間包含在消息的IP頭中。

3. ICMP典型運用—Tracert

ICMP的另一個典型應用是Tracert。

Tracert基于報文頭中的TTL值來逐跳跟蹤報文的轉發(fā)路徑。

為了跟蹤到達某特定目的地址的路徑,源端首先將報文的TTL值設置為1。

該報文到達第一個節(jié)點后,TTL超時,于是該節(jié)點向源端發(fā)送TTL超時消息,消息中攜帶時間戳。

然后源端將報文的TTL值設置為2,報文到達第二個節(jié)點后超時,該節(jié)點同樣返回TTL超時消息,以此類推,直到報文到達目的地。

這樣,源端根據返回的報文中的信息可以跟蹤到報文經過的每一個節(jié)點,并根據時間戳信息計算往返時間。

Tracert是檢測網絡丟包及時延的有效手段,同時可以幫助管理員發(fā)現(xiàn)網絡中的路由環(huán)路。

Tracert常用的配置參數說明如下:

  • -a source-ip-address指定tracert報文的源地址。
  • -f first-ttl指定初始TTL。缺省值是1。
  • -m max-ttl指定最大TTL。缺省值是30。
  • -name使能顯示每一跳的主機名。
  • -p port指定目的主機的UDP端口號。

4. ICMP類型

ICMP報文主要有兩大功能:查詢報文和差錯報文。

對于查詢報文,常用的ping命令,以及用于無盤系統(tǒng)啟動獲取網絡子網掩碼查詢報文,以及時間戳報文,目標主機收到返回相應的格式的回應包;

對于差錯報文在一些情況下目標主機不會返回對應的數據包:

5. 目的不可達(Destination Unreachable Message)

日常生活中,郵寄包裹會經過多個傳遞環(huán)節(jié),任意一環(huán)如果無法傳下去,都會返回寄件人,并附上無法郵寄的原因。

同理,當路由器收到一個無法傳遞下去的IP報文時,會發(fā)送ICMP目的不可達報文(Type為3)給IP報文的源發(fā)送方。

報文中的Code就表示發(fā)送失敗的原因。

  1. Code  
  2. 0 = net unreachable;  
  3. 1 = host unreachable;  
  4. 2 = protocol unreachable;  
  5. 3 = port unreachable;  
  6. 4 = fragmentation needed and DF set;  
  7. 5 = source route failed. 

6. 超時(Time Exceeded Message)

網絡傳輸IP數據報的過程中,如果IP數據包的TTL值逐漸遞減為0時,需要丟棄數據報。

這時,路由器需要向源發(fā)送方發(fā)送ICMP超時報文(Type為11),Code為0,表示傳輸過程中超時了。

一個IP數據報可能會因為過大而被分片,然后在目的主機側把所有的分片重組。

如果主機遲遲沒有等到所有的分片報文,就會向源發(fā)送方發(fā)送一個ICMP超時報文,Code為1,表示分片重組超時了。

7. 參數錯誤報文(Parameter Problem Message)

當路由器或主機處理數據報時,發(fā)現(xiàn)因為報文頭的參數錯誤而不得不丟棄報文時,需要向源發(fā)送方發(fā)送參數錯誤報文(Type為12)。

當Code為0時,報文中的Pointer表示錯誤的字節(jié)位置。

8. 源冷卻(Source Quench Message)

路由器在處理報文時會有一個緩存隊列。

如果超過最大緩存隊列,將無法處理,從而丟棄報文。

并向源發(fā)送方發(fā)一個ICMP源冷卻報文(Type為4),告訴對方:“嘿,我這里客滿了,你遲點再來。”

9. 重定向(Redirect Message)

想像一下,在公司中,有人來你的項目組問你某某某在哪兒。

你一想,我們組沒有這人啊。

你肯定就會說,我們組沒有這號人,你去其他組看看。

當路由收到IP數據報,發(fā)現(xiàn)數據報的目的地址在路由表上沒有,它就會發(fā)ICMP重定向報文(Type為5)給源發(fā)送方,提醒它想要發(fā)送的地址不在,去其他地方找找吧。

10. 請求回顯或回顯應答(Echo or Echo Reply Message)

  • Type(8)是請求回顯報文(Echo);
  • Type(0)是回顯應答報文(Echo Reply)。
  • 請求回顯或回顯應答報文屬于查詢報文。
  • Ping就是用這種報文進行查詢和回應。

11. 時間戳或時間戳請求(Timestamp or Timestamp Reply Message)

時間戳報文是用來記錄收發(fā)以及傳輸時間的報文。

  • Originate Timestamp記錄的是發(fā)送方發(fā)送報文的時刻;
  • Receive Timestamp記錄的是接收方收到報文的時刻;
  • Transmit Timestamp表示回顯這最后發(fā)送報文的時刻。

12. 信息請求或信息響應

這種報文是用來找出一個主機所在的網絡個數(一個主機可能會在多個網絡中)。

報文的IP消息頭的目的地址會填為全0,表示this,源地址會填為源IP所在的網絡IP。

好了,今天的分享就到這了~

責任編輯:趙寧寧 來源: 思科CCIE俱樂部
相關推薦

2010-07-13 13:59:04

ICMP協(xié)議

2010-08-02 16:41:15

2019-10-31 08:43:43

ICMPARP協(xié)議ARP欺騙

2010-08-02 16:43:46

ICMP協(xié)議

2010-06-24 13:18:38

ICMP協(xié)議

2014-11-27 09:38:12

2010-07-13 10:10:07

2014-09-26 14:30:41

2010-07-30 16:00:36

ICMP協(xié)議

2010-08-02 16:08:24

ICMP協(xié)議設置

2010-08-02 16:14:54

2010-06-13 15:53:35

ICMP協(xié)議

2020-02-18 23:53:19

TCP網絡協(xié)議

2010-07-05 16:13:34

2010-07-30 16:28:06

2010-07-28 17:40:07

2010-07-28 17:46:32

2010-08-02 16:56:03

ICMP協(xié)議

2010-07-28 17:19:28

ICMP協(xié)議

2010-07-13 22:07:08

ICMP協(xié)議設置
點贊
收藏

51CTO技術棧公眾號