1. 程式人生 > >如何計算出子網掩碼(兩種情況)

如何計算出子網掩碼(兩種情況)

子網掩碼計算方法有兩種:

方法一:利用子網數來計算:
  1.首先,將子網數目從十進位制數轉化為二進位制數;

2.接著,統計得到的二進位制數的位數,設為N;

3.最後,先求出此IP地址對應的地址類別的子網掩碼。再將求出的子網掩碼的主機地址部分(也就是“主機號”)的前N位全部置1,這樣即可得出該IP地址劃分子網的子網掩碼。

例如:需將B類IP地址167.194.0.0劃分成28個子網:

1.(28)10=(11100)2;

2.此二進位制的位數是5,則N=5;

3.此IP地址為B類地址,而B類地址的子網掩碼是255.255.0.0,且B類地址的主機地址是後2位(即0-255.1-254)。於是將子網掩碼255.255.0.0中的主機地址前5位全部置1,就可得到255.255.248.0,而這組數值就是劃分成28個子網的B類IP地址 167.194.0.0的子網掩碼。

方法二:利用主機數來計算。
  1.首先,將主機數目從十進位制數轉化為二進位制數;

2.接著,如果主機數小於或等於254(注意:應去掉保留的兩個IP地址),則統計由“1”中得到的二進位制數的位數,設為N;如果主機數大於254,則 N>8,也就是說主機地址將超過8位;

3.最後,使用255.255.255.255將此類IP地址的主機地址位數全部置為1,然後按照“從後向前”的順序將N位全部置為0,所得到的數值即為所求的子網掩碼值。

例如:需將B類IP地址167.194.0.0劃分成若干個子網,每個子網內有主機500臺:
  1.(500)10=(111110100)2;

2.此二進位制的位數是9,則N=9;

3.將該B類地址的子網掩碼255. 255.0.0的主機地址全部置 1,得到255.255.255.255。然後再從後向前將後9位置0,可得:11111111. 11111111.11111110.00000000即255.255.254.0。這組數值就是劃分成主機為500臺的B類IP地址167.194.0.0的子網掩碼。