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