子網掩碼(subnetmask),網掩網掩又叫網絡掩碼、碼什碼地址掩碼、作用子網絡遮罩,網掩網掩它是碼什碼一種用來指明一個IP地址的哪些位標識的是主機所在的子網,以及哪些位標識的作用是主機的位掩碼。子網掩碼不能單獨存在,網掩網掩它必須結合IP地址一起使用。碼什碼子網掩碼只有一個作用,作用就是網掩網掩將某個IP地址劃分成網絡地址和主機地址兩部分。
子網掩碼是碼什碼一個32位地址,用于屏蔽IP地址的作用一部分以區別網絡標識和主機標識,并說明該IP地址是網掩網掩在局域網上,還是碼什碼在遠程網上。
對于A類地址來說,作用默認的子網掩碼是255.0.0.0;對于B類地址來說默認的子網掩碼是255.255.0.0;對于C類地址來說默認的子網掩碼是255.255.255.0。利用子網掩碼可以把大的網絡劃分成子網,即VLSM(可變長子網掩碼),也可以把小的網絡歸并成大的網絡即超網。
互聯網是由許多小型網絡構成的,每個網絡上都有許多主機,這樣便構成了一個有層次的結構。IP地址在設計時就考慮到 地址分配的層次特點,將每個IP地址都分割成網絡號和主機號兩部分,以便于IP地址的尋址操作。IP地址的網絡號和主機號各是多少位呢?如果不指定,就不知道哪些位是網絡號、哪些是主機號,這就需要通過子網掩碼來實現。
子網掩碼的設定必須遵循一定的規則。與二進制IP地址相同,子網掩碼由1和0組成,且1和0分別連續。子網掩碼的長度也是32位,左邊是網絡位,用二進制數字“1”表示,1的數目等于網絡位的長度;右邊是主機位,用二進制數字“0”表示,0的數目等于主機位的長度。這樣做的目的是為了讓掩碼與ip地址做按位與運算時用0遮住原主機數,而不改變原網絡段數字,而且很容易通過0的位數確定子網的主機數。只有通過子網掩碼,才能表明一臺主機所在的子網與其他子網的關系,使網絡正常工作。
在求子網掩碼之前必須先搞清楚要劃分的子網數目,以及每個子網內的所需主機數目。
1)將子網數目轉化為二進制來表示
2)取得該二進制的位數,為 N
3)取得該IP地址的類子網掩碼,將其主機地址部分的前N位置1 即得出該IP地址劃分子網的子網掩碼。
如欲將B類IP地址168.195.0.0劃分成27個子網:
1)27=11011
2)該二進制為五位數,N = 5
3)將B類地址的子網掩碼255.255.0.0的主機地址前5位置1(B類地址的主機位包括后兩個字節,所以這里要把第三個字節的前5位置1),得到 255.255.248.0
即為劃分成27個子網的B類IP地址 168.195.0.0的子網掩碼(實際上是劃成了32-2=30個子網)。
使用子網是為了減少IP的浪費。因為隨著互聯網的發展,越來越多的網絡產生,有的網絡多則幾百臺,有的只有區區幾臺,這樣就浪費了很多IP地址,所以要劃分子網。使用子網可以提高網絡應用的效率。
通過IP 地址的二進制與子網掩碼 進行二進制與運算,確定某個設備的網絡地址和主機號,也就是說通過子網掩碼分辨一個網絡的網絡部分和主機部分。子網掩碼一旦設置,網絡地址和主機地址就固定了。子網一個最顯著的特征就是具有子網掩碼。與IP地址相同,子網掩碼的長度也是32位,也可以使用十進制的形式。例如,為二進制形式的子網掩碼:11111111.1111 1111.1111 1111.0000 0000,采用十進制的形式為:255.255.255.0。
通過計算機的子網掩碼判斷兩臺計算機是否屬于同一網段的方法是,將計算機十進制的IP地址和子網掩碼轉換為二進制的形式,然后進行二進制“與” 計算 ,如果得出的結果是相同的,那么這兩臺計算機就屬于同一網段。
子網掩碼通常有以下2種格式的表示方法:
1.通過與IP地址格式相同的點分十進制表示
如:255.0.0.0 或255.255.255.128
2.在IP地址后加上"/"符號以及1-32的數字,其中1-32的數字表示子網掩碼中網絡標識位的長度
如:192.168.1.1/24的子網掩碼也可以表示為255.255.255.0
子網掩碼一般為255.255.255.0
子網掩碼運算示例
I P 地址 192.168.0.1
子網掩碼 255.255.255.0
AND運算(AND運算法則:1 與1 = 1 ,1 與0 = 0 ,0 與1 = 0 ,0 與0 = 0 ,即當對應位均為1時結果為1,其余為0。)
轉化為二進制進行運算:
I P 地址 11000000.10101000.00000000.00000001
子網掩碼 11111111.11111111.11111111.00000000
AND運算
11000000.10101000.00000000.00000000
轉化為十進制后為:
192.168.0.0
子網掩碼一共分為兩類。一類是缺省 子網掩碼,一類是自定義子網掩碼。缺省子網掩碼即未劃分子網,對應的網絡號的位都置1,主機號都置0。
A類網絡缺省子網掩碼:255.0.0.0
B類網絡缺省子網掩碼:255.255.0.0
C類網絡缺省子網掩碼:255.255.255.0
自定義子網掩碼是將一個網絡劃分為幾個子網,需要每一段使用不同的網絡號或子網號,實際上我們可以認為是將主機號分為兩個部分:子網號、子網主機號。形式如下:
未做子網劃分的ip地址:網絡號+主機號
做子網劃分后的ip地址:網絡號+子網號+子網主機號
也就是說ip地址在劃分子網后,以前的主機號位置的一部分給了子網號,余下的是子網主機號。子網掩碼是32位二進制數,它的子網主機標識用部分為全“0”。利用子網掩碼可以判斷兩臺主機是否在同一子網中。若兩臺主機的IP地址分別與它們的子網掩碼相“與”后的結果相同,則說明這兩臺主機在同一子網中。
綜上,詳細介紹了子網掩碼,利用子網掩碼可以把大的網絡劃分成子網,即VLSM(可變長子網掩碼),也可以把小的網絡歸并成大的網絡即超網。