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

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

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

網(wǎng)絡(luò)排錯的必備條件

Linux愛好者 ? 來源:xpleaf ? 作者:xpleaf ? 2021-01-19 16:50 ? 次閱讀

明人不說暗話,這篇文章我們來聊一個非常有用,同時也是程序員必備的技能,那就是網(wǎng)絡(luò)排錯思路大總結(jié)。

有了這個技能,如果以后發(fā)生領(lǐng)導(dǎo)、妹子電腦上不了網(wǎng)的情況,你上去就是一頓操作,穩(wěn)穩(wěn)的~~

網(wǎng)絡(luò)排錯的必備條件 為什么要先講必備條件?因為這里所講的網(wǎng)絡(luò)排錯并不僅僅是停留在某一個小小命令的使用上,而是一套系統(tǒng)的方法,如果沒有這些條件,真的不能保證下面聊的這些可以聽得懂,并且能運用到實際當中,所以還是先看看這些基礎(chǔ)的條件吧。

1.1 熟悉OSI七層模型與TCP/IP協(xié)議棧

這應(yīng)該是網(wǎng)絡(luò)排錯要知道的最基本的知識了。 無論是OSI七層模型還是DoD模型,都是用來描述網(wǎng)絡(luò)通信的一個過程,以讓我們對網(wǎng)絡(luò)數(shù)據(jù)的發(fā)送和接收有一個大致的認識。OSI七層模型對應(yīng)OSI七層模型的協(xié)議,DoD模型對應(yīng)DoD模型的協(xié)議,也就是TCP/IP協(xié)議棧。 TCP/IP協(xié)議棧里面的協(xié)議就顯得十分重要了,比如DNS、TCP、UDP、IP、ICMP、ARP,這些最基本的應(yīng)該得知道吧,我們不需要像《TCP/IP協(xié)議?!分姓f得的那么細,但至少,對于這些協(xié)議的基本功能我們是必須得要知道的,這些就不是一兩句可以說清楚的了,計網(wǎng)里也都學(xué)了~

1.2 了解網(wǎng)絡(luò)通信的基礎(chǔ)設(shè)備和其對應(yīng)的OSI層次

交換機、三層交換機、路由器、防火墻這些最基本的網(wǎng)絡(luò)設(shè)備應(yīng)該要有些了解,尤其是它們對應(yīng)的OSI層次以及作用,比如普通的二層交換機對應(yīng)OSI七層模型中的數(shù)據(jù)鏈路層,它可以隔絕沖突域,同時可以通過虛擬局域網(wǎng)技術(shù)(VLAN)來隔絕廣播域,二層交換機通過二層地址即MAC地址來實現(xiàn)數(shù)據(jù)幀的轉(zhuǎn)發(fā);再比如路由器,它對應(yīng)網(wǎng)絡(luò)層,可以提供路由尋址的功能等等。

1.3 了解中小型企業(yè)網(wǎng)絡(luò)的基本架構(gòu)

一般中小型企業(yè)網(wǎng)絡(luò)的基本架構(gòu)都是這樣的:接入層--匯聚層--核心層--網(wǎng)絡(luò)出口。 下面給個圖:

b31f9490-5787-11eb-8b86-12bb97331649.jpg

如果網(wǎng)絡(luò)環(huán)境比較龐大,匯聚層和核心層都會有,像這里的話,就直接沒有匯聚層,不過思想是一樣的。下面講的排錯其實都是針對用戶PC來說明的,事實上,數(shù)據(jù)中心中的網(wǎng)絡(luò)排錯也是類似的。不管網(wǎng)絡(luò)環(huán)境多么復(fù)雜,其實簡化下來跟這個都是差不多的。

1.4 知道常用的網(wǎng)絡(luò)排錯命令

如果用戶使用的是Windows操作系統(tǒng),那么下面的這些命令就很重要了:

b34477ec-5787-11eb-8b86-12bb97331649.png

