IP地址分為五類
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
一、子網掩碼的含義和根據子網掩碼划分子網
子網掩碼是用來划分子網的。
例如,一個A類網絡可以容納16777214台主機。但是在實際運用中,不可能把一個A類網絡只用於一個子網,因為那樣管理起來很不方便,所以需要根據實際需求把它划分為若干個較小的子網。
一個B類網絡可以容納65534台主機,往往也是需要划分子網的。即便一個小型企業內部,為了部門之間的職能的需要,配置那些電腦可以互相訪問,哪些不能互相訪問,就需要通過划分子網的方法來實現。
只要把IP地址的位數、網絡位數、主機位數、子網掩碼的位數這幾個概念搞清楚,就覺得很簡單了。
IP地址位數=網絡位數+主機位數=32位。子網掩碼的位數就是網絡位數。
A類網絡的網絡位數是8位,子網掩碼就是11111111.00000000.00000000.00000000,換算成二進制表示為255.0.0.0。
B類網絡的網絡位數是16位,子網掩碼就是11111111.11111111.00000000.00000000,換算成十進制表示為255.255.0.0。
C類網絡的網絡位數是24位,子網掩碼就是11111111.11111111.11111111.00000000,換算成十進制表示為255.255.255.0。
A類網絡加長子網掩碼到16位就把一個A類網絡划分為256個B類網絡同樣大小的網絡,再加長到24位就又把每個B類大小的子網划分為256個C類網絡大小的子網。就是這個道理。一個大的網絡,通過把子網掩碼加長,使網絡位多了,也就是網絡數目多了,子網就多了。
當然你也可以不划分為256個子網,而划分為128個,64個,32個,16個,8個,4個,2個。
一個B類網絡的默認子網掩碼為255.255.0.0,你如果想把它划分為2個子網,網絡位數就成立17位,也就是說子網掩碼就變成了255.255.128.0;想划分為16個子網,因為16是2的4次方,所以網絡位數加4變成了20位,也就是說子網掩碼加長,成了20位,就是255.255.240.0。依此類推。
一個C類網絡的默認子網掩碼為24位的,那么主機位=32-24=8位,2的8次方等於256,所以一個C類網絡的IP地址數量(包括網絡地址和廣播地址)為256個。
但是你仍然可以通過加長子網掩碼的手段,把一個C類子網划分為更多的子網。划分的子網數必定是2的n次方個,每個子網的IP數量必定是2的(8- n)次方個。
子網掩碼加長1位,划分2個子網;加長2位,划分4個子網,加長6位,划分2的6次方個,也就是64個子網。
子網掩碼的1的個數表示網絡位的個數。
記住下面的公式,遇到再復雜的子網划分問題也難不倒你了。
IP地址位數=32
網絡位+主機位=32
子網掩碼加長n位,則在當前子網基礎上划分為2的n次方個子網。每個子網的IP地址數量=2^(32-划分前子網掩碼位數-n)
二、如何根據子網划分的目標計算子網掩碼
簡單來說,子網掩碼就是網絡地址的位數。
一個IP地址一共有32位,其中靠前的某些位表示網絡地址,后面的某些位表示主機位。
網絡位數+主機位數=IP地址位數=32
知道了這個道理,計算子網掩碼的方法就是:已知子網內IP數的多少,求出主機位的位數,用32減去主機位數就等於網絡位數,也就是子網掩碼。
舉最簡單的例子。一個C類網絡,包括256個主機位置,256是2 的8次方,所以主機位是8,那么網絡位就是32-8=24,也就是說子網掩碼是24位,用二進制表示就是11111111.11111111.11111111.00000000,換算成十進制就是255.255.255.0
再比如一個C類網絡划分的子網,每個網絡主機IP數是32, 而32是2的5次方,所以主機位是5,那么網絡位就是32-5=27,也就是說子網掩碼是27位,用二進制表示就是11111111.11111111.11111111.11100000,換算成十進制就是255.255.255.224
再比如一個B類網絡划分的子網,每個網絡主機IP數是1024, 而1024是2的10次方,所以主機位是10,那么網絡位就是32-10=22,也就是說子網掩碼是22位,用二進制表示就是11111111.11111111.11111100.00000000,換算成十進制就是255.255.252.0
子網划分是通過改變子網掩碼的位數來實現的。比如一個C類IP地址,默認子網掩碼是24位的,二進制表示是11111111.11111111.11111111.0000000,換算成10進制的就是255.255.255.0。
如果是這樣的子網掩碼,后面的8位都可以用來做為主機的位置,2 的8次方等於256,一共有256個IP位置,因為有2個不能用,所以可用的主機位置為254個。
但是你要把這樣一個地址划分成2個子網,就要從主機位里拿出一位來作為網絡地址,網絡地址就成了25位了。相應地主機位就成了7位了,2 的7次方等於128,一共有126個地址可用。
這是從正向來說的,就是已知要划分的子網數,求每個子網的主機數。但是在實際工作中往往是先知道每個子網的主機數,讓你划分子網。其實也很簡單。
首先算一下主機數更接近於2 的幾次方,那么主機位數就是幾位。32減去主機位就是網絡位。
舉例說明。假如給你一個C類IP地址192.168.0.0。假如你想划分2個子網,一個里面有100台電腦,另一個有50台電腦。
100大於2的6次方,小於2的7次方,所以主機位數取7位。那么網絡位數就是32-7=25位。25位的子網掩碼11111111.11111111.11111111.10000000 換算成10進制的就是
255. 255. 255. 128,這就是第一個子網的子網掩碼,網絡號為192.168.0.0/25,網絡地址192.168.0.0,主機地址192.168.0.1~192.168.0.126,廣播地址192.168.0.127
50大於2的5次方,小於2的6次方,所以主機位數取6位。那么網絡位數就是32-6=26位。26位的子網掩碼11111111.11111111.11111111.11000000 換算成10進制的就是
255. 255. 255. 192,這就是第二個子網的子網掩碼,網絡號為192.168.0.128/26,網絡地址192.168.0.128,主機地址192.168.0.129~192.168.0.190,廣播地址192.168.0.191