91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ping命令的作用和原理是什么?

華為開發(fā)者社區(qū) ? 來源:華為云社區(qū) ? 作者:云小萌 ? 2021-03-18 17:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在測試和部署網(wǎng)絡(luò)通信應(yīng)用時,我們經(jīng)常會遇到網(wǎng)絡(luò)不通的問題。一般都會想到ping一下。那么ping命令的作用和原理到底是什么呢?

ping 命令是基于 ICMP 協(xié)議來工作的,要明白ping, 先了解下ICMP協(xié)議吧~

ICMP協(xié)議

ICMP全稱為互聯(lián)網(wǎng)控制報文協(xié)議(Internet Control Message Protocol)。那么具體是怎么“控制”的呢?

在復(fù)雜的網(wǎng)絡(luò)傳輸環(huán)境里,數(shù)據(jù)包常常會遇到各種問題導(dǎo)致傳輸失敗。網(wǎng)絡(luò)層的IP協(xié)議是一種無連接的,不可靠的數(shù)據(jù)包協(xié)議,它并不能保證數(shù)據(jù)一定被送達,因此,我們需要其它的協(xié)議,在數(shù)據(jù)包傳發(fā)送異常時,能將異常信息傳回來,這樣才可以調(diào)整傳輸策略,以此來控制整個局面。

ICMP協(xié)議格式

ICMP 協(xié)議是通過IP協(xié)議來發(fā)送的,報文封裝在 IP 包里面。如下:

ICMP報文格式:

ICMP數(shù)據(jù)包由8bit的類型字段和8bit的代碼字段以及16bit的校驗字段再加上選項數(shù)據(jù)組成。ICMP報文大致分為兩類:查詢報文類型和差錯報文類型。

查詢報文類型

查詢報文主要應(yīng)用于ping查詢、子網(wǎng)掩碼查詢、時間戳查詢等。ping命令其實就是對ICMP協(xié)議查詢報文類型的使用。

主機A ping 主機B時,ping命令在主機A構(gòu)建ICMP請求數(shù)據(jù)包時,ICMP的類型字段為8(回送請求),當主機B構(gòu)建ICMP請求數(shù)據(jù)包時,ICMP的類型字段為0(回送應(yīng)答)。如果主機A在一定時間內(nèi)收到了主機B的應(yīng)答,則表明兩臺主機之間網(wǎng)絡(luò)是可達的。

差錯報文類型

差錯報文主要產(chǎn)生于數(shù)據(jù)傳送發(fā)送錯誤的時候,包括:目標不可達(網(wǎng)絡(luò)不可達、主機不可達、協(xié)議不可達、端口不可達、禁止分片等)、超時、參數(shù)問題、重定向(網(wǎng)絡(luò)重定向、主機重定向等)等。

IP 路由器無法將 IP 數(shù)據(jù)包發(fā)送給目標地址時,會給發(fā)送端主機返回一個目標不可達的 ICMP 消息,并在這個消息中顯示不可達的具體原因,原因記錄在 ICMP 包頭的代碼字段。

ping命令的工作過程

舉一個例子來描述「ping」命令的工作過程:

假設(shè)有兩個主機,主機A(192.168.0.1)和主機B(192.168.0.2),現(xiàn)在我們要監(jiān)測主機A和主機B之間網(wǎng)絡(luò)是否可達,在主機A上輸入命令:ping 192.168.0.2

1.發(fā)送端主機構(gòu)建ICMP請求數(shù)據(jù)包。ping命令會在主機A上構(gòu)建一個 ICMP的請求數(shù)據(jù)包。數(shù)據(jù)包包含多個字段,主要的有類型和序號。類型:在請求數(shù)據(jù)包中,類型字段為8;序號:主要用于區(qū)分連續(xù) ping 的時候發(fā)出的多個數(shù)據(jù)包。

每發(fā)出一個請求數(shù)據(jù)包,序號會自動加 1。為了能夠計算往返時間 RTT,它會在報文的數(shù)據(jù)部分插入發(fā)送時間。

2.IP層構(gòu)建IP數(shù)據(jù)包。ICMP協(xié)議會將這個數(shù)據(jù)包以及目標IP(192.168.0.2)等信息一同交給IP層協(xié)議。IP層協(xié)議得到這些信息后,將源地址(即本機IP)、目標地址(即目標IP:192.168.0.2)、再加上一些其它的控制信息,構(gòu)建成一個IP數(shù)據(jù)包。

3.加入MAC地址。需要通過ARP映射表找出目標IP(192.168.0.2)所對應(yīng)的MAC地址。當拿到了目標主機的MAC地址和本機MAC后,一并交給數(shù)據(jù)鏈路層,組裝成一個數(shù)據(jù)幀,依據(jù)以太網(wǎng)的介質(zhì)訪問規(guī)則,將它們傳送出出去。

主機B收到數(shù)據(jù)幀后,進行如下步驟:

