子網掩碼的計算與劃分詳解

2022-11-04 13:21:02 字數 6025 閱讀 5439

子網掩碼的計算32位的ip位址分為兩部分,即網路號

和主機號,分別把他們叫做ip位址的「網間網部分」和「本地部分」。子網編址技術將「本地部分」進一步劃分為「物理網路」部分和「主機」兩部分,其中「物理網路」部分用於標識同一ip網路位址下的不同物理網路,常稱為「掩碼位」、「子網掩碼號」,或者「子網掩碼id」,不同子網就是依據這個掩碼id來識別的。

按ip協議的子網標準規定,每乙個使用子網的網點都選擇乙個32位的位模式,若位模式中的某位置1,則對應ip位址中的某位為網路位址(包括網路部分和子網掩碼號)中的一位;若位模式中的某位置0,則對應ip位址中的某位為主機位址中的一位。

例如二進位制位模式:11111111111111111111111100000000中,前三個位元組全1,代表對應ip位址中最高的三個位元組為網路位址;後乙個位元組全0,代表對應ip位址中最後的乙個位元組為主機位址。為了使用的方便,常常使用「點分整數表示法」來表示乙個ip位址和子網掩碼,例如b類位址子網掩碼(11111111 11111111 11111111 00000000)為:

255.255.255.

0。ip協議關於子網掩碼的定義提供一定的靈活性,允許子網掩碼中的「0」和「1」位不連續。但是,這樣的子網掩碼給分配主機位址和理解尋徑表都帶來一定困難,並且,極少的路由器支援在子網中使用低序或無序的位,因此在實際應用中通常各網點採用連續方式的子網掩碼。像255.

255.255.64和255.

255.255.160等一類的子網掩碼不推薦使用,子網掩碼與ip位址結合使用,可以區分出乙個網路位址的網路

1號和主機號。例如:有乙個c類位址為:

192.9.200.

13,按其ip位址型別,它的預設子網掩碼為:255.255.

255.0,則它的網路號和主機號可按如下方法得到:

第1步,將ip位址192.9.200.13轉換為二進位制110000000000100111001000 00001101

第2步,將子網掩碼255.255.255.0轉換為二進位制111111111111111111111111 00000000

第3步,將以上兩個二進位制數邏輯進行與(and)運算,得出的結果即為網路部分。「11000000000010011100100000001101」與「11111111111111111111111100000000」進行「與」運算後得到「11000000000010011100100000000000」,即「192.9.

200.0」,這就是這個ip位址的網路號,或者稱「網路位址」。

第4步,將子網掩碼的二進位制值取反後,再與ip位址進行與(and)運算,得到的結果即為主機部分。如將「00000000 00000000 0000000011111111(子網掩碼的取值)反」與「11000000000010011100100000001101」進行與運算後得到「00000000000000000000000000001101」,即「0.0.

0.13」,這就是這個ip位址主機號(可簡化為「13」)。二、子網掩碼的劃分

如果要將乙個網路劃分成多個子網,如何確定這些子網的子網掩碼和ip位址中的網路號和主機號呢?本節就要向大家介紹。子網劃分的步驟如下:

第1步,將要劃分的子網數目轉換為2的m次方。如要分8個子網,

28=23。如果不是愉好是2的多少次方,則取大為原則,如要劃分為6個,則同樣要考慮23。

第2步,將上一步確定的冪m按高序占用主機位址m位後,轉換為十進位制。如m為3表示主機位中有3位被劃為「網路標識號」占用,因網路標識號應全為「1」,所以主機號對應的位元組段為「11100000」。轉換成十進位制後為224,這就最終確定的子網掩碼。

如果是c類網,則子網掩碼為255.255.255.

224;如果是b類網,則子網掩碼為255.255.224.

0;如果是a類網,則子網掩碼為255.224.0.

0。在這裡,子網個數與占用主機位址位數有如下等式成立:2m≥n。

其中,m表示占用主機位址的位數;n表示劃分的子網個數。根據這些原則,將乙個c類網路分成4個子網。

為了說明問題,現再舉例。若我們用的網路號為192.9.

200,則該c類網內的主機ip位址就是192.9.200.

1~192.9.200.

