有關 NetMask 的筆記

以 140.115.64.0/22 為例

22 表示前 22 bits 為 1,換算成十進位為 255.255.252.0

1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0

Masking 的演算法為:待處理數值先與遮罩作 AND 運算,得出 network id。接著再將 mask 作反相(NOT)運算,與欲遮罩數值作 AND 運算,得出的數值為 host id。

處理 140.115.65.1 的程序

1
0
0
0
1
1
0
0
0
1
1
1
0
0
1
1
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
&
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
=
1
0
0
0
1
1
0
0
0
1
1
1
0
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0

network-id = 140.115.64.0

 

1
0
0
0
1
1
0
0
0
1
1
1
0
0
1
1
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
&
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
=
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1

host-id = 0.0.1.1

特殊的 host id

boradcast address: 每個位元都是1,在本例中為 140.115.67.255,若為中央大學一般設定 140.115.0.0/24,則 broadcast 位置為 140.115.255.255

noework address: 每個位元都是 0,在本例中為 140.115.64.0,若為中央大學一般設定 140.115.0.0/24,則 network address 為 140.115.0.0

※除了這兩個 address 以外,其餘的位置都是可以用的。包括 140.115.65.255 140.115.0.1 這種位置都是合法的。