1. 程式人生 > >Ping及ICMP協議

Ping及ICMP協議

Ping

度娘解釋:

Ping是Windows、Unix和Linux系統下的一個命令。ping也屬於一個通訊協議,是TCP/IP協議的一部分。利用“ping”命令可以檢查網路是否連通,可以很好地幫助我們分析和判定網路故障。

PING (Packet Internet Groper),因特網包探索器,用於測試網路連線量的程式。Ping傳送一個ICMP(Internet Control Messages Protocol)即因特網信報控制協議;回聲請求訊息給目的地並報告是否收到所希望的ICMP echo (ICMP回聲應答)。它是用來檢查網路是否通暢或者網路連線速度的命令。

ICMP協議

ICMP(Internet Control Messages Protocol): Internet 控制資訊協議(ICMP)是 IP 組的一個整合部分,沒有具體的埠號。ICMP 報文通常被 IP 層或更高層協議(TCP 或 UDP)使用。通過 IP 包傳送的 ICMP 資訊主要用於涉及網路操作或錯誤操作的不可達資訊

IP 協議是不可靠協議,不能保證 IP 資料報能夠成功的到達目的主機,無法進行差錯控制,而 ICMP 協議能夠協助 IP 協議完成這些功能。Ping用到的是ICMP協議

ICMP報文的種類有兩種,即ICMP差錯報告報文和ICMP詢問報文。
這裡寫圖片描述

Ping過程詳解

先看拓樸圖:
這裡寫圖片描述

在這裡講ping的兩情況:一種是同一網段內,一種是跨網段的ping。

1.同一網段內

首先,如果主機A,要去ping主機B,那麼主機A,就要封裝二層報文,他會先查自己的MAC地址表,如果沒有B的MAC地址,就會向外傳送一個ARP廣播包,如圖:
這裡寫圖片描述

其中ARP報文格式如下:
這裡寫圖片描述

OP含義:1:表示ARP請求 ;2:表示ARP應答;3:表示RARP請求 ;4:表示RARP應答

首先,交換機會收到這個報文後,交換機有學習MAC地址的功能,所以他會檢索自己有沒有儲存主機B的MAC地址,如果有,就返回給主機A,如果沒有,就會向所有埠傳送ARP廣播,其它主機收到後,發現不是在找自己,就紛紛丟棄了該報文,不去理會。直到主機B收到了報文後,就立即響應,我的MAC地址是多少,同時學到主機A的MAC地址,並按同樣的ARP報文格式返回給主機A。如圖:

這裡寫圖片描述

這裡寫圖片描述

2.不同網段內

這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述

相關推薦

PingICMP協議

Ping 度娘解釋: Ping是Windows、Unix和Linux系統下的一個命令。ping也屬於一個通訊協議,是TCP/IP協議的一部分。利用“ping”命令可以檢查網路是否連通,可以很好地幫助我們分析和判定網路故障。 PING (Pac

PingICMP協議的應用

       網際網路控制訊息協議(Internet Control Message Protocol,ICMP):是網際網路協議族的核心協議之一。它用於TCP/IP網路中傳送控制訊息,提供可能發生在通訊環境中的各種情

Linux網路程式設計---ICMP協議分析ping程式實現

一、IP協議 IP協議是TCP/IP協議族所依賴的傳送機制,提供無連線不可靠的資料報服務。IP的無連線特性意味著每個IP報文都是獨立尋徑的,因此當一個源主機發送多個報文給同一目的主機時,這些報文可能出現錯序,丟失或者部分報文產生錯誤等現象,因此為了保證資料傳送的可靠性,必須

ICMP協議應用例項(Ping,Traceroute)

ICMP協議 在網際網路傳輸過程中,IP資料報難免會出現差錯,通常出現差錯,處理方法就是丟棄,但是一般,出現差錯後,會發送ICMP報文給主機,告訴它一些差錯資訊,以及對當前的網路狀態進行一個探尋。可以說,ICMP的主要目的是用於在TCP/IP網路中傳送出錯和控制

Linux服務器關閉/開啟ICMP協議(ping)

服務器 需要 inux ech g模式 linux服務 遇到 icm 我們 經常會遇到一些問題就是主機明明是在線的卻ping不通的,對方可能開啟了禁ping模式有時為安全問題著想,需要給我們的Linux服務器禁ping 關閉ICMP協議(禁ping) echo "

ICMP協議ping命令,traceroute命令)

ICMP協議 ICMP協議是一個網路層協議。 我們在建立好網路通訊的時候,肯定要進行網路是否通暢。我們知道IP協議並不提供可靠的傳輸,無法通過IP協議來反饋我們的網路是否通暢,TCP又是傳輸層的協議

ping 原理與ICMP協議 && 安卓用tcpdump和wireshark抓網路包 && 安卓用Fiddler進行網路抓包

(1)ping 的原理       ping 程式是用來探測主機到主機之間是否可通訊,如果不能ping到某臺主機,表明不能和這臺主機建立連線。ping 使用的是ICMP協議,它傳送icmp回送請求訊息給目的主機。ICMP協議規定:目的主機必須返回ICMP回送應答訊息給源主機