254,現將網路劃分為4個子網,按照以上步驟:

4=22,則表示要占用主機位址的2個高序位,即為11000000,轉換為十進位制為192。這樣就可確定該子網掩碼為:192.

9.200.192。

4個子網的ip位址的劃分是根據被網路號佔住的兩位排列進行的,這四個ip位址範圍分別為:

(1)第1個子網的ip位址是從「11000000000010011100100000000001」到「11000000 0000100111001000 00111110」,注意它們的最後8位中被網路號佔住的兩位都為「00」,因為主機號不能全為「0」和「1」,所以沒有***和11000000

300001001 11001000 00111111這兩個ip位址(下同)。注意實際上此時的主機號只有最後面的6位。對應的十進位制ip位址範圍為192.

9.200.1~192.

9.200.62。

而這個子網的子網掩碼(或網路位址)為11000000 00001001 11001000 00000000,為192.9.200.

0。(2)第2個子網的ip位址是從「11000000000010011100100001000001」到「11000000 00001001 11001000 01111110」,注意此時被網路號所佔住的2位主機號為「01」。對應的十進位制ip位址範圍為192.9.

200.65~192.9.

200.126。對應這個子網的子網掩碼(或網路位址)為11000000 00001001 11001000 01000000,為192.

9.200.64。

(3)第3個子網的ip位址是從「11000000000010011100100010000001」到「11000000 00001001 11001000 10111110」,注意此時被網路號所佔住的2位主機號為「10」。對應的十進位制ip位址範圍為192.9.

200.129~192.9.

200.190。對應這個子網的子網掩碼(或網路位址)為11000000 00001001 11001000 10000000,為192.

9.200.128。

(4)第4個子網的ip位址是從「11000000000010011100100011000001」到「11000000000010011100100011111110」,注意此時被網路號所佔住的2位主機號為「11」。對應的十進位制ip位址範圍為192.9.

200.193~192.9.

200.254。對應這個子網的子網掩碼(或網路位址)為11000000 00001001 11001000 11000000,為192.

9.200.192。

在此列出a、b、c三類網路子網數目與子網掩碼的轉換表,如表5.1所示,供參考。

表1子網劃分與子網掩碼對應表:a類網路劃分子網數與對應的

4子網掩碼

子網數目占用主機號位數子網掩碼子網中可容納的主機數

21255.128.0.

0838860642255.192.0.

0419430283255.224.0.

02097150164255.240.0.

01048574325255.258.0.

0524286646255.253.0.

02621421287255.254.0.

01310702568255.255.0.

065534b類網路劃分子網數與對應的子網掩碼

子網數目占用主機號位數子網掩碼納的主機數

21255.255.128.

03276642255.255.192.

01638283255.255.224.

08190164255.255.240.

04094325255.255.248.

02046646255.255.252.

010221287255.255.254.

05102568255.255.255.

0254

子網中可容5

c類網路劃分子網數與對應的子網掩碼

子網數目占用主機號位數子網掩碼子網中可容納的主機數

21255.255.255.

12812642255.255.255.

1926283255.255.255.

22430164255.255.255.

24014325255.255.255.

2486646255.255.255.

2522三、快速計算子網掩碼的方法

最後介紹三種快速計算機子網掩碼的方法。1.利用子網數來計算

在求子網掩碼之前必須先搞清楚要劃分的子網數目,以及每個子網內的所需主機數目。然後按以下基本步驟進行計算:第1步,將子網數目轉化為二進位制來表示;第2步,取得子網數二進位制的位數(n);

第3步,取得該ip位址類的子網掩碼,然後將其主機位址部分的的前n位置「1」,即得出該ip位址劃分子網的子網掩碼。

為了便於理解,現舉例說明如下:現假如要將一b類ip位址168.195.0.0劃分成27個子網,則它的子網掩碼的計算機方法如下(對應以上各基本步驟):

第1步,首先要劃分成27個子網,「27」的二進位制為「11011」;

6第2步,該子網數二進位制為五位數,即n = 5;

第3步,將該b類位址的子網掩碼255.255.0.

0的主機號前5位全部置「1」,即可得到255.255.248.

0,這就是劃分成27個子網的b類ip位址168.195.0.

0的子網掩碼。2.利用主機數來計算