1.檢查MAC地址,丟棄或接收,提取IP數(shù)據(jù)包。當主機B收到這個數(shù)據(jù)幀之后,會首先檢查它的目標MAC地址是不是本機,如果是就接收下來處理,接收之后會檢查這個數(shù)據(jù)幀,將數(shù)據(jù)幀中的IP數(shù)據(jù)包取出來,交給本機的IP層協(xié)議。

2.IP層檢查IP。IP層協(xié)議檢查完之后,再將ICMP數(shù)據(jù)包取出來交給ICMP協(xié)議處理。

3.構(gòu)建ICMP應(yīng)答包。應(yīng)答包的類型字段為 0,序號為接收到的請求數(shù)據(jù)包中的序號。

4.應(yīng)答數(shù)據(jù)包回發(fā)給主機A。

在一定的時間內(nèi),如果主機A收到了應(yīng)答包,則說明它與主機B之間網(wǎng)絡(luò)可達,如果沒有收到,則說明網(wǎng)絡(luò)不可達。除了監(jiān)測是否可達以外,還可以利用應(yīng)答時間和發(fā)起時間之間的差值,計算出數(shù)據(jù)包的延遲耗時。

課堂練習

關(guān)于ICMP協(xié)議與ping命令如何工作我們已經(jīng)了解了,那對于我們在云上搭建的應(yīng)用,如何測試彈性云服務(wù)器間的通信狀況呢?

回憶一下,彈性云服務(wù)器數(shù)據(jù)流量的進出是需要遵守安全組規(guī)則的,沒有安全組規(guī)則的允許,誰都不能訪問。

那我們就可以在安全組中添加放通ICMP協(xié)議的安全組規(guī)則,允許其他云服務(wù)器通過 ICMP 協(xié)議訪問該云服務(wù)器,進而實現(xiàn)通過ping命令來測試彈性云服務(wù)器間的通信狀況了。

安全組規(guī)則配置如下:

原文標題:爆文速遞| 網(wǎng)絡(luò)好不好,ping一下就知道

文章出處:【微信公眾號:華為開發(fā)者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

責任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 通信
    +關(guān)注

    關(guān)注

    18

    文章

    6389

    瀏覽量

    140039
  • Ping
    +關(guān)注

    關(guān)注

    0

    文章

    72

    瀏覽量

    16847

原文標題:爆文速遞| 網(wǎng)絡(luò)好不好,ping一下就知道

文章出處:【微信號:Huawei_Developer,微信公眾號:華為開發(fā)者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    支持Ping協(xié)議,從盲猜到秒判,HMI也能做網(wǎng)絡(luò)診斷?

    還在為“設(shè)備通訊異?!迸挪樽タ瘢亢昙痚X700系列HMI支持Ping網(wǎng)絡(luò)診斷功能,讓現(xiàn)場工程師無需其他專業(yè)IT工具,一屏即可判斷網(wǎng)絡(luò)連通狀態(tài),運維效率提升75%,真正把復(fù)雜變簡單。
    的頭像 發(fā)表于 10-29 15:15 ?452次閱讀
    支持<b class='flag-5'>Ping</b>協(xié)議,從盲猜到秒判,HMI也能做網(wǎng)絡(luò)診斷?

    支持Ping協(xié)議!從盲猜到秒判,HMI也能做網(wǎng)絡(luò)診斷?

    出問題?為了確認問題,工程師不得不打開控制柜、連接筆記本、執(zhí)行Ping命令,一輪排查下來常常 耗時一兩個小時 。 如今,這一切都被 宏集EXOR物聯(lián)網(wǎng)HMI的內(nèi)置Ping網(wǎng)絡(luò)診斷功能 所改變。HMI不再只是“顯示與操作終端”,而
    的頭像 發(fā)表于 10-24 11:47 ?223次閱讀
    支持<b class='flag-5'>Ping</b>協(xié)議!從盲猜到秒判,HMI也能做網(wǎng)絡(luò)診斷?

    宏集案例 | 支持Ping協(xié)議!從盲猜到秒判,HMI也能做網(wǎng)絡(luò)診斷?

    ?為了確認問題,工程師不得不打開控制柜、連接筆記本、執(zhí)行Ping命令,一輪排查下來常常耗時一兩個小時。如今,這一切都被宏集EXOR物聯(lián)網(wǎng)HMI的內(nèi)置Pin
    的頭像 發(fā)表于 10-23 17:02 ?625次閱讀
    宏集案例 | 支持<b class='flag-5'>Ping</b>協(xié)議!從盲猜到秒判,HMI也能做網(wǎng)絡(luò)診斷?

    飛凌嵌入式ElfBoard-Linux系統(tǒng)基礎(chǔ)入門-網(wǎng)絡(luò)相關(guān)shell命令

    :~$ sudo ifconfig ens33 hw ether 22:22:22:22:22:22ping網(wǎng)絡(luò)通斷檢查命令命令ping功能:檢查網(wǎng)絡(luò)的連接情況,通常情況下只能
    發(fā)表于 10-10 15:06

    Linux基礎(chǔ)命令which詳解

    在Linux系統(tǒng)中,which命令用于查找并顯示指定命令的可執(zhí)行文件路徑。這對于系統(tǒng)管理員和開發(fā)人員來說是一個非常有用的工具,可以幫助定位命令所在的位置,確認命令是否已正確安裝,并且能
    的頭像 發(fā)表于 07-29 17:58 ?851次閱讀

    第十六章 W55MH32 PING示例

    本文講解了如何在 W55MH32?芯片上通過 IPRAW?模式實現(xiàn) ICMP?協(xié)議中的 PING?命令,以進行網(wǎng)絡(luò)連通性測試,通過實戰(zhàn)例程展示了從發(fā)送 PING?請求、接收并解析回復(fù)到統(tǒng)計結(jié)果的完整
    的頭像 發(fā)表于 07-24 11:41 ?974次閱讀
    第十六章 W55MH32 <b class='flag-5'>PING</b>示例

    交換機無法Ping通本機IPv6接口地址問題

    某互聯(lián)網(wǎng)電視CDN網(wǎng)絡(luò)ZXR10 5960-56QU-HC(簡稱5960)交換機下掛CDN服務(wù)器,vlan-if接口地址作為服務(wù)器網(wǎng)關(guān),在運行中出現(xiàn)服務(wù)器無法ping通IPv6網(wǎng)關(guān),并且5960也無法ping通該接口的IPv6地址。
    的頭像 發(fā)表于 07-22 11:25 ?2448次閱讀
    交換機無法<b class='flag-5'>Ping</b>通本機IPv6接口地址問題

    詳解Linux網(wǎng)絡(luò)管理中的關(guān)鍵命令

    本文檔概述了網(wǎng)絡(luò)管理中的關(guān)鍵命令,如ifconfig配置網(wǎng)絡(luò)接口,ip管理路由,ping測試連通性,以及nmap進行安全掃描。還介紹了nslookup和dig用于域名解析,tcpdump抓包分析,以及arp操作和nmap的深入應(yīng)用。
    的頭像 發(fā)表于 07-04 11:37 ?1150次閱讀
    詳解Linux網(wǎng)絡(luò)管理中的關(guān)鍵<b class='flag-5'>命令</b>

    使用openmv示例工程連接得上熱點,但是ping不到熱點ip,也ping不到baidu.com,怎么解決?

    使用openmv示例工程連接得上熱點,但是ping不到熱點ip,也ping不到baidu.com,請問應(yīng)該怎么解決
    發(fā)表于 06-13 07:31

    如何使用Traceroute命令

    以下是如何使用 traceroute 命令的詳細指南,包括其語法、選項和實際示例。
    的頭像 發(fā)表于 06-04 11:28 ?2239次閱讀

    Docker Volume管理命令大全

    Docker Volume管理命令大全
    的頭像 發(fā)表于 05-28 17:14 ?894次閱讀

    飛凌嵌入式ElfBoard ELF 1板卡-uboot常用命令之網(wǎng)絡(luò)命令

    網(wǎng)絡(luò)通信狀態(tài),設(shè)置好開發(fā)板IP和PC機IP之后,使用網(wǎng)線連接好開發(fā)板和PC機,使用ping命令:=> ping 192.168.0.102Using FEC1 devicehost
    發(fā)表于 05-23 09:33

    Linux常用命令大全

    Linux常用命令是指在Linux操作系統(tǒng)中廣泛使用的命令工具,這些命令工具可以完成各種不同的任務(wù),如管理文件和目錄、操作進程、網(wǎng)絡(luò)通信、軟件安裝等。
    的頭像 發(fā)表于 05-03 18:08 ?1863次閱讀

    為UART、MCXA142實現(xiàn)ISP通信的主機端,發(fā)送Ping數(shù)據(jù)包并收到預(yù)期的響應(yīng),發(fā)送和接收數(shù)據(jù)包的典型順序是什么?

    我想為 UART、MCXA142 實現(xiàn) ISP 通信的主機端。我發(fā)送 Ping 數(shù)據(jù)包并收到預(yù)期的響應(yīng)。發(fā)送和接收數(shù)據(jù)包的典型順序是什么? 此刻,我的照片是這樣的: 1. 發(fā)送 Ping 2. 接收 Ping 響應(yīng) 3. 在成
    發(fā)表于 04-03 08:05

    T2081 VSC8572 phy:Ping不起作用的原因?

    我有一個定制的 T2081板VSC8572我們使用地址0x1d的 phy 芯片。當我們遍歷 u-boot 代碼時,不支持這個 Phy。我們能夠使用具有通用 phy 配置的 mii 命令訪問 Phy
    發(fā)表于 04-01 07:33