網(wǎng)絡故障是弱電工作中最易常見的問題,尤其是我們?nèi)蹼娙私?jīng)常與網(wǎng)絡打交道,那么如何才能進行網(wǎng)絡排查,快速解決問題呢?這些基本的技術是必不可少的,我們一起來看下。
一、網(wǎng)絡排錯必備
為什么還要必備條件?因為這里所講的網(wǎng)絡排錯并不僅僅是停留在某一個小小命令的使用上,而是一套系統(tǒng)的方法,如果沒有這些條件,難以在項目中靈活運用,所以還是先看看這些基礎的條件吧。
1、了解網(wǎng)絡通信的基礎設備和其對應的OSI層次
像交換機、三層交換機、路由器、防火墻這些最基本的網(wǎng)絡設備應該要有些了解,尤其是它們對應的OSI層次以及作用,比如普通的二層交換機對應OSI七層模型中的數(shù)據(jù)鏈路層,它可以隔絕沖突域,同時可能通過虛擬局域網(wǎng)技術(VLAN)來隔絕廣播域,二層交換機通過二層地址即MAC地址來實現(xiàn)數(shù)據(jù)幀的轉發(fā);再比如路由器,它對應網(wǎng)絡層,可以提供路由尋址的功能等等。
2、了解中小型企業(yè)網(wǎng)絡的基本架構
一般中小型企業(yè)網(wǎng)絡的基本架構都是這樣的:接入層--匯聚層--核心層--網(wǎng)絡出口。
下面給個圖:
如果網(wǎng)絡環(huán)境比較龐大,匯聚層和核心層都會有,像這里的話,一般小型網(wǎng)絡,就直接沒有匯聚層,不過思想是一樣的。下面講的排錯其實都是針對用戶PC來說明的,事實上,數(shù)據(jù)中心中的網(wǎng)絡排錯也是類似的。不管網(wǎng)絡環(huán)境多么復雜,其實簡化下來跟這個都是差不多的。
3、知道常用的網(wǎng)絡排錯命令
如果用戶使用的是Windows操作系統(tǒng),那么下面的這些命令就很重要了:
這些命令都是網(wǎng)絡排錯和檢查過程中會用到的基礎命令。
4、清楚知道網(wǎng)絡排錯的一個重要原則
網(wǎng)絡排錯,不就是要判斷網(wǎng)絡哪里出了問題,因此,你就必須要知道數(shù)據(jù)的走向。
所以這個重要的原則是:關注數(shù)據(jù)的走向。
下面講的網(wǎng)絡排錯思路其實就是通過追蹤數(shù)據(jù)的走向來一步步縮小網(wǎng)絡故障點的,因此,時刻記住這一點非常非常重要!這也是為什么上面需要讓你了解中小型企業(yè)網(wǎng)絡的基本架構了。
二、網(wǎng)絡排錯基本思路
基本思路如下,這跟網(wǎng)上的大多數(shù)人寫的應該是差不多的。
(1)檢查物理鏈路是否有問題
(2)查看本機IP地址、路由、DNS的設置是否有問題
(3)測試網(wǎng)關或路由器的通暢情況。先測網(wǎng)關然后再測路由器,一級一級地測試
(4)測試ping公網(wǎng)ip的通暢情況(平時要記幾個外部IP)
(5)測試DNS的通暢情況,可以直接ping網(wǎng)站地址
三、網(wǎng)絡排錯詳細步驟
為了更好的講述網(wǎng)絡排錯的過程和思路,假設我們有下面的一個網(wǎng)絡環(huán)境:
下面,我們就以上面這個網(wǎng)絡環(huán)境為例子,詳細介紹我們的網(wǎng)絡排錯思路,每一步要怎么做,每一步為什么要這樣做以及這樣做之后我們可以得到什么信息,都會做一個說明。
一、檢查物理鏈路是否有問題
這一步是我個人認為在做網(wǎng)絡排錯時必須要做的第一步!經(jīng)常會聽朋友說,領導的電腦上不了網(wǎng),需要過去排錯,搞了老半天,還發(fā)現(xiàn)不了問題,最后在幾經(jīng)絕望之時,竟然發(fā)現(xiàn)網(wǎng)線都沒接上電腦。這就真的是悲劇了,浪費了很多時間不說,這樣的網(wǎng)絡排錯思路本來就是有錯誤的,所以清晰的思路很重要,避免走彎路。
因為也許不是每個人都可以去機房查看交換機的接線情況,所以這一步,我們排查的重點范圍就應該放在如下面圖所示的地方:
在這一步,下面幾點是需要注意排查的:
1.確認電腦本身的網(wǎng)卡有沒有問題
2.確認接的網(wǎng)線有沒有問題(檢查水晶頭、網(wǎng)線的連接、網(wǎng)線的質(zhì)量)
3.本機所連接的交換機(如果可以去機房查看的話)
如果上面這幾點排查都沒有問題了,那么就是該網(wǎng)絡環(huán)境中的其他設備問題了。這一范圍的排查相對比較簡單,因為只涉及到物理鏈路的連接問題。
二、查看本機IP地址、路由、DNS的設置是否有問題
上面第一步,物理鏈路的排查沒有問題了,也就是說,電腦接上網(wǎng)線之后,電腦有反應了,可以識別,但是網(wǎng)絡還是不通,來到這一步,就應該先把注意的范圍放在電腦的設置上面了。
這一步,我們關注的重點是:
1、IP地址設置
如果采用的是DHCP自動獲取的方法,那么這時候只需要看自己本機的設置上有沒有開啟自動獲取IP的設置以及有沒有開啟相關的服務;
如果用的是靜態(tài)IP,那么就必須要注意IP地址的填寫有沒有錯(一般網(wǎng)絡管理人員給的)、IP地址的子網(wǎng)掩碼有沒有問題(這很重要,對于靜態(tài)IP,很多人在這里設置錯誤)。
另外值得提的是,給電腦分配ip地址時,最好是綁定mac地址,避免用戶私改ip地址,造成ip沖突。
一般可以用下面的命令查看:
2、路由設置
對于服務器、PC,一般是指默認網(wǎng)關的設置了;對于路由器本身或三層交換機,那就是靜態(tài)路由或動態(tài)路由的設置問題了。
3、DNS設置
主要是要確保所設置的DNS服務器地址到底有沒有提供域名解析服務或者是否出現(xiàn)了故障,你得設置一個正確的DNS服務器地址或可以自動獲取。在windows上面你可以通過下面的命令查看:
三、測試網(wǎng)關或路由器的通暢情況。
先測網(wǎng)關然后再測路由器,一級一級地測試。
在上面的網(wǎng)絡環(huán)境中,在網(wǎng)絡通的情況下,我們在電腦上使用命令tracert -d命令,會得到下面的結果:
通過這個測試結果,我們可以清楚地知道電腦在訪問互聯(lián)網(wǎng)時,數(shù)據(jù)的走向情況:
根據(jù)這個數(shù)據(jù)走向,我們就可以得到一個重要的思路,就是根據(jù)數(shù)據(jù)走向來檢測網(wǎng)絡的通暢情況!因此,我們可以分兩步:
1、先測試電腦到網(wǎng)關192.168.2.254的通暢情況
我們可以在自己的電腦上自己ping網(wǎng)關的地址,看是否有響應
一般這樣的判斷方法是比較快的,但有時候,無論怎樣都ping不通,那么則可能有以下的幾種情況:
a、網(wǎng)關設備做了禁止ping的設置
b、網(wǎng)關接口或網(wǎng)關設備出現(xiàn)故障
對于a,一般很少會在這些設備在做ping的限制操作,實在是沒有太大的必要這樣做,當然,網(wǎng)絡安全等要求十分嚴格的除外。ping通192.168.2.254網(wǎng)關后,再ping一下172.16.13.1以確認電腦到整個網(wǎng)關設備都沒有問題。
對于ping不通的時候,我個人還建議在電腦上執(zhí)行如下操作:
arp -a :網(wǎng)關地址和網(wǎng)關的mac地址,這個命令弱電行業(yè)網(wǎng)前面有詳解過。
即查看電腦本身有沒有獲取到網(wǎng)關的MAC的地址,顯然,如果沒有網(wǎng)關的MAC地址,那也是不可能ping通網(wǎng)關的,在排除了前面電腦設置的問題后,你可以猜測是網(wǎng)關設備出了問題,這時就可以聯(lián)系網(wǎng)絡工程師對網(wǎng)關設備進行測試了。
2、測試到其它路由器的通暢情況
前面一步?jīng)]有問題了,也就是電腦到網(wǎng)關通信正常了,再測試網(wǎng)關到出口路由器的通暢情況:
這里,我們使用tracert -d命令就可以了:
當然,如果發(fā)現(xiàn)不通,那么則可能是下面的情況:
a、網(wǎng)關設備與路由器之間的物理鏈路問題
b、網(wǎng)關設備與路由器之間的設置問題,比如路由協(xié)議、接口配置之類的
出現(xiàn)上面的情況,那就是網(wǎng)絡工程師的問題了,當然,如果你是網(wǎng)絡工程師,應該要馬上查看一下設備的狀態(tài),看是不是設備哪里出現(xiàn)問題了。
上面的步驟完成了,假設你的出口路由器設置是沒有問題的,比如NAT與默認路由等的設置沒有問題,那么我們大致可以知道,內(nèi)網(wǎng)的一個基本通信是正常的(至少你的電腦和出口路由器的通信沒問題),我們就要看看電腦到底能不能訪問互聯(lián)網(wǎng)了。
四、測試ping公網(wǎng)ip的通暢情況(平時要記幾個外部IP)
來到這一步的時候,就說明前面三步是沒有問題的,也就是說,本地局域網(wǎng)絡的通信是正常的,這時要做的就是判斷本地局域網(wǎng)絡與外網(wǎng)(公網(wǎng))之間的通信有沒有問題了:
這里采取的是直接ping公網(wǎng)地址的方法,是為了排除DNS的影響(萬一你的DNS設置又有問題),至于要ping什么樣的公網(wǎng)地址,個人建議是,可以ping一些沒有禁止ping的公共DNS服務器地址,比如114.114.114.114和8.8.8.8的:
這樣之后,基本上就可以確定網(wǎng)絡是沒有問題的了。能ping通外網(wǎng),說明網(wǎng)絡是沒有問題的,當然,這里并沒有提到出口放置防火墻的情況,實際上,思路是一致的,但是,你需要考慮的是,你的訪問數(shù)據(jù)有沒有被防火墻給過濾掉,是數(shù)據(jù)出去的時候過濾了,還是數(shù)據(jù)回來的時候過濾了?由于還要涉及到防火墻的設置,這里就不再提及了,只是仍要注意這一點就是了。
五、測試DNS的通暢情況,可以直接ping網(wǎng)站地址
如題,可以直接ping網(wǎng)站地址,看有沒有回顯IP地址,至于通不通是另外一回事,只要可以回顯IP地址,那么DNS就沒有問題了,不過這里仍然要說一下nslookup這個命令,這是一個非常好用的命令,我平常自己在網(wǎng)絡排錯時,基本上都會用到:
當然也可以像下面這樣使用:
使用nslookup命令,作用有二:
1、幫你測試你設置的DNS服務器有沒有問題
2、在不考慮DNS服務器是否智能的前提下,你可以根據(jù)回顯IP地址速度的快慢來大致判斷DNS服務器的優(yōu)劣情況
所以可以充分利用nslookup命令了。
所以對于網(wǎng)絡排錯的思路和一些基本命令的掌握還是很重要的,雖然單個命令的使用的功能不是特別大,但組合起來使用卻是可以解決很多問題。