8種網絡故障分析及測試命令大全
對于網絡工程師來說,在平常工作中,最基礎的工作能力就是要保證網絡順暢不出錯誤。但實際上,網絡隨時都可能發(fā)生故障,影響正常工作,從而導致網絡工程師總是要背很多黑鍋;所以快速解決網絡故障已經成為網工的能力檢驗的標配了。
那如何才能快速解決網絡問題呢?一般來說單位或者企業(yè)會安裝網絡故障管理軟件,通過軟件來管理和排除網絡的故障。您做為我們的網工,一定要知道哪些網絡故障問題,從而快速測試出這些問題。故小編今天給大家總結一下常見的網絡故障問題以及命令。
一、網絡故障分類總結
- 物理層故障
- 數據鏈路層故障
- 網絡層故障
- 以太網絡故障
- 廣域網絡故障
- TCP/IP故障
- 服務器故障
- 其他業(yè)務故障等
那么,網路發(fā)生故障的原因是什么呢?根據有關資料的統計,網絡發(fā)生故障具體分布為:
- 應用層占3%;
- 表示層占7%;
- 會話層占8%;
- 傳輸層占10%;
- 網絡層占12%;
- 數據鏈路層占25%;
- 物理層占35%。
引起網絡故障的原因還有以下幾種:
(1) 邏輯故障
邏輯故障中最常見的情況有兩類:一類是配置錯誤,是因為網絡設備的配置錯誤而導致的網絡異常或故障。配置錯誤可能是路由器端口參數設定有錯誤,或路由器的路由配置錯誤,以至于路由循環(huán)找不到遠端地址,或者是路由掩碼設置錯誤等。另一類是一些重要進程或端口被關閉,主要是系統的負載過高,路由器的負載過高。
(2) 配置故障
配置錯誤也是導致故障發(fā)生的重要原因之一。配置故障主要表現在不能實現網絡所提供的各種服務,如不能接入Internet,不能訪問某種代理服務器等。配置故障通常表現為以下幾種情況:
- 網絡鏈路測試正常,而無法連接到網絡;
- 只能與某些計算機通信,而不能與全部計算機進行通信;
- 計算機只能訪問內部網絡中的服務器,但無法接入Internet,這可能是路由器配置錯誤,也可能是交換機配置錯誤;
- 計算機無法登錄至域控制器;
- 計算機無法訪問任何其它設備。
(3) 網絡故障
網絡故障的原因是多方面的,一般分為物理故障和邏輯故障。物理故障,又稱硬件故障,包括線路、線纜、連接器件、端口、網卡、網橋、集線器、交換機或路由器的模塊出現故障。
(4) 協議故障
計算機和網絡設備之間的通信是靠協議來實現的,協議在網絡中扮演著非常重要的角色。協議故障通常表現為以下幾種情況:
- 計算機無法登錄至服務器
- 計算機在網上鄰居中既看不到自己,也不能看到其他計算機或查找不到其它計算機;
- 計算機在網上鄰居中能看到自己和其他計算機,但無法在局域網絡中瀏覽web、收發(fā)email;
- 計算機無法通過局域網接入Internet;
- 與網絡中其它計算機的名稱重復,或者與其他計算機使用的IP地址相同。
(5) DDOS
(6) 網絡管理員差錯
網絡管理員差錯占整個網絡故障的5%以上,主要發(fā)生在網絡層和傳輸層,是由于安裝沒有完全遵守操作指南,或者網絡管理員對某個過程沒有給予足夠的重視造成的。
(7) 海量存儲問題
數據處理故障的最主要原因是硬盤問題。據有關報道,大約有超過26%的系統失效都歸結到海量存儲的介質故障上。
(8) 計算機硬件故障
大約有25%的故障是由計算機硬件引起的,如顯示器、鍵盤、鼠標、CPU、RAM、硬盤驅動器、網卡、交換機和路由器等。
(9) 軟件問題
軟件引起的故障也不鮮見,表現為:
- 軟件有缺陷,造成系統故障;
- 網絡操作系統缺陷,造成系統失效。
(10) 使用者發(fā)生的差錯
使用者沒有遵守網路賦予的權限。例如:
- 超權訪問系統和服務;
- 侵入其它系統;
- 操作其它用戶的數據資料;
- 共享賬號;
- 非法復制。
- 既有網絡故障產生,那么就有網絡管理。
網絡故障管理一般包括4項:
- 對網絡進行監(jiān)測,提前預知故障;
- 發(fā)生故障后,找到故障發(fā)生的位置;
- 解決故障;
- 記錄故障產生的原因,找到解決的方法;
二、常用的網絡故障測試命令
常用的網絡故障測試命令有ipconfig、ping、tracert、netstat和nslookup等。下面簡單說明它們的基本用法。
1. ipconfig命令
使用ipconfig命令可以查看IP配置,或配合使用/all參數查看網絡配置情況。ipconfig命令采用Windows窗口的形式來顯示IP協議的具體配置信息。如果ipconfig命令后面不跟任何參數直接運行,程序將會在窗口顯示網絡適配器的物理地址、主機的IP地址、子網掩碼以及默認網關等。還可以通過此程序查看主機的相關信息,如主機名、DNS服務器、節(jié)點類型等。其中網絡適配器的物理地址在檢測網絡錯誤時非常有用。在命令提示符下輸入ipconfig/?可獲得ipconfig的使用幫助,輸入ipconfig/all可獲得IP配置的所有屬性
命令參數介紹:
- “ ”:不帶任何參數選項,則為每個已經配置了的接口顯示IP地址、子網掩碼和默認網關值。
- ?:進行參數查詢;
- all:顯示本機TCP/IP配置的詳細信息;
- release:PHCP客戶端手工釋放IP地址;
- renew:DHCP客戶端手工向服務器刷新請求;
- flushdns:清除本地DNS緩存內容;
- registerdns:DNS客戶端手工向服務器進行注冊;
- showclassid:顯示網絡適配器的DHCP類別信息;
- setclassid:設置網絡適配器的DHCP類別。
單擊“程序”--“運行”,輸入cmd進入dos命令行窗口。在dos命令行窗口中輸入ipconfig/all,如下所示
圖中顯示出了本機TCP/IP配置情況。如果顯示出的IP地址不在網絡的網段中,本機則無法與其它機器通信;如果網關、DNS配置有誤,則本機不能訪問外網計算機,也不能上網。
使用/release和/renew參數重新從DHCP服務器上獲取IP地址。
2. ping命令
ping命令主要是用來檢查路由是否能夠到達某站點。由于該命令的包長小,所以在網上傳遞的速度非常快,可以快速檢測要去的站點是否可達。如果執(zhí)行ping不成功,則可以預測故障出現在以下幾個方面:
- 網線是否接通;
- 網絡適配器配置是否正確;
- IP地址是否可用等。
如果執(zhí)行ping成功而網絡仍然無法使用,問題可能出在網絡系統的軟件配置方面。ping成功只能保證當前主機與目的主機間存在一條連通的物理路徑。
在dos命令窗口中輸入ping /?,可以看到ping的各個參數如下:
(1)ping命令參數介紹
- /t:ping 指定用戶所在的主機向目標主機發(fā)送數據,直到中斷。
- /a:以IP地址格式來顯示目標主機的網絡地址,將地址解析為計算機名。
通過運行ping -a 192.168.0.109可以知道IP為192.168.0.109的計算機名為Lenovo
- -n count:發(fā)送count指定的echo數據包數量。默認值為4
- -l size;發(fā)送包含有size指定數據量的echo數據包。默認為32字節(jié),上線是65527字節(jié)。
- -f;在數據包中發(fā)送“不要分段”標志,數據包就不會被路由上的網關分段
- -i TTL;將“生存時間”字段設置為TTL指定的值
- -v TOS;將“服務類型”字段設置為TOS指定的值
- -r count;在“記錄路由”字段中記錄傳出和返回數據包的路由。count可以指定最少1臺,最多為9臺計算機。
- -s count;指定count指定的躍點數的時間戳
- -j host-list;利用host-list指定的計算機列表路由數據包。連續(xù)計算機可以被中間網關分割(路由稀疏),IP允許的數量為9.
- -k host-list;利用host-list指定的計算機列表路由數據包。連續(xù)計算機不可以被中間網關分割(路由嚴格源),IP允許的數量為9
- -w timeout;指定超時間隔,單位為毫秒。
(2) 使用ping命令測試故障步驟
現在有一臺計算機不能訪問Internet上的web資源,可以使用ping命令找出故障的位置。操作步驟如下:
- a.ping 159.0.0.1
- 如果ping不通,這說明本機TCP/IP沒有裝好。
- b.ping本機的IP地址
- 如果ping不通,這說明網卡沒有裝好,或網卡驅動有問題。
(3) ping本網段的其它設備IP地址
如果PING不通,則說明連接本機的線路有問題,或者交換機的端口有問題,也可能交換機本身出現了問題。
(4) ping本網段的網關
如果ping不通,則無法上網,因為沒有設備能夠把數據包發(fā)出去。原因可能是路由器沒有配置好或代理服務出了問題。
(5) ping DNS服務器
如果ping不通,則說明DNS服務器出了問題,或本機的DNS服務器設置不正確。
3. tracert命令
tracert命令用來檢驗數據包是通過上面路徑到達目的地的。通過執(zhí)行tracert命令,可以清楚地看到數據走的路徑,判定數據包達到目的主機所經過的路徑,顯示數據包經過的蹤跡節(jié)點清單和到達時間。當ping一個較遠的主機出現錯誤時,用tracert命令可以方便地查出數據包是在哪里出錯的。如果信息包一個路由器也不能穿越,則有可能是計算機的網關設置錯了。那么,可以用ipconfig命令來查看。
tracert命令格式語法格式:
- tracert【-d】【-h maximum_hops】【-j host_list】【- w timeout】
其中主要參數有:
- -d;不解析目標主機的名稱
- -h maximum_hops;指定搜索到目標地址的跳躍數
- -j host_list;按照主機列表中的地址釋放源路由;
- -w timeout;指定超時時間間隔,程序默認的時間單位是毫秒。
4. winipcfg命令
winipcfg命令的功能與ipconfig基本相同,只是在winipcfg在操作上更加方便,同時能夠以Windows的圖形界面方式顯示。當需要查看任何一臺計算機上的TCP/IP協議的配置情況時,選擇“開始”--“運行”,在出現的對話框中輸入winipcfg,即可出現測試結果。
- winipcfg【/?】【/all】
其中主要參數有:
- /all 顯示所有的有關IP地址的配置信息
- /batch【file】將命令結果寫入指定文件
- /renew_all 重試所有網絡適配器
- /release_all 釋放所有網絡適配器
- /renew N復位網絡適配器 N
- /release N釋放網絡適配器 N
5. netstat命令
利用該命令可以顯示有關統計信息和當前TCP/IP網絡連接情況,用戶或網絡管理人員可以得到非常詳盡的統計結果。當網絡中沒有安裝特殊的網關軟件,但要詳細地了解網絡的整個使用情況時,netstat命令是非常有用的。
netstat命令的語法格式:
- netstat 【-e】【-s】【-n】【-a】
其中主要參數有:
- -a;顯示所有與該主機建立連接的端口信息
- -n;以數字格式顯示地址和端口信息。
- -e;顯示以太網的統計信息,該參數一般與s參數共同使用。所顯示的內容中,discards表示不能處理而廢棄的信息包數,errors表示壞掉的信息包數。這些數值大時,很可能是集線器、電纜和網卡等硬件發(fā)生了故障。另外,網絡太擁擠也可能導致這些數值的增大。
- -s;顯示每個協議的統計情況。如果想要統計當前局域網中的詳細信息,可通過輸入netstat -e -s來查看。
6. nslookup命令
nslookup命令一般是用來確認DNS服務器動作的。nslookup有多個選擇功能,在命令行輸入“nslookup<主機名>”并執(zhí)行,即可顯示出目標服務器的主機名和對應的IP地址,成為正向解析。若失敗了,可能是執(zhí)行nslookup命令的計算機的DNS設置錯了,也有可能是所查詢的DNS服務器停止或工作異常。還有一種情況,雖然返回了應答,但在和該服務器通信時就失敗。者多數是目標服務器停止工作,但也有可能DNS服務器保存了錯誤的信息。在DNS服務器出現問題時,有時可能只能進行正向解析,無法逆向解析。此時,只需執(zhí)行nslookup命令,看是否輸出目標主機名即可。
nslookup命令語法格式:
- nslookup【-subcommand...】【{computertofind|[-server]}】
使用方法:
在DOS命令行下輸入nslookup,按enter,此時標識符變?yōu)?ldquo;>”,然后輸入指定網站的域名,再按enter鍵就可以顯示該域名的相對應的IP地址。
7. arp命令
arp命令可以顯示和設置Internet到以太網的地址轉換表內容。這個表一般由arp來維護。當僅使用一個主機名作為參數時,arp命令顯示這個主機的當前arp表條目內容。如果這個主機不再當前arp表中,那么arp就會顯示一條說明信息。
arp命令語法格式:
- arp【-a】【-d host】【-s host address】【-f file】
其中主要參數有:
- -a 列出當前arp表中的所有條目
- -d host 從arp表中刪除某個主機的對應條目
- -s host address 使用以太網地址在arp表中為指定的【temp】【pub】【trial】主機創(chuàng)建一個條目。如果包含關鍵字【temp】,創(chuàng)建的條目就是臨時的;否則這個條目就可以保存很久。【pub】關鍵字標識這個arp將被公布。使用【trial】關鍵字表示將使用報尾封裝。
- -f file 讀一個給定名字的文件,根據文件中的主機名創(chuàng)建arp表的條目。