如果使用的是Linux操作系統(tǒng),那么也有對應(yīng)的相關(guān)命令。其實說到底就是要熟悉你所使用的設(shè)備,當然,在實際網(wǎng)絡(luò)排錯的過程中,如果只是為了測試網(wǎng)絡(luò)通信是否正常,你可以換上你熟悉的設(shè)備操作。

1.5 清楚知道網(wǎng)絡(luò)排錯的一個重要原則

網(wǎng)絡(luò)排錯,不就是要判斷網(wǎng)絡(luò)哪里出了問題,因此,你就必須要知道數(shù)據(jù)的走向。 所以一個重要原則是:關(guān)注數(shù)據(jù)的走向。 下面講的網(wǎng)絡(luò)排錯思路其實就是通過追蹤數(shù)據(jù)的走向來一步步縮小網(wǎng)絡(luò)故障點的,因此,時刻記住這一點非常非常重要!這也是為什么上面需要讓你了解中小型企業(yè)網(wǎng)絡(luò)的基本架構(gòu)了。 網(wǎng)絡(luò)排錯的基本思路 基本思路如下,這跟網(wǎng)上的大多數(shù)人寫的應(yīng)該是差不多的。 (1)檢查物理鏈路是否有問題 (2)查看本機IP地址、路由、DNS的設(shè)置是否有問題 (3)測試網(wǎng)關(guān)或路由器的通暢情況。先測網(wǎng)關(guān)然后再測路由器,一級一級地測試 (4)測試ping公網(wǎng)ip的通暢情況(平時要記幾個外部IP) (5)測試DNS的通暢情況,可以直接ping網(wǎng)站地址 網(wǎng)絡(luò)排錯的具體步驟 為了更好的講述網(wǎng)絡(luò)排錯的過程和思路,假設(shè)我們有下面的一個網(wǎng)絡(luò)環(huán)境: (說明:雖然是假設(shè),但實際上該網(wǎng)絡(luò)環(huán)境是通過GNS3聯(lián)動虛擬機和真實網(wǎng)絡(luò)架設(shè)起來的,所以是可以真實參考的)

b372ad9c-5787-11eb-8b86-12bb97331649.jpg

下面,我們就以上面這個網(wǎng)絡(luò)環(huán)境為例子,詳細介紹我們的網(wǎng)絡(luò)排錯思路,每一步要怎么做,每一步為什么要這樣做以及這樣做之后我們可以得到什么信息,都會做一個說明。

3.1 檢查物理鏈路是否有問題

這一步是我個人認為在做網(wǎng)絡(luò)排錯時必須要做的第一步!經(jīng)常會聽朋友說,領(lǐng)導(dǎo)的電腦上不了網(wǎng),需要過去排錯,搞了老半天,還發(fā)現(xiàn)不了問題,最后在幾經(jīng)絕望之時,竟然發(fā)現(xiàn)網(wǎng)線都沒接上電腦。這就真的是悲劇了,浪費了很多時間不說,這樣的網(wǎng)絡(luò)排錯思路本來就是有錯誤的。 因為也許不是每個人都可以去機房查看交換機的接線情況,所以這一步,我們排查的重點范圍就應(yīng)該放在如下面圖所示的地方:

b398db02-5787-11eb-8b86-12bb97331649.png

在這一步,下面幾點是需要注意排查的: 1. 確認電腦本身的網(wǎng)卡有沒有問題2. 確認接的網(wǎng)線有沒有問題3. 本機所連接的交換機(如果可以去機房查看的話) 如果上面這幾點排查都沒有問題了,那么就是該網(wǎng)絡(luò)環(huán)境中的其他設(shè)備問題了。這一范圍的排查相對比較簡單,因為只涉及到物理鏈路的連接問題。 對于這種測試,可以考慮使用測線器,但個人的建議是,拿一臺配置正確的筆記本來做測試也未嘗不可。

3.2 查看本機IP地址、路由、DNS的設(shè)置是否有問題

