“點分十進制”IP地址表現(xiàn)形式能夠幫助我們更好的使用網(wǎng)絡(luò),但網(wǎng)絡(luò)設(shè)備在對IP進行計算時使用的是二進制的操作方式。
以下是192這個數(shù)字,對應(yīng)的二進制算法,這里就不再贅述了,這是基本技能。
IPv4地址的空間從0.0.0.0 一直到 255.255.255.255,這么龐大的空間,如果不加以區(qū)分和規(guī)劃,勢必不便于統(tǒng)籌管理。因此我們對IPv4地址空間進行類別上的劃分,一共有五類:
地址的類別上的區(qū)分主要體現(xiàn)在第一個八位組上:
網(wǎng)絡(luò)掩碼為32bits,與IPv4地址的位數(shù)是一樣的
網(wǎng)絡(luò)掩碼在二進制的表示上是一堆連續(xù)的1、后面接連續(xù)的0
值為1的bit對應(yīng)IP地址中的網(wǎng)絡(luò)位;為0的bit對應(yīng)IP地址中的主機位,以此來輔助我們識別一個IP地址中的網(wǎng)絡(luò)與主機位,如下圖:
為了方便書寫,我們往往使用掩碼長度的方式來表示一個IP地址+掩碼:
默認情況下,A類IP地址,首個八位組為網(wǎng)絡(luò)位,其他位為主機位,因此A類地址的默認掩碼就是255.0.0.0,或者/8。B類IP地址,前兩個八位組為網(wǎng)絡(luò)位,后兩個八位組為主機位,因此B類地址的默認掩碼就是255.255.0.0或者/16。C類地址的前三個八位組為網(wǎng)絡(luò)位,后面一個八位組是主機位,因此C類地址的默認掩碼就是255.255.255.0,或者/24。從這里我們可以看出來,如果你申請到一個A類地址空間:123.0.0.0/8,那么這是一個相當龐大的地址空間,因為這個空間有2的24次方個IP地址。相對的,一個B類的IP網(wǎng)絡(luò)地址空間默認有2的16次方個IP地址,而C類地址則更少。
6.為什么要劃分子網(wǎng)
假設(shè)你有一個B類地址:172.16.0.0,由于B類地址的默認掩碼是255.255.0.0,這就意味著這個網(wǎng)絡(luò)內(nèi)有2的16次方個地址,而可分配給PC使用的IP地址就有2的16次方-2這么多個IP,為什么要減去2?因為廣播地址及網(wǎng)絡(luò)號是不能分配給PC使用的。
設(shè)想一下,如果你真有這么多臺PC,這么多個IP地址處于同一個網(wǎng)絡(luò)中、同一個網(wǎng)段中、同一個廣播域中,那么一旦網(wǎng)絡(luò)中發(fā)生廣播,影響可就大了。再者,實際的業(yè)務(wù)環(huán)境中,我們往往給一個業(yè)務(wù)單元,劃分一個網(wǎng)段,不同的業(yè)務(wù)單元不同的網(wǎng)段,那么如果你有10個業(yè)務(wù)單元,每個業(yè)務(wù)單元才百來號設(shè)備,一個業(yè)務(wù)單元就耗費一個B類地址,這就造成地址空間的浪費。
因此,我們提出子網(wǎng)劃分的概念,子網(wǎng)劃分事實上術(shù)語叫做:VLSM variable-length-subnet-mask,可變長子網(wǎng)掩碼,事實上是拿子網(wǎng)掩碼變戲法。在上圖中,我們有五個網(wǎng)段,需要五個IP地址段。而如果你只有一個B類地址(172.16.0.0/16)可用的情況,通過子網(wǎng)劃分,你可以將這個B類地址劃分成一個個小一點的子網(wǎng)。這樣一來,一個龐大的廣播域可以被分割成小的單元,另外IP地址的使用也更為科學更為合理。
現(xiàn)在假設(shè)我們有一個B類地址:172.16.0.0/16。默認情況下,這個B類地址的掩碼為255.255.0.0,前兩個八位組是網(wǎng)絡(luò)位,后兩個八位組是主機位。那么這個個單一的網(wǎng)絡(luò)中,有2的16次方個IP地址,非常龐大。
現(xiàn)在,我們將原有的16個位的網(wǎng)絡(luò)位向主機位去“借”一位,這樣一來網(wǎng)絡(luò)位就擴充到了17位,相對的主機位就變成了15位。那么借過來的這一位,就是子網(wǎng)位了。由于我們借了這一位,因此掩碼就從默認的255.255.0.0變成了255.255.128.0或者說從/16變成了/17。
于是我們從原來的只有172.16.0.0/16的一個大網(wǎng)段,變成現(xiàn)在擁有172.16.0.0/17及172.16..128.0/17這兩個小一點的網(wǎng)段。這就是子網(wǎng)劃分。
下面我們來看幾個例子:
現(xiàn)在我們有一個IP:192.168.1.0,這是一個C類地址,默認的掩碼是/24,現(xiàn)在我要對它做子網(wǎng)劃分,向主機位借一位作為子網(wǎng)位,也就是掩碼變成/25,那么我能拿到幾個子網(wǎng)?每個子網(wǎng)網(wǎng)絡(luò)號是多少?每個子網(wǎng)廣播號是多少?每個子網(wǎng)的可用IP是多少?
我們的步驟如下:
1) 判斷類別 找掩碼
首先這是一個C類地址,因此默認的掩碼長度為/24,你可以劃一條豎線幫助計算。線的左邊為網(wǎng)絡(luò)位,右邊為主機位。
2)變更掩碼 找子網(wǎng)
現(xiàn)在,我們在原有的/24掩碼基礎(chǔ)上,向主機位借一位,掩碼變成/25。那么借出來的這一位就是我們的子網(wǎng)位,這個子網(wǎng)位要么為0,要么為1,兩種可能性,這就創(chuàng)造了兩個子網(wǎng)(2的1次方),子網(wǎng)位為0時,我們拿到網(wǎng)絡(luò)號192.168.1.0/25,另一個子網(wǎng)是192.168.1.128/25。
3)得出子網(wǎng)號
上圖中就顯示了向主機位借一位之后,我們得到的兩個子網(wǎng):
192.168.1.0/25
192.168.1.128/25
其實很簡單,就是主機位全0,即可。
4)得出廣播號
上面分別列出了子網(wǎng)1 及 子網(wǎng)2的廣播號,其實很簡單,就是把各個子網(wǎng)的主機位全部置1即可。
因此子網(wǎng)192.168.1.0/25的廣播號為192.168.1.127;
子網(wǎng)192.168.1.128/25的廣播號為192.168.1.255;
5)得出主機段
經(jīng)過上面的計算,得出了子網(wǎng)1及子網(wǎng)2的網(wǎng)絡(luò)號和廣播號,那么每個子網(wǎng)可用的IP地址也就出來了,因為可用IP實際上就是該子網(wǎng)的網(wǎng)絡(luò)號與廣播號之間夾著的那些個IP。所以實際上我們對192.168.1.0這個C類地址,用了一個變長子網(wǎng):/25,也就是向主機位借1位后產(chǎn)生出了2個子網(wǎng),每個子網(wǎng)有126個可用IP地址。這里有個公式: