Matrix 首頁推薦Matrix 是少數(shù)派的寫作社區(qū),我們主張分享真實的產(chǎn)品體驗,有實用價值的經(jīng)驗與思考。我們會不定期挑選 Matrix 最優(yōu)質(zhì)的文章,展示來自用戶的最真實的體驗和觀點。 文章代表作者個人觀點,少數(shù)派僅對標題和排版略作修改。 引言歡迎來到網(wǎng)絡(luò)世界,《小白也能看懂的網(wǎng)絡(luò)基礎(chǔ)》系列文章會從零開始幫助你構(gòu)建網(wǎng)絡(luò)的基礎(chǔ)知識。如果你完全沒有接觸過網(wǎng)絡(luò)相關(guān)的內(nèi)容,那我們是一樣的,在學習過程中我們肯定遇到了相同的問題!寫下這些文章一方面要記錄自己的學習歷程,另一方面也希望幫到同樣想要學習網(wǎng)絡(luò)基礎(chǔ)的小伙伴。 文章的部分內(nèi)容與素材是我從 YouTube 頻道 Network Direction 發(fā)布的系列視頻學習和搜集過來的,翻譯不易,部分內(nèi)容可能無法做到盡善盡美,甚至可能會有部分瑕疵,我會盡力讓文章內(nèi)容通俗易懂,覆蓋全面。若各位小伙伴發(fā)現(xiàn)任何問題,希望能夠留言或私信告訴我,在下不勝感激!當然,我也會在第一時間進行更正。 在往后的每一篇文章中,我都會把看到文章的小伙伴當成是完全沒有網(wǎng)絡(luò)經(jīng)驗的小白,我的目標是和零基礎(chǔ)小白一起建立堅實的網(wǎng)絡(luò)基礎(chǔ),網(wǎng)絡(luò)大神請略過此系列文章。 讓我們開始網(wǎng)絡(luò)之旅吧! 「地址」的重要性在前面的課程中,我們已經(jīng)見證了「地址」在網(wǎng)絡(luò)中的重要性,網(wǎng)絡(luò)設(shè)備需要地址,這也是他們能夠?qū)⑿畔蚀_無誤送達目的地的最根本的原因。說到地址,我們就不得不提一下 IP地址。 通過「IP地址」我們可以很輕松的找到一臺已經(jīng)接入網(wǎng)絡(luò)中的設(shè)備。同時,我們不僅可以在本地網(wǎng)絡(luò)通過「IP地址」定位到另一臺設(shè)備。如果可以配合路由器,即便不在同一個網(wǎng)段的設(shè)備,我們依然能夠輕易找到。 這就是「IP地址」的神奇之處!但,你真的了解「IP地址」嗎? 一、IP地址的概念![]() IP 地址可以分成兩種不同的形式,分別為 IPv4 和 IPv6。它們看起來截然不同,同時 IPv6 屬于比較新的 IP 技術(shù),暫未普及。而 IPv4 是我們最常見的地址形式,因此,本章節(jié)主要圍繞 IPv4 展開講解。 1.IPv4首先,IPv4 地址是一段由四組數(shù)字組成的整體,每組數(shù)字中間使用點來隔開,每組數(shù)字我們又稱其為八位字節(jié),原因是,我們把每組數(shù)字都以八位形式的二進制來表示,例如 0 = 0000 0000、255 = 1111 1111 等而因為它由四組數(shù)字組成,因此我們可以將其分成四組獨立的八位字節(jié)。例如下面這個IP地址,如果使用八位二進制數(shù)來表示,則為: ![]() IP 地址的四組數(shù)字均是由從 0~255 的數(shù)字組成,不可超過這個范圍,其二進制數(shù)表示形式為:00000000~11111111。因此一個正確的 IP 地址除了可以使用阿拉伯數(shù)字表示,同樣可以采用二進制數(shù)表示。 ![]() 而 00000000~11111111 或 0~255 這個地址范圍,我們稱其為 IP 空間。由此可見,二進制數(shù)據(jù)對于 IP 地址尋址的重要性,我們要學會簡單的十進制與二進制數(shù)字的轉(zhuǎn)換,這是為了方便后續(xù)的學習。 ![]() IP 地址可以代表 「兩個地址」 ,一個是 Host Address 也就是主機地址,另一個是 Network Address 也就是網(wǎng)絡(luò)地址,這是怎么回事兒呢? ![]() 這里,我們拿 172.16.0.1 這個IP地址舉例:其中 172.16 是網(wǎng)絡(luò)地址,而后面的 0.1 是主機地址,參考下圖可以理解各個部分的含義。 ![]() 觀察上圖,我們可以發(fā)現(xiàn),左側(cè)以 172.16 開頭的主機在同一個網(wǎng)絡(luò)中,右側(cè)以 172.17 開頭的主機在另一個網(wǎng)絡(luò)中。這是兩個不同的網(wǎng)絡(luò),它們之間不能直接進行溝通!但是在同一網(wǎng)絡(luò)中的設(shè)備可以進行通信,如果你有新的設(shè)備加入,只需要將地址設(shè)置為 172.16 或 172.17 即可。如果想要實現(xiàn)兩個網(wǎng)段之間的通信,則需要借助路由器來實現(xiàn)。 ![]() 二、 類網(wǎng)絡(luò) Classful Networks你可能想知道,IP 地址的前兩個位置的數(shù)字是否總是代表網(wǎng)絡(luò)地址呢?答案是否定的,那么問題來了,我們該怎么知道哪一部分是網(wǎng)絡(luò)地址,哪一部分是主機地址呢?這個問題答案并不是固定的,它會根據(jù)實際情況進行變化。所以,要想深入了解這兩個地址,我們就要從 IP 地址的歷史開始進行追溯。 我們從 Internet 協(xié)議創(chuàng)立之初說起,在那個時候,IP地址的第一組數(shù)字第一個八位位組,始終代表網(wǎng)絡(luò)地址;而隨后的三個數(shù)字后三個八位位組,用于主機。 ![]() 這意味著,我們最多只能擁有 0~255 即 256 個網(wǎng)絡(luò)空間,每個網(wǎng)絡(luò)空間可以擁有 1600 萬臺主機,這種形式的劃分非常不合理!但因為 Internet 剛開始出現(xiàn)時并不是國際性的,只有很少的組織使用它,因此這樣劃分也沒有什么不妥。 隨著互聯(lián)網(wǎng)的飛速發(fā)展,各個國家、各個地區(qū)都需要使用到網(wǎng)絡(luò)空間,此時,256 個網(wǎng)絡(luò)空間顯然是不夠的。因此在 1981 年時,Internet 就引入了一種全新的方法,那就是將整個 IP 空間從 A 到 E 劃分成了五個類別。 ![]() 這其中 A、B 和 C 類應(yīng)用于設(shè)備尋址(也就是我們的電腦、打印機等設(shè)備可通過這類地址發(fā)現(xiàn)彼此);D 類用于組播(源主機分發(fā)信息到多臺其他機器);E 類屬于保留地址(特殊使用)。因此,A、B 和 C 類地址屬于我們現(xiàn)在需要考慮的部分。 1. A類A 類 IP 地址第一個八位位組是網(wǎng)絡(luò)空間,后三個八位位組是地址空間;雖然擁有很少的網(wǎng)絡(luò)空間,但是卻擁有龐大的主機空間。這里需要注意的是,A 類地址八位位組中的第一位始終為 0 固定位,剩下的 7 位可供給我們進行分配,因此,我們只有 0~127 即 128 個網(wǎng)絡(luò)空間可供分配,網(wǎng)絡(luò)空間從 0.0.0.0 ~ 127.0.0.0。 ![]() 另外,由于第一個八位位組以 0 和 127 開頭的網(wǎng)絡(luò)空間是要用作保留的,所以實際可供分配網(wǎng)絡(luò)空間為 126 個,其網(wǎng)絡(luò)空間IP地址為 1.0.0.0 ~ 126.0.0.0。每個空間可供分配主機為16777216 臺(2的24次方=16777216)。 2. B類B 類網(wǎng)絡(luò)適用于中等數(shù)量主機的情況,前兩個八位位組用于網(wǎng)絡(luò)空間劃分,后面兩個則用于主機地址劃分,網(wǎng)絡(luò)的前兩個位始終為 1 和 0(10000000)即 128,可供我們設(shè)置的有 14 位,也就是 16384 個網(wǎng)絡(luò)空間(2 的 14 次方=16384),其網(wǎng)絡(luò)空間 IP 為 128.0.0.0 ~ 191.255.0.0,每個網(wǎng)絡(luò)空間可以擁有 65536 臺主機(2 的 16 次方=65536)。 ![]() 3. C類C 類網(wǎng)絡(luò)屬于小型網(wǎng)絡(luò),這類網(wǎng)絡(luò)IP地址的前三個數(shù)字為網(wǎng)絡(luò)地址,最后一個是主機地址,且第一個八位位組的前三位固定位110(11000000)即 192,可供我們設(shè)置的有 21 位,也就是 2097152 個網(wǎng)絡(luò)空間(2的21次方),其網(wǎng)絡(luò)空間 IP 為 192.0.0.0~223.255.255.0,每個網(wǎng)絡(luò)空間可以有 256 ( 2 的 8 次方)臺主機。 ![]() 4. 總結(jié)
5. 問題
6. 小提示![]() 觀察上圖,若 172.16 網(wǎng)段中的 0.1 主機想要發(fā)送信息給同網(wǎng)段中的 0.2 主機,0.1 主機首先就會查看 0.2 主機是否與自己在同一網(wǎng)段下,靠什么查看呢? 兩種方式,一種是查看八位位組是否一致;另一種是查看IP地址的前兩組數(shù)是否一致,若一致,則代表在同一網(wǎng)段,因此可以直接發(fā)送信息; 若172.16 網(wǎng)段中的 0.1 主機想要發(fā)送信息給 172.17 網(wǎng)段中的 0.2 主機,同樣是根據(jù)上述方法檢測,此時發(fā)現(xiàn) 0.2 主機在另一網(wǎng)段,因此需要借助路由器來實現(xiàn)信息的交互。 這就是 IP 地址的運行機制,你學會了嗎? 三、無類網(wǎng)絡(luò)和子網(wǎng)劃分隨著互聯(lián)網(wǎng)的飛速發(fā)展,我們消耗 IP 的速度越來越快,IP 地址漸漸的又不夠用了,因此,在 1993 年,引入了一種新的方法,稱為無類別域間路由(Classless Inter-Domain Routing)簡稱 CIDR。 以前我們通過查看IP的前幾位來識別 IP 地址類別,知道該 IP 類別后,我們就直到了 IP 中的哪一部分用于網(wǎng)絡(luò),哪一部分用于主機;但是現(xiàn)在,我們需要引入一種全新的概念——子網(wǎng)劃分。 1. 子網(wǎng)掩碼子網(wǎng)掩碼同樣由 4 個八位位組組成,與 IP 地址如出一轍;如圖,255.255.0.0 就是 172.16.3.4 的子網(wǎng)掩碼。 ![]() 子網(wǎng)掩碼的每一位都與 IP 地址對齊,例如 172 與第一個 255 對齊,16 與第二個 255 對齊,通過圖中我們可以發(fā)現(xiàn),子網(wǎng)掩碼設(shè)置為 255 的位,即為網(wǎng)絡(luò)地址,設(shè)置位 0 的位,即為主機地址。 ![]() 此時,我相信很多讀者突然恍然大明白了,原來我們在自己電腦上設(shè)置IP地址信息時的子網(wǎng)掩碼是這個意思呀,有了這樣一個概念,我們就可以通過子網(wǎng)掩碼很快的得知 IP 地址屬于哪一類網(wǎng)絡(luò)。 若子網(wǎng)掩碼設(shè)置為 255.0.0.0 則為 A 類網(wǎng)絡(luò);255.255.0.0 則為 B 類網(wǎng)絡(luò);255.255.255.0 則為 C 類網(wǎng)絡(luò),So Easy~ 此時,大家可能會說,就這?我們的問題是IP地址不夠用的問題,你這不是說了個寂寞嗎?僅僅能分辨 IP 地址類別有個卵用? 別急,接下來,咱們就看一下 CIDR 的真正強大之處。 2. 子網(wǎng)劃分將大型網(wǎng)絡(luò)分解為小型網(wǎng)路的能力,我們稱之為子網(wǎng)劃分,假設(shè)你擁有一個 172.16.0.0 的網(wǎng)絡(luò)空間,子網(wǎng)掩碼為 255.255.0.0,這意味著我們可以在該網(wǎng)絡(luò)空間布置 6.5 萬臺主機,試問,有那個公司敢說自己的辦公室可以容得下這么多主機?即便有這么大的辦公室,也沒那么多員工??? ![]() 假如我們只有幾間小辦公室,然后我們擁有 172.16.0.0 這個網(wǎng)絡(luò)空間,這意味著每個辦公室要劃分 65000 臺主機,如果用不完會對網(wǎng)絡(luò)地址造成極大浪費! 所以,我們需要通過修改子網(wǎng)掩碼來打破現(xiàn)在的這種網(wǎng)絡(luò)劃分結(jié)構(gòu),將原來的子網(wǎng)掩碼 255.255.0.0 修改為 255.255.255.0,如此一來,我們就擁有了 256 個不同的子網(wǎng),每個子網(wǎng)可以劃分 256 臺主機。 2.1 注意事項![]() 這里我們需要強調(diào)一下,同一子網(wǎng)中的設(shè)備必須位于同一 IP 網(wǎng)段中,否則它們將無法進行通信;若同一子網(wǎng)中的設(shè)備被路由器隔開,即便是同一 IP 網(wǎng)段,同樣無法進行通信。 2.2 小測試如果,我們擁有一個 B 類地址,172.16.0.0,子網(wǎng)掩碼為 255.255.0.0,我們使用子網(wǎng)劃分將子網(wǎng)掩碼設(shè)置為 255.255.240.0,請問:
如果你能夠很快得出答案,祝賀你,你已經(jīng)掌握了子網(wǎng)劃分的技巧,并能夠清晰的了解每個部分的含義。為了方便我們快速得知子網(wǎng)劃分的個數(shù),我們可以使用【CIDR記錄法】來進行記錄。 這里,我們拿 192.16.1.0 / 24 來舉例,這個 /24 的意思,就是打開 IP 八位位組的前 24 為,即1111 1111.1111 1111.1111 1111.0000 0000,其子網(wǎng)掩碼就是 255.255.255.0,因此 /24 = 255.255.255.0。 2.3 實戰(zhàn)練習了解了 CIDR 記錄法,我們來看一個小練習,參考下圖 問:為什么網(wǎng)段 A 中的設(shè)備無法通過路由器與網(wǎng)段 B 進行通信? ![]() 答:問題的重點在中間路由器所在的網(wǎng)段,通過 172.16.2.0/30 得知,八位位組的前30位都打開了,因此只留下 2 位允許劃分空間,根據(jù) 2 的 2 次方=4 可以確定該網(wǎng)段之劃分了 4 個 IP 地址 172.16.2.0~172.16.2.3。右側(cè)的路由器 IP 為 172.16.2.20,很明顯不在正確范圍內(nèi)。 原作者:
|
|