利用主機數來計算子網掩碼的方法與上類似,基本步驟如下:第1步,將子網中需容納的主機數轉化為二進位制;

第2步,如果主機數小於或等於254(因為要去掉保留的兩個ip位址),則取得該主機的二進位制位數,為n,這裡肯定n=8,這就是說主機位址將佔據不止8位。

第3步,將255.255.255.255的主機位址位數全部置1,然後從後向前的將n位全部置為0,即為子網掩碼值。

舉例如下。如要將一b類ip位址為168.195.0.0的網路劃分成若干子網,要求每個子網內有主機數為700臺,則該子網掩碼的計算方法如下(也是對應以上各基本步驟):

第1步,首先將子網中要求容納的主機數「700」轉換成二進位制,得到1010111100。

第2步,計算出該二進位制的位數為10位,即n = 10

第3步,將255.255.255.

255從後向前的10位全部置「0」,得到的二進位制數為「11111111.11111111.11111100.

00000000」,轉換成十進位制後即為255.255.252.

0,這就是該要劃分成主機數為700的b類ip位址168.195.0.

0的子網掩碼。

73.子網id增量計算法其基本計算步驟如下:

第1步,將所需的子網數轉換為二進位制,如所需劃分的子網數為「4」,則轉換成成二進位制為00000100;

第2步,取子網數的二進位制中有效位數,即為向預設子網掩碼中加入的位數(既向主機id中借用的位數)。如前面的00000100,有效位為「100」,為3位;

第3步,決定子網掩碼。如ip位址為b類129.20.

0.0網路,則預設子網掩碼為:255.

255.0.0,借用主機id的3位以後變為:

255.255.224(11100000)0,即將所借的位全表示為1,用作子網掩碼。

第4步,將所借位的主機id的起始位段最右邊的「1」轉換為十進位制,即為每個子網id之間的增量,如前面的借位的主機id起始位段為「11100000」,最右邊的「1」,轉換成十進位制後為2 5=32。

第5步,產生的子網id數為:2m-2(m為向預設子網掩碼中加入的位數),如本例向子網掩碼中新增的位數為3,則可用子網id數為:23-2=6個;

第6步,將上面產生的子網id增量附在原網路id之後的第乙個位段,便形成第乙個子網網路id 129.20.32.0;

第7步,重複上步操作,在原子網id基礎上加上乙個子網id增量,依次類推,直到子網id中的最後位段為預設子網掩碼位用主機id位之後的最後乙個位段值,這樣就可得到所有的子網網路id。如預設子網掩碼位用主機id位之後的子網id為255.255.

224.0,其中的「224」為借用主機id後子網id的最後一位段值,所以當子網id通過以上

8增加增量的方法得到129.20.224.0時便終止,不要再新增了。9

子網掩碼的計算與劃分詳解

家庭網路 子網掩碼的計算與劃分詳解 一 子網掩碼的計算 tcp ip網間網技術產生於大型主流機環境中,它能發展到今天的規模是當初的設計者們始料未及的。網間網規模的迅速擴充套件對ip位址模式的威脅並不是它不能保證主機位址的唯一性,而是會帶來兩方面的負擔 第一,巨大的網路位址管理開銷 第二,閘道器尋徑急...

子網掩碼的計算與劃分詳解

一 子網掩碼的計算 tcp ip網間網技術產生於大型主流機環境中,它能發展到今天的規模是當初的設計者們始料未及的。網間網規模的迅速擴充套件對ip位址模式的威脅並不是它不能保證主機位址的唯一性,而是會帶來兩方面的負擔 第一,巨大的網路位址管理開銷 第二,閘道器尋徑急劇膨脹。其中第二點尤為突出,尋徑表的...

掌握IP位址知識子網掩碼與子網劃分

目錄 一 摘要 二 子網掩碼的概念及作用 三 為什麼需要使用子網掩碼 四 如何用子網掩碼得到網路 主機位址 五 子網掩碼的分類 六 子網編址技術 七 如何劃分子網及確定子網掩碼 八 相關判斷方法 一 摘要 近期在我的論壇中大家對子網掩碼以及子網劃分的討論比較多,因為前面也寫了關於ip位址的教程,為了...