首先,不要管這個IP是A類還是B類還是C類,IP是哪一類對于解題是沒有任何意義的,因為在很多題中B類掩碼和A類或是C類網絡一起出現,不要把這認為是一個錯誤,很多時候都是這樣出題的。
其次,應該掌握以下一些知識:
一、明確“子網”的函義:
子網就是把一個大網劃分為幾個小網,每個小網的IP地址數目都是一樣多的。這個小網就叫做這個大網的子網。大網可以是A類大網(A類網絡),也可以是B類大網,還可能是C類大網。
⑴、二進制數轉為十進制
(這里順便說一下二進制數轉為十進制的問題:
在不牽涉到IP地址時的二進制到十進制的轉換,采用的是“低次方相加”的方式,但是牽涉到IP地址時(算廣播地址時除外,算廣播地址時還是采用“低次方相加”)的二進制到十進制的轉換就不能采用這種方式了,而是直接用2的N次方的方法來轉換:
比方說在不牽涉到IP地址的計算時,將二進制的111轉換為十進制,采用的方法是(2的2次方+2的1次方+2的0次方,即4+2+1),得到的結果是十進制的7。但是在計算IP地址時的的二進制到十進制的轉換就不能采用這種方式了,二進制的111轉換為十進制時,看到有幾個“1”,就表示為2的幾次方,這里有三個“1”,就是2的3次方,即在計算IP地址時,二進制的111轉換為十進制就是2的3次方,2的3次方的結果是8。)
⑵、網絡的總個數和可用個數
A類網絡的個數有2的7次方個,即128個。根據網絡規范的規定,應該再去除128個中的第一個和最后一個,那么可用的A類網絡的個數是126個。
B類網絡的個數有2的14次方個,即16384個。根據網絡規范的規定,應該再去除16384個中的第一個和最后一個,那么可用的B類網絡的個數是16382個。
C類網絡的個數有2的21次方個,即2097152個。根據網絡規范的規定,應該再去除16384個中的第一個和最后一個,那么可用的C類網絡的個數是2097150個。
⑶、網絡的總IP數和可用IP地址數
每個A類大網(A類網絡)中容納2的24次方個IP地址,即16777216個IP地址;每個B類大網中容納著2的16次方個IP地址,即65536個IP地址;每個C類大網中容納著2的8次方個IP地址,即256個IP地址。可用的IP地址數是在總IP地址數的基礎上減2得到。
如果把一個B類大網劃分為32個小網,那么每個小網的IP地址數目就是65536/32=2048;如果把C類大網劃分為32個小網,那么每個小網的IP地址數目就是256/32=8。
二、明確“掩碼”的函義:
掩碼的作用就是用來告訴電腦把“大網”劃分為多少個“小網”! 好多書上說,掩碼是用來確定IP地址所在的網絡號,用來判斷另一個IP是不是與當前IP在同一個子網中。這也對,但是對于我們做題來說,意義不大。我們要明確:掩碼的作用就是用來告訴電腦把“大網”劃分為多少個“小網”! 掩碼是用來確定子網數目的依據!
三、明確十進制數與8位二進制數的轉換
做這類題要能夠在心中將255以內的十進制數轉換為對應的二進制數??梢詤⒖歼@個公式表(第一行是二進制,第二行是十進制):
1 1 1 1 1 1 1 1
128 64 32 16 8 4 2 1
可以看到:
第一行左起第一個二進制1對應十進制的128
第一行左起第二個1對應十進制的64
第一行左起第三個1對應十進制的32
第一行左起第四個1對應十進制的16
第一行左起第五個1對應十進制的8
第一行左起第六個1對應十進制的4
第一行左起第七個1對應十進制的2
第一行左起第八個1對應十進制的1
上面這些關系要牢記,這是進制轉換的基礎!
比方說將十進制的133轉為二進制,可以這樣想:因為133和128比較近,又由于公式表中左起第一個二進制1表示128,所以可以馬上將待轉換成8位二進制的最左邊的一位確定下來,定為1。再接下來,看到133和128只相差5,而5是4與1的和,而4與1分別對應公式表中的左起第6和第8位,所以十進制的133轉換為8位二進制表示就是10000101,對應如下:
1 0 0 0 0 1 0 1 (二進制表示的133)
128 0 0 0 0 4 0 1 (十進制表示的133)
其它255以內的十進制數轉換為8位二進制數的方法依此類推。
四、牢記各類網絡的默認掩碼
A類網絡的默認掩碼是255.0.0.0,換算成二進制就是 11111111.00000000.00000000.00000000;默認掩碼意味著沒有將A類大網(A類網絡)再劃分為若干個小網。掩碼中的1表示網絡號,24個0表示在網絡號確定的情況下(用二進制表示的IP地址的左邊8位固定不變),用24位二進制數來表示IP地址的主機號部分。(IP地址是由網絡號+主機號兩部分構成)
B類網絡的默認掩碼是255.255.0.0,換算成二進制就是 11111111.11111111.00000000.00000000;默認掩碼意味著沒有將B類大網再劃分為若干個小網。16個0表示在網絡號確定的情況下(用二進制表示的IP地址的左邊16位固定不變)可以用16位二進制數來表示IP地址的主機號部分。(可以把B類默認掩碼理解為是將A類大網(A類網絡)劃分為2的8次方(即256)個小網)
C類網絡的默認掩碼是255.255.255.0,換算成二進制就是 11111111.11111111.11111111.00000000;默認掩碼意味著沒有將C類大網再劃分為若干個小網。這里的8個0表示在網絡號確定的情況下(用二進制表示的IP地址的左邊24位固定不變),可以用8位二進制數來表示IP地址的主機部分。(可以把C類默認掩碼理解為是將A類大網(A類網絡)劃分為2的16次方(即65536)個小網,是將B類大網劃分為2的8次方(即256)個小網)
五、關于正確有效的掩碼:
正確有效的掩碼應該滿足一定的條件,即把十進制掩碼換算成二進制后,掩碼的左邊部分一定要是全為1且中間不能有0出現。比方說將255.255.248.0
轉為二進制是 11111111.11111111.11111000.00000000,可以看到左邊都是1,在1的中間沒有0出現(0都在1的右邊),這樣就是一個有效的掩碼。我們再來看254.255.248.0,轉成二進制是 11111110.11111111.11111000.00000000,這不是一個正確有效的掩碼,因為在1中間有一個0的存在。再來看255.255.249.0,轉為二進制是11111111.11111111.11111001.00000000,這也不是一個正確有效的掩碼,因為在1中間也有0的存在。
六、關于子網掩碼的另類表示法:
有些題目中不是出現如255.255.248.0這樣的子網掩碼,而是出現 IP地址/數字 這樣的形式,這里的/數字就是子網掩碼的另類表示法。在做題時,我們要正確理解這種另類表示法。我們將255.255.248.0轉為二進制的形式是 11111111.11111111.11111000.00000000,可以看到左邊是有21個1,所以我們可以將255.255.248.0這個掩碼表示為/21。反過來,當我們看到/21時,我們就把32位二進制的左邊填上21個1,將這個32位二進制數每8位做為一節用句點隔開,再轉換為十進制,就是255.255.248.0了。
七、網絡中有兩個IP地址不可用:
不管是A類還是B類還是C類網絡,在不劃分子網的情況下,有兩個IP地址不可用:網絡號和廣播地址。比如在一個沒有劃分子網的C類大網中用202.203.34.0來表示網絡號,用202.203.34.255來表示廣播地址,因為C類大網的IP地址有256個,現在減去這兩個IP地址,那么可用的IP地址就只剩下256-2=254個了。如果題目問:把一個C類大網劃分為4個子網,會增加多少個不可用的IP地址?
可以這樣想:在C類大網不劃分子網時,有兩個IP地址不可用;現在將C類大網劃分為4個子網,那么每個子網中都有2個IP地址不可用,所以4個子網中就有8個IP地址不可用,用8個IP地址減去沒劃分子網時的那兩個不可用的IP地址,得到結果為6個。所以在將C類大網劃分為4個子網后,將會多出6個不可用的IP地址。
八、根據掩碼來確定子網的數目
首先看題中給出的掩碼是屬于哪個默認掩碼的“范圍”內,這樣我們就可以知道是對A類還是B類還是C類大網來劃分子網。比方說202.117.12.36/30,我們先把/30這種另類的掩碼表示法轉換為我們習慣的表示法: 11111111.11111111.11111111.11111100,轉為十進制是255.255.255.252。
我們可以看到,這個掩碼的左邊三節與C類默認掩碼相同,只有第四節與C類默認掩碼不同,所以我們認為255.255.255.252這個掩碼是在C類默認掩碼的范圍之內的,意味著我們將對C類網絡進行子網劃分。因為C類網絡的默認掩碼是255.255.255.0,將C類默認掩碼轉換為二進制是11111111.11111111.11111111.00000000,這里的8個0表示可以用8位二進制數來表示IP地址,也就是說C類大網中可有2的8次方個IP地址,也就是256個IP地址。這道題中的掩碼的最后一節是252,轉換為二進制是11111100,因為1表示網絡號,所以111111就表示將C類大網劃分為(111111)2進制個子網。將111111轉換為十進制是64,所以就表示將C類大網劃分為64個子網,每個子網的IP地址數目是256/64=4,去除子網中的第一個表示子網號的IP地址和最后一個表示廣播地址的IP地址,子網中的可分配的IP地址數目就是子網中的總的IP地址數目再減去2,也就是4-2=2個。
九、綜合實例:
已知172.31.128.255/18,試計算:
1、子網數目,
2、網絡號,
3、主機號,
4、廣播地址,
5、可分配IP的起止范圍
解:
1、算子網數目
首先將/18換成為我們習慣的表示法:
11111111.11111111.11000000.000000轉為十進制就是255.255.192.0,可以看到這個掩碼的左邊兩節和B類默認掩碼是一致的,所以這個掩碼是在B類默認掩碼的范圍內,意味著我們將對B類大網進行子網劃分。B類掩碼默類是用16位(16個0)來表示可分配的IP地址,本題中的掩碼在B類默認掩碼的基礎上多出了兩個表示網絡號的1,這就是說是將B類大網劃分為(11)2進制個子網,將(11)2進制轉換為十進制就是4,所以本題中是將B類大網劃分為4個子網。
2、算網絡號
用公式:將IP地址的二進制和子網掩碼的二進制進行“與”(and)運算,得到的結果就是網絡號。“與運算”的規則是1和1得1,0和1得0,1和0得0。
172.31.128.255
轉為二進制是10101100.00011111.10000000.11111111,
掩碼是:11111111.11111111.11000000.00000000
所以:
10101100.00011111.10000000.11111111
11111111.11111111.11000000.00000000
10101100.00011111.10000000.00000000
將10101100.00011111.10000000.00000000
轉換為十進制就是172.31.128.0,所以網絡號是172.31.128.0
3、算主機號
也用公式:用IP地址的二進制和(子網掩碼的二進制的反碼)進行“與”運算,得到的結果就是主機號。反碼就是將原本是0的變為1,
原本是1的變為0。
由于掩碼是11111111.11111111.11000000.00000000
所以其反碼表示為00000000.00000000.00111111.11111111,再將IP地址的二進制和掩碼的反碼表示法進行“與”運算:
10101100.00011111.10000000.11111111
00000000.00000000.00111111.11111111
00000000.00000000.00000000.11111111
將00000000.00000000.00000000.11111111
轉換為十進制是0.0.0.255,我們將左邊的0去掉,只留右邊的數字,所以我們說這個IP的主機號是255。主機號是表示網絡號再加上255就是這個IP地址了。
4、算廣播地址
也用公式:在得到網絡號的基礎上,將網絡號右邊的表示IP地址的主機部分的二進制位全部填上1,再將得到的二進制數轉換為十進制數就可以得到廣播地址。因為本題中子網掩碼是11111111.11111111.11000000.00000000,網絡號占了18位,所以本題中表示IP地址的主機部分的二進制位是14位,我們將網絡號172.31.128.0,轉換為二進制是10101100.00011111.10000000.00000000,然后從右邊數起,將14個0全部替換為1,即:10101100.00011111.10111111.11111111,這就是這個子網的廣播地址的二進制表示法。將這個二進制廣播地址轉換為十進制就是172.31.191.255
5、算可用IP地址范圍
因為網絡號是172.31.128.0,廣播地址是172.31.191.255,所以子網中可用的IP地址范圍就是從網絡號+1 到廣播地址-1,所以子網中的可用IP地址范圍就是從172.31.128.1-172.31.191.254。
-
IP
+關注
關注
5文章
1708瀏覽量
149554 -
子網掩碼
+關注
關注
2文章
41瀏覽量
11027
發布評論請先 登錄
相關推薦
評論