在Windows網絡連接故障修復中使用PING
在網絡故障修復中使用PING命令將有助于減小Windows PC連接問題原因的分析范圍。本文中所介紹的TCP/IP診斷方法將有利于我們了解PING的使用語法,以及PING請求超時或者到達一個網絡主機所表示的意思。本文還闡述了在命令行(CL)提示符窗口的問題診斷以及如何驗證網絡連接。
目前的網絡硬件和軟件可靠性越來越好,但是,盡管如此,有時侯也會出現問題。在本系列中,我將探討一些故障修復技巧。當我們的Windows網絡上的主機與其它網絡主機之間出現連接問題時,我們可以使用這些技巧來解決問題。鑒于有些人接觸TCP/IP協議的經驗還較少,我將從基礎開始闡述,然后逐步深入探討更先進的技術。
驗證網絡連接
當一臺主機與另外一臺出現連接問題時,首先,我們必須收集一些關于問題的信息。特別是我們必須文檔化主機的配置,找出主機是否與網絡上其它的機器存在連接問題,以及該問題是否影響其它的主機。
比如,假設一個工作站與某個特定的服務器之間存在連接問題。實際上,問題本身并不會提供很多信息給我們。然而,當我們更深入地了解問題時,我們會發現工作站可能無法與任何一個網絡服務器進行連接,因此,我們將會意識到要檢查是否有斷開的網絡網線、壞的交換機端口,或者可能是網絡配置問題。
同樣,如果工作站能夠與某些服務器通信,而不能與所有網絡服務器進行通信,那么這就給我們查找問題的根源所在帶來一些線索。在這種情況下,我們可能想檢查不能連接的服務器有什么相同的配置。它們是否都在一個共用的子網上呢?如果是,那么,這就是路由問題了。
如果多個工作站都與某個特定的服務器之間存在連接問題,那么這就不是工作站的問題了,除非這些工作站都是最近進行過重新配置的。更可能的是,服務器本身工作不正常。
關鍵在于,通過幾個基本的測試,我們就可以獲得關于問題的大量信息。我將要介紹的測試將不會顯示問題發生的原因,但是,它們將有助于縮小問題分析的范圍,以便我們知道從哪里著手開始修復過程。
PING可能是已知的最簡單的TCP/IP診斷方法,但是,它所提供的信息是非常重要的。簡單而言,PING會告訴我們工作站是否可以與另一個機器連接。
我建議,首先打開一個命令提示窗口,然后輸入PING命令,接著是存在連接問題的機器的IP地址。然后,所指定的機器將產生4個回復,如圖A所示。
響應主要是告訴我們需要多久時間指定的機器會響應32字節的數據。比如,圖A中4個響應中的每一個的接收時間都少于4毫秒。
通常,當我們輸入PING命令,就可能會發生以下四個情況之一,而且每一個都有其自身的意義:
第一種情況是指定機器將產生4個回復。這就意味著工作站可以在TCP/IP層上與指定的主機進行通信。第二種情況是4個請求都超時了,如圖B所示。在圖A中,我們注意到每個響應都會在代表“使用期限”的TTL=128時間內結束。這就意味著,4個查詢和響應都必須在128毫秒中完成。同時,TTL也會在傳輸路徑的每一跳(hop)中遞減。一跳指的是一個數據包從一個網絡傳輸到另一個網絡中。我將在在本系列的后面更詳細地探討跳。
無論如何,如果4個請求都超時了,那么這就意味著在接收到回復之前,TTL已經過期了。這就意味著可能存在以下三個問題中的其中一個:
通信問題會影響兩臺機器之間的數據包傳輸:這個可能是由斷開的網線、壞的路由表或者許多其它問題造成的。
通信能夠進行,但是速度太慢了,PING無法識別:這個可能是由網絡擁擠、或者網絡硬件或網線故障造成的。
通信能夠進行,但是,防火墻阻止了ICMP流量:只有目的機器的防火墻(和在兩臺機器之間的任意防火墻)允許ICMP處理,PING才能夠工作。
第三種情況是,當我們輸入PING命令后,接收到了一些回復,但有另一些超時了。這個問題意味著存在壞的網線、硬件有故障或者網絡擁擠。
PING一臺主機可能發生的第四種情況是我們可能接收到一個類似于圖C所顯示的錯誤。
一個傳輸失?。═ransmit Failed)的錯誤表示在我們嘗試輸入PING命令的機器上,TCP/IP的配置是不正確的。雖然,這個特定的錯誤只會發生在Vista上。然而,當TCP/IP沒有正確配置時,老版本的Windows也會產生錯誤,但是,錯誤的信息是“目標主機不可達(Destination Host Unreachable)”。
PING成功后又表示什么?
令人感到意外的是,PING通常是成功的,即使兩臺機器之間的存在通信問題。在這種情況下,這就意味著基本的網絡基礎架構還是好的,同時,機器是可以在TCP/IP層上通信的。典型地,這是一個很好的方面,因為這就意味著發生的問題并不是很嚴重。
如果兩臺機器之間正常通信失敗,但是它們之間的PING又是成功的(一定要同時在兩臺機器上運行PING命令),那么我們還可以進行其它的嘗試。不用IP地址來PING網絡主機,而是用主機的完整域名來測試,如圖D所示。
如果我們可以用IP地址來PING機器,而通過完整域名則不成功,那么我們很可能會遇上域名系統(DNS)問題。工作站可能被配置使用了錯誤的DNS服務器,或者DNS服務器可能并不包含一個我們嘗試PING的機器的主機記錄。
如圖D所示,我們可以看到機器的IP地址正好被列在完整域名的右邊。這就意味著機器能夠解析到完整域名。確保域名所解析到的IP地址是正確的。如果出現了我們預期之外的不同的IP地址,那么我們的DNS主機記錄可能是錯誤的。
總結
在本文中,我們已經探討了在兩臺機器之間使用PING命令來測試基本連接的一些步驟,同時,我還闡述了這些PING響應對于我們的主機連接性的意義。在本系列的下一章中,我將闡述更多在故障修復過程中可以使用的技巧。