ICMP協議ping命令

ping命令是什麼協議? 維基百科介紹: ping是一種電腦網路工具,用來測試資料包能否通過IP協議到達特定主機。ping的運作原理是向目標主機傳出一個ICMP [email protected]要求資料包,並等待接收echo迴應資料包。程式會按時間和成功

linux網路程式設計之TCP/IP基礎(二):利用ARP和ICMP協議解釋ping命令

一、MTU 乙太網和IEEE 802.3對資料幀的長度都有限制,其最大值分別是1500和1492位元組,將這個限制稱作最大傳輸單元(MTU,Maximum Transmission Unit)。如果I

ICMP協議ping和Traceroute 單獨介紹

ping這個單詞源自聲納定位,而這個程式的作用也確實如此,它利用ICMP協議包來偵測另一個主機是否可達。原理是用型別碼為0的ICMP發請 求,受到請求的主機則用型別碼為8的ICMP迴應。ping程式來計算間隔時間,並計算有多少個包被送達。使用者就可以判斷網路大致的情況。我們可以看到, ping給出來了傳送的時

ICMP協議ping實現

1. 相關ICMP協議概述  這裡只講解與ping有關的ICMP訊息型別,主機發送回送訊息(Type = 8),被請求主機回送響應訊息(Type = 0),基本格式如下:  回送訊息[ECHO]         回送響應訊息[ECHO REPLY]         其中•Co

UNIX網路程式設計——利用ARP和ICMP協議解釋ping命令

一、MTU       乙太網和IEEE 802.3對資料幀的長度都有限制,其最大值分別是1500和1492位元組,將這個限制稱作最大傳輸單元(MTU,Maximum Transmission Unit)       如果IP層有一個數據報要傳,而且資料的長度比鏈路層的MTU

ping程式和tracert背後的故事--ICMP協議

為路由器生,為交換機死,為了Ping通奮鬥一輩子-----tracert.cn 上面是一個網路工程師的個人定位,很有意思,哈哈!那麼我們來看看ping和tracert都是什麼吧 PING (Packet Internet Groper),因特網包探索器,用於測試網路連線量的程式。 Tracert(tra

(三)接觸式IC物理特性傳輸協議

分享 超出 允許 寬度 等待 格式 定義 端口 單元 1. 接觸式IC卡的電信號和傳輸協議 ISO/IEC 7816-3/10中規定了電源及信號的結構,以及IC卡和讀寫器之間的信息交換,包括信號頻率,電壓電平,電流值,奇偶校驗協定,操作過程,傳送機制以及讀寫器與IC卡之間的

OSI七層常用協議端口號

邏輯 端口 鏈路層 smtp 網絡服務 管理 斷開 服務 地址 OSI七層 物理層 : 建立、維護、斷開物理連接。 數據鏈路層 :建立邏輯連接、進行硬件地址尋址、差錯校驗[2] 網絡層 :進行邏輯地址尋址,實現不同網絡之間的路徑選擇。 傳輸層 :定

osi七層模型,定義常用協議

斷點續傳 硬件 互連 tag 地址 效率 segment 校驗 mtp 一、OSI七層參考模型的含義應用層:網絡服務與最終用戶的一個接口 表示層:數據的表現形式,如加密、壓縮。 會話層:建立、管理、中止會話,例如斷點續傳。 傳輸層:定義傳輸數據的協議端口號,以及流控和差錯校

[na]完全理解icmp協議

代表性 工作 事先 執行 個人信息 自帶 時間信息 分享 大數 1.ICMP出現的原因 在IP通信中,經常有數據包到達不了對方的情況。原因是,在通信途中的某處的一個路由器由於不能處理所有的數據包,就將數據包一個一個丟棄了。或者,雖然到達了對方,但是由於搞錯了端口號,服務器軟

ICMP協議

ICMP一:ICMP的作用 Internet控制報文協議:是網絡層的一個重要協議。ICMP設備間傳遞各種差錯和控制信息,他對於收集各種網絡信息,診斷和排除各種網絡故障具有至關重要的作用。總結來說,ICMP用來傳遞差錯、控制、查詢等信息。 二:ICMP重定向 ICMP Redirect 消息用於支持路由功能。如

TCP/IP-ICMP協議

ade 並且 發送 .com 分享 圖片 icm -h line 8.1 作用 ip協議沒有提供直接的方法發現那些發往目的地失敗的ip數據包。因此采用internet控制報文協議提供ip協議層配置和ip數據報存執相關的診斷和控制信息。一般認為是ip層的一部分。但是使用ip層

traceroute ping 開放(icmp|udp)

traceroutetarceroute ping 開放(icmp|udp) tarceroute原理ICMP應用之ping ping是一個用來查詢網絡通不通的一個工具,是系統自帶的,運行於內核,調用ICMP協議。 ping的工作原理:ping通過調用echo來發送請求,通過是否收到echo-reply來