上面第一步,物理鏈路的排查沒有問題了,也就是說,電腦接上網(wǎng)線之后,電腦有反應(yīng)了,可以識別,但是網(wǎng)絡(luò)還是不通,來到這一步,就應(yīng)該先把注意的范圍放在電腦的設(shè)置上面了。 這一步,我們關(guān)注的重點是: 1. IP地址設(shè)置 如果采用的是DHCP自動獲取的方法,那么這時候只需要看自己本機的設(shè)置上有沒有開啟自動獲取IP的設(shè)置以及有沒有開啟相關(guān)的服務(wù); 如果用的是靜態(tài)IP,那么就必須要注意IP地址的填寫有沒有錯(一般網(wǎng)絡(luò)管理人員給的)、IP地址的子網(wǎng)掩碼有沒有問題(這很重要,對于靜態(tài)IP,很多人在這里設(shè)置錯誤,建議是,最好把IP地址、VLSM這方面的知識學(xué)一下)。 一般可以用下面的命令查看:

b3c369a8-5787-11eb-8b86-12bb97331649.png

2. 路由設(shè)置 對于服務(wù)器、PC,一般是指默認網(wǎng)關(guān)的設(shè)置了;對于路由器本身或三層交換機,那就是靜態(tài)路由或動態(tài)路由的設(shè)置問題了。 3. DNS設(shè)置 主要是要確保所設(shè)置的DNS服務(wù)器地址到底有沒有提供域名解析服務(wù)或者是否出現(xiàn)了故障,至于如何判斷,后面會給出方法,這里關(guān)注的是,你得設(shè)置一個正確的DNS服務(wù)器地址或可以自動獲取。在windows上面你可以通過下面的命令查看:

b3eaab58-5787-11eb-8b86-12bb97331649.jpg

3.3 測試網(wǎng)關(guān)或路由器的通暢情況。先測網(wǎng)關(guān)然后再測路由器,一級一級地測試

在上面的網(wǎng)絡(luò)環(huán)境中,在網(wǎng)絡(luò)通的情況下,我們在電腦上使用命令tracert -d命令,會得到下面的結(jié)果:

b40f9a58-5787-11eb-8b86-12bb97331649.png

通過這個測試結(jié)果,我們可以清楚地知道電腦在訪問互聯(lián)網(wǎng)時,數(shù)據(jù)的走向情況:

b4371ede-5787-11eb-8b86-12bb97331649.jpg

根據(jù)這個數(shù)據(jù)走向,我們就可以得到一個重要的思路,就是根據(jù)數(shù)據(jù)走向來檢測網(wǎng)絡(luò)的通暢情況!因此,我們可以分兩步: 1. 先測試電腦到網(wǎng)關(guān)192.168.2.254的通暢情況

b44ae086-5787-11eb-8b86-12bb97331649.jpg

我們可以在自己的電腦上自己ping網(wǎng)關(guān)的地址,看是否有響應(yīng)

b46665a4-5787-11eb-8b86-12bb97331649.jpg

一般這樣的判斷方法是比較快的,但有時候,無論怎樣ping都不能,那么則可能有以下的幾種情況: a. 網(wǎng)關(guān)設(shè)備做了禁止ping的設(shè)置b. 網(wǎng)關(guān)接口或網(wǎng)關(guān)設(shè)備出現(xiàn)故障 對于a,一般很少會在這些設(shè)備在做ping的限制操作,實在是沒有太大的必要這樣做,當然,網(wǎng)絡(luò)安全等要求十分嚴格的除外。ping通192.168.2.254網(wǎng)關(guān)后,再ping一下172.16.13.1以確認電腦到整個網(wǎng)關(guān)設(shè)備都沒有問題。 對于ping不通的時候,我個人還建議在電腦上執(zhí)行如下操作:

b4911fb0-5787-11eb-8b86-12bb97331649.png

即查看電腦本身有沒有獲取到網(wǎng)關(guān)的MAC的地址,顯然,如果沒有網(wǎng)關(guān)的MAC地址,那也是不可能ping通網(wǎng)關(guān)的,在排除了前面電腦設(shè)置的問題后,你可以猜測是網(wǎng)關(guān)設(shè)備出了問題,這時就可以聯(lián)系網(wǎng)絡(luò)工程師對網(wǎng)關(guān)設(shè)備進行測試了。 2. 測試到其它路由器的通暢情況 前面一步?jīng)]有問題了,也就是電腦到網(wǎng)關(guān)通信正常了,再測試網(wǎng)關(guān)到出口路由器的通暢情況:

b4bb3e9e-5787-11eb-8b86-12bb97331649.jpg

這里,我們使用tracert -d命令就可以了:

b4da4280-5787-11eb-8b86-12bb97331649.png

當然,如果發(fā)現(xiàn)不通,那么則可能是下面的情況: a. 網(wǎng)關(guān)設(shè)備與路由器之間的物理鏈路問題b. 網(wǎng)關(guān)設(shè)備與路由器之間的設(shè)置問題,比如路由協(xié)議、接口配置之類的 出現(xiàn)上面的情況,那就是網(wǎng)絡(luò)工程師的問題了,當然,如果你是網(wǎng)絡(luò)工程師,應(yīng)該要馬上查看一下設(shè)備的狀態(tài),看是不是設(shè)備哪里出現(xiàn)問題了。 上面的步驟完成了,假設(shè)你的出口路由器設(shè)置是沒有問題的,比如NAT與默認路由等的設(shè)置,那么我們大致可以知道,內(nèi)網(wǎng)的一個基本通信是正常的(至少你的電腦和出口路由器的通信沒問題),我們就要看看電腦到底能不能訪問互聯(lián)網(wǎng)了。

3.4 測試ping公網(wǎng)ip的通暢情況(平時要記幾個外部IP)

來到這一步的時候,就說明前面三步是沒有問題的,也就是說,本地局域網(wǎng)絡(luò)的通信是正常的,這時要做的就是判斷本地局域網(wǎng)絡(luò)與外網(wǎng)(公網(wǎng))之間的通信有沒有問題了:

b5041966-5787-11eb-8b86-12bb97331649.jpg

這里采取的是直接ping公網(wǎng)地址的方法,是為了排除DNS的影響(萬一你的DNS設(shè)置又有問題),至于要ping什么樣的公網(wǎng)地址,個人建議是,可以ping一些沒有禁止ping的公共DNS服務(wù)器地址,比如114.114.114.114和8.8.8.8的:

b5156068-5787-11eb-8b86-12bb97331649.jpg

這樣之后,基本上就可以確定網(wǎng)絡(luò)是沒有問題的了。當然,這里并沒有提到出口放置防火墻的情況,實際上,思路是一致的,但是,你需要考慮的是,你的訪問數(shù)據(jù)有沒有被防火墻給過濾掉,是數(shù)據(jù)出去的時候過濾了,還是數(shù)據(jù)回來的時候過濾了?由于還要涉及到防火墻的設(shè)置,這里就不再提及了,只是仍要注意這一點就是了。

3.5 測試DNS的通暢情況,可以直接ping網(wǎng)站地址

如題,可以直接ping網(wǎng)站地址,看有沒有回顯IP地址,至于通不通是另外一回事,只要可以回顯IP地址,那么DNS就沒有問題了,不過這里仍然要說一下nslookup這個命令,這是一個非常好用的命令,我平常自己在網(wǎng)絡(luò)排錯時,基本上都會用到:

b52aaa68-5787-11eb-8b86-12bb97331649.jpg

當然也可以像下面這樣使用:

b546fc22-5787-11eb-8b86-12bb97331649.jpg

使用nslookup命令,作用有二: 1.幫你測試你設(shè)置的DNS服務(wù)器有沒有問題2.在不考慮DNS服務(wù)器是否智能的前提下,你可以根據(jù)回顯IP地址速度的快慢來大致判斷DNS服務(wù)器的優(yōu)劣情況 所以可以充分利用nslookup命令了。 最后重要說明 其實基本上,一個相對完整的網(wǎng)絡(luò)排錯過程就應(yīng)該如上面所說的了,不過,是基本上的,因為上面的講解,都幾乎是假定你是沒有權(quán)限進入機房查看網(wǎng)絡(luò)設(shè)備的情況的。 事實上,你是根本不需要照搬來進行上面的全部步驟的,在實際排錯的過程中,可能你用到的只是其中的一小部分而已,畢竟,如果每次都這樣下來,沒有誰是不會瘋掉的,因為一些很簡單的問題也要這樣折騰,那就是太浪費時間了!但是,上面的方法,只是提出一種網(wǎng)絡(luò)排錯的思路,希望按照這個思路可以判斷出網(wǎng)絡(luò)的問題出現(xiàn)在哪里,至于如何去解決,這中間真的又涉及到太多太多的經(jīng)驗問題。其實整個下來,個人覺得,最重要的仍然不是技術(shù)本身,而是在網(wǎng)絡(luò)排錯過程當中的一個思路,思路決定出路,這可以讓自己在網(wǎng)絡(luò)排錯的過程中時刻保持清醒的頭腦,這一點很重要。

責(zé)任編輯:lq

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

    關(guān)注

    14

    文章

    7568

    瀏覽量

    88796
  • TCP
    TCP
    +關(guān)注

    關(guān)注

    8

    文章

    1353

    瀏覽量

    79078
  • DNS服務(wù)器
    +關(guān)注

    關(guān)注

    0

    文章

    21

    瀏覽量

    8441

原文標題:有了這篇網(wǎng)絡(luò)排錯思路大總結(jié):幫了不少女同事

