前段時間有群友在里面聊子網劃分,有幾個不懂的網工朋友,悄悄來私聊,表示想再補充一下這方面的知識。
子網劃分技術其實是計算機網絡基礎中的重點難點了。今天就給你來一篇,IP子網劃分VLSM詳解。
01
什么是IP地址
老規矩啊,先給你講一波理論基礎。
IP地址在網絡中用于標識一個節點(或者網絡設備的接口)。
IP網絡中數據包的尋址是基于IP地址來進行的,因此IP地址就像是現實生活中的地址。
IP協議定義了數據分組的格式,也定義了數據分組尋址的方式。目前我們在業務環境中常見的IP主要是兩個版本:
IPv4及IPv6。
而現階段網絡主體仍然是IPv4,但是在可預見的未來,會逐漸向IPv6過渡。今天只介紹IPv4哈。
一個IPv4地址有32比特位(二進制格式下)。
當然,我們不可能用二進制來書寫IPv4地址,那是低效的,我們通常采用十進制格式來書寫IP地址,但是計算機在進行IP地址的相關計算工作時,無疑是通過二進制的形式來進行。
因此掌握十進制到二進制的數制轉換是必備的技能。
IPv4地址通常采用“點分十進制”表示,以適應人類的讀寫習慣,例如192.168.1.1。
02
十進制與二進制的轉換
“點分十進制”IP地址表現形式能夠幫助我們更好的使用網絡,但網絡設備在對IP進行計算時使用的是二進制的操作方式。
例如:
以下是192這個數字,對應的二進制算法,這里就不再贅述了哈,這是基本技能。
03
IP地址的分類
IPv4地址的空間從0.0.0.0 一直到 255.255.255.255,這么龐大的空間,如果不加以區分和規劃,勢必不便于統籌管理。
因此我們對IPv4地址空間進行類別上的劃分,一共有五類:
地址的類別上的區分主要體現在第一個八位組(一個IP地址擁有4個八位組)上:
第一個八位組首位恒定為0,那么我們就得到一個區間:
1.0.0.0一直到127.255.255.255。
這是A類地址,其中127.0.0.0/8作為本地回環使用,例如你ping 127.0.0.1實際上ping的是本機。
所以如果看到一個IP,它的首個八位組掉落在1-126的區間內,那么這是一個A類地址。
第一個八位組的最高兩位恒定為10,就得到一個區間:
128.0.0.0-191.255.255.255,這是B類地址。
第一個八位組的最高三位恒定為110,就得到一個區間:
192.0.0.0 – 223.255.255.255,這是C類地址。
第一個八位組的最高四位恒定為1110,就得到一個區間:
224.0.0.0 – 239.255.255.255,這是D類地址,這個類別的地址專門用于組播。
剩下的是E類地址,這類地址保留作為研究使用。
04
網絡掩碼Netmask
一個IP地址包含兩部分:網絡部分以及主機部分。
網絡部分用于表示這個IP地址所處的“空間”,對于一臺路由器而言,當它在為數據包尋址時,通常只關心IP地址的網絡部分。
那么如何區分一個IP地址中的網絡與主機部分?
自然是網絡掩碼(Network Mask,簡稱netmask),用于和IP地址進行對應,從而標識出IP地址中的網絡與主機部分。
●?網絡掩碼為32bits,與IPv4地址的位數是一樣的。
●?網絡掩碼在二進制的表示上是一堆連續的1、后面接連續的0。
●?網絡掩碼值為1的bit對應IP地址中的網絡位;為0的bit對應IP地址中的主機位,以此來輔助我們識別一個IP地址中的網絡與主機位,如下圖:
為了方便書寫,我們往往使用掩碼長度的方式來表示一個IP地址+掩碼:
192.168.1.1 255.255.255.0 等同于 192.168.1.1/24。
因為255.255.255.0寫成二進制的話,從左往右數就是24個1,所以我們也說,它的掩碼長度為24。
默認情況下,A類IP地址,首個八位組為網絡位,其他位為主機位,因此A類地址的默認掩碼就是255.0.0.0,或者長度為/8。
B類IP地址前兩個八位組為網絡位,后兩個八位組為主機位,因此B類地址的默認掩碼就是255.255.0.0或者/16。
C類地址的前三個八位組為網絡位,后面一個八位組是主機位,因此C類地址的默認掩碼就是255.255.255.0,或者/24。
從這里我們可以看出來,如果你申請到一個A類地址空間:
123.0.0.0/8,那么這是一個相當龐大的地址空間,因為這個空間有2的24次方個IP地址。
相對的,一個B類的IP網絡地址空間默認有2的16次方個IP地址,而C類地址則更少。
05
IP地址類型
這里給你說說下面這三種類型。
●?網絡地址:
標識一個網絡,相當于一個“面”的概念。是一個IP地址中主機位全0的地址。例如192.168.10.0/24。
●?廣播地址:
用于向網絡中的所有主機發送數據的特殊地址。廣播地址即主機部分的各比特位全部為1的地址。例如192.168.10.255/24。
●?主機地址:
可分配給網絡中終端設備的地址。例如192.168.10.1/24至192.168.10.254/24。
例:192.168.1.0 這個C類網絡的網絡號、廣播號及可分配IP分別是?
06
為什么要劃分子網
假設你有一個B類地址:172.16.0.0,由于B類地址的默認掩碼是255.255.0.0,這就意味著這個網絡內有2的16次方個地址。
而可分配給PC使用的IP地址就有2的16次方-2這么多個IP,為什么要減去2?
因為廣播地址及網絡號是不能分配給PC使用的。
設想一下,如果你真有這么多臺PC,這么多個IP地址處于同一個網絡中、同一個網段中、同一個廣播域中,如上圖所示。
那么一旦網絡中發生廣播,影響可就大了。
再者,實際的業務環境中,我們往往給一個業務單元,劃分一個網段,不同的業務單元不同的網段。
那么如果你有10個業務單元,每個業務單元才百來號設備,一個業務單元就耗費一個B類地址,這就造成地址空間的浪費。
因此,我們提出子網劃分的概念,子網劃分的術語叫做VLSM(Variable Length Subnet Mask,可變長子網掩碼),事實上是拿子網掩碼變戲法。
在上圖中,我們有五個網段,需要五個IP地址段。
而如果你只有一個B類地址(172.16.0.0/16)可用,通過子網劃分,可以將這個B類地址劃分成一個個小一點的子網。
這樣一來,一個龐大的廣播域可以被分割成小的單元,另外IP地址的使用也更為科學更為合理。
07
如何劃分子網
現在假設我們有一個B類地址:172.16.0.0/16。
默認情況下,這個B類地址的掩碼為255.255.0.0,前兩個八位組是網絡位,后兩個八位組是主機位。
那么這個單一的網絡中,有2的16次方個IP地址,如上圖所示,非常龐大。
現在,將原有的16個位的網絡位向主機位去“借”一位,這樣一來網絡位就擴充到了17位,相對的主機位就變成了15位。
那么借過來的這一位,就是子網位了,如上圖所示。
由于我們借了這一位,因此掩碼就從默認的255.255.0.0變成了255.255.128.0或者說從/16變成了/17。
于是從原來的只有172.16.0.0/16的一個大網段,變成現在擁有172.16.0.0/17及172.16..128.0/17這兩個小一點的網段。
這就是子網劃分。
務必要關注網絡掩碼在這個過程中發揮的作用。
接下來給你說兩個子網劃分的案例。
08
子網劃分—案例1
現在有一個IP地址:192.168.1.0,這是一個C類地址,默認的掩碼是/24。
我要對它做子網劃分,向主機位借一位作為子網位,也就是掩碼變成/25,那么我能拿到幾個子網?
每個子網網絡號是多少?每個子網廣播號是多少?每個子網的可用IP是多少?
步驟如下:
?01??判斷類別,找默認掩碼?
首先這是一個C類地址,因此默認的掩碼長度為/24,你可以劃一條豎線幫助計算。線的左邊為網絡位,右邊為主機位,如上圖所示。
?02??變更掩碼,找子網?
在原有的/24掩碼基礎上,向主機位借一位,掩碼變成/25。
借出來的這一位就是子網位,如上圖所示,我們只要將虛線往右移動一格就行。
這個子網位要么為0,要么為1,兩種可能性。
這就創造了兩個子網(2的1次方),子網位為0時,得到的網絡號是192.168.1.0/25,子網位為1時,得到另一個子網的網絡號192.168.1.128/25。
如下圖所示:
?03??得出廣播號?
上面分別列出了子網1及子網2的廣播號,其實很簡單,就是把各個子網的主機位全部置1即可。
因此子網192.168.1.0/25的廣播號為192.168.1.127;子網192.168.1.128/25的廣播號為192.168.1.255;
?04??得出每個子網的可用IP地址數量?
經過上面的計算,得出了子網1及子網2的網絡號和廣播號,那么每個子網可用的IP地址也就出來了,因為可用IP實際上就是該子網的網絡號與廣播號之間夾著的那些個IP。
所以實際上我們對192.168.1.0這個C類地址,用了一個變長子網:/25,也就是向主機位借1位后產生出了2個子網,每個子網有126個可用IP地址。
這里有個公式:
09
子網劃分—案例2
假設現在你有一個IP地址:192.168.1.64/27,想把這個地址配置在一臺PC上,是否可行?
默認掩碼/24,新掩碼/27因此網絡位向主機位借了3位,產生了8個子網,每個子網可用IP地址為30;
而相應的每個子網塊的大小就為32,也就是2的5次方(5是剩余的主機位數)。
現在開始把每個子網羅列一下,結果發現192.168.1.64/27這個IP地址,其實是一個子網的網絡號。
既然是網絡號,當然是不能分配給PC用的了。
編輯:黃飛
評論
查看更多