在對以太網網絡上的通信問題進行故障排除時,Ping命令是最廣泛使用的診斷工具之一。這種受歡迎程度是因為每個人都知道如何使用命令,執行起來非常簡單。
在對通信問題進行故障排除時,我們在無法正常工作時聽到的最常見的一句話是“但我可以ping通”,就好像這一點應該作為確切的證據,證明一切都按預期工作,通信服務器選擇不通信。
本文介紹了一些關于Ping命令的常見誤解,特別是如何有效地使用它,什么時候它可能不是任務的最佳工具,以及Ping的更好的替代方案(提供實際上可操作的數據)。
什么是Ping命令?
在命令提示符下鍵入ping 1.1.1.1會發生什么?
Ping旨在告訴用戶主機是否可以在IP網絡上訪問,并通過發送ICMP(Internet控制消息協議)回應請求來執行此操作,遠程主機(我們正在ping的IP地址)將在收到時回顯。
雖然這無疑是有用的,但Ping命令在它告訴我們的內容中也非常有限,因為ICMP位于IP協議之上(畢竟它是Internet控制消息協議)并且不需要像TCP或UDP這樣的傳輸協議。
為什么這很重要?
在Internet協議描述主機之間的通信的地方,傳輸協議(如TCP或UDP)描述了在這些主機上運行的進程之間的通信。如果沒有傳輸層,Ping命令將永遠無法向我們提供有關遠程主機的信息:
正在監聽連接
有一個開放的接口
將接受我們流程的連接
甚至是我們想要與之溝通的合適主機
Ping命令只會告訴我們主機響應指定IP地址的echo請求。