文章出處:【微信號:LinuxHub,微信公眾號:Linux愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    芯片開發(fā)必備工具——好用的文件比對工具有哪些?

    芯片開發(fā)必備工具——好用的文件比對工具有哪些?
    的頭像 發(fā)表于 11-01 08:11 ?263次閱讀
    芯片開發(fā)<b class='flag-5'>必備</b>工具——好用的文件比對工具有哪些?

    智能制造中的關(guān)鍵技術(shù)和發(fā)展趨勢

    在制造業(yè)中擁抱數(shù)字時代不再只是一種選擇,而是企業(yè)在市場上保持競爭力的必備條件。如今的制造業(yè)正在經(jīng)歷由人工智能(AI)引領(lǐng)的轉(zhuǎn)型,這種技術(shù)和創(chuàng)新的融合催生了智能制造產(chǎn)業(yè),這是一個將重新定義該行業(yè)的重大變革。
    的頭像 發(fā)表于 10-18 16:02 ?664次閱讀
    智能制造中的關(guān)鍵技術(shù)和發(fā)展趨勢

    振蕩器的相位條件和振幅條件的區(qū)別

    振蕩器是電子電路中的一種基本組件,它能夠產(chǎn)生周期性的電壓或電流波形。振蕩器的工作原理基于正反饋機制,即輸出信號的一部分被反饋到輸入端,以維持振蕩。在設(shè)計和分析振蕩器時,需要考慮兩個關(guān)鍵條件:相位條件
    的頭像 發(fā)表于 09-25 10:40 ?680次閱讀

    硬件工程師找工作必備書籍推薦

    硬件工程師找工作必備書籍推薦
    的頭像 發(fā)表于 09-24 16:07 ?868次閱讀
    硬件工程師找工作<b class='flag-5'>必備</b>書籍推薦

    晶振原廠來告訴你優(yōu)質(zhì)晶振5個必備條件

    需要具備哪些條件?01頻差要穩(wěn)定不隨溫度等環(huán)境因素而變化,這個要求是首位的。即便是溫補晶振,在常溫范圍內(nèi)也有大約0.5ppm到2ppm的誤差,做成鐘表就相當于每年誤差30秒左右。02老化率要穩(wěn)定不隨時間
    發(fā)表于 09-04 14:43 ?0次下載

    振蕩器的起振條件和平衡條件

    振蕩器作為電子電路中的重要組成部分,其起振條件和平衡條件對于理解振蕩器的工作原理、設(shè)計及應(yīng)用具有重要意義。以下是對振蕩器的起振條件和平衡條件的詳細闡述,旨在提供全面且深入的理解。
    的頭像 發(fā)表于 07-30 16:14 ?3571次閱讀

    EMC大揭秘 PCB設(shè)計必備指南

    EMC大揭秘 PCB設(shè)計必備指南
    的頭像 發(fā)表于 06-15 16:29 ?3075次閱讀
    EMC大揭秘 PCB設(shè)計<b class='flag-5'>必備</b>指南

    XV-9300LP 微型陀螺儀傳感器適用汽車系統(tǒng)

    陀螺儀傳感器是電子穩(wěn)定控制系統(tǒng)中不可缺少的傳感器之一。與通常的民用部件相比,用于車載的部件有一些特殊要求。因為涉及安全,所以高可靠性是必備條件。在制動組件等高溫條件下的耐久性、受振動或撞擊時不會
    發(fā)表于 05-16 15:33 ?0次下載

    #物聯(lián)網(wǎng) #農(nóng)業(yè)物聯(lián)網(wǎng) 大棚種植的必備條件及小Q的應(yīng)用

    物聯(lián)網(wǎng)
    斯塔克物聯(lián)科技
    發(fā)布于 :2024年05月08日 08:58:11

    電工必備接線指南:輕松掌握各種電路接線技巧

    電工必備接線指南:輕松掌握各種電路接線技巧
    的頭像 發(fā)表于 04-28 11:00 ?3048次閱讀
    電工<b class='flag-5'>必備</b>接線指南:輕松掌握各種電路接線技巧

    IMEI號申請條件與申請周期指南

    在現(xiàn)代社會中,無線通信設(shè)備已經(jīng)成為人們生活和工作的必備品,而IMEI號則是每個設(shè)備的唯一標識符。然而,要想讓您的設(shè)備在市場上合規(guī)上市,您需要了解IMEI號的申請條件以及申請周期,以便順利完成申請流程
    的頭像 發(fā)表于 04-22 17:18 ?713次閱讀
    IMEI號申請<b class='flag-5'>條件</b>與申請周期指南

    英特爾發(fā)布23.40.0版無線藍牙驅(qū)動,提升低功耗藍牙連接性能

    具體更新內(nèi)容如下:首先,針對BR/EDR與LE雙模式連接問題進行了優(yōu)化;其次,對“周期性廣播廣告數(shù)據(jù)信息”功能進行改良,此舉有助于提高平臺功耗節(jié)能效果,實為LE Audio Aura音頻共享功能的必備條件;
    的頭像 發(fā)表于 04-11 11:42 ?883次閱讀

    愛普生(EPSON)推出XV-9100CD和XV-9300CD為檢測車身所處姿勢狀態(tài)提供解決方案

    通常的民用部件相比,用于車載的部件有一些特殊要求。因為涉及安全,所以高可靠性是必備條件。在制動組件等高溫條件下的耐久性、受振動或撞擊時不會產(chǎn)生異常輸出亦是十分重要的條件。愛普生(EPSON)推出
    的頭像 發(fā)表于 03-19 14:02 ?652次閱讀
    愛普生(EPSON)推出XV-9100CD和XV-9300CD為檢測車身所處姿勢狀態(tài)提供解決方案

    晶閘管的導(dǎo)通條件及關(guān)斷條件?

    晶閘管(Thyristor)是一種常用的半導(dǎo)體器件,廣泛應(yīng)用于電力電子和電路控制領(lǐng)域。它可以用作開關(guān)、穩(wěn)壓器、整流器等。在進行詳細介紹晶閘管的導(dǎo)通條件和關(guān)斷條件之前,我們需要先了解一些基礎(chǔ)知識
    的頭像 發(fā)表于 03-12 15:01 ?4375次閱讀

    戶內(nèi)開關(guān)的必備知識技巧

    經(jīng)常聽人問道:戶內(nèi)總開關(guān)應(yīng)該選多大的?選什么型號?1kw又是多少電流?這些問題無論是否從事電工工作,都應(yīng)該學(xué)會應(yīng)用與掌握。 學(xué)會常識性必備知識技巧,是人們應(yīng)具備的基本能力之一。下面我們對以上三個
    的頭像 發(fā)表于 01-13 10:43 ?1135次閱讀
    戶內(nèi)開關(guān)的<b class='flag-5'>必備</b>知識技巧