我計算主機網路遮罩數量的方法,例如:我想知道網路遮罩255.255.255.192(前綴26)的主機數量
255.255.255.192 11111111.11111111.11111111.11000000 26 128+64=192
192是最新八位元組的兩個「1」位元的128+64,主機的數量是最新八位元組的0位元(主機部分)的數量,所以000000是6,所以2^6-2是62 ,ipcalc確認就ok了
ipcalc 10.2.0.1/26
Address: 10.2.0.1 00001010.00000010.00000000.00 000001
Netmask: 255.255.255.192 = 26 11111111.11111111.11111111.11 000000
Wildcard: 0.0.0.63 00000000.00000000.00000000.00 111111
=>
Network: 10.2.0.0/26 00001010.00000010.00000000.00 000000
HostMin: 10.2.0.1 00001010.00000010.00000000.00 000001
HostMax: 10.2.0.62 00001010.00000010.00000000.00 111110
Broadcast: 10.2.0.63 00001010.00000010.00000000.00 111111
Hosts/Net: 62 Class A, Private Internet
我的問題是:如何知道/計算帶有前綴的子網數量..例如 26 或 27?我必須做網路部分(26“1”位元^2=)?
答案1
正如您從計算主機中已經知道的那樣,如果您有n
位,那麼您可以擁有這些位的不同組合。您可以使用2n
一模一樣子網路的計算也是如此——至少當所有子網路具有相同的大小時。
例如,如果您有一個/24網路(又稱“C 類”)並希望將其劃分為大小相等的網絡/29子網,您將使用29−24 = 5子網路位,因此你有2 (29−24) = 2 5 = 32子網。
無論網路規模如何,這都有效; 「類」的任何差異都是無關緊要的。再舉一個例子,如果你有一個/16網路並希望將其分為/27的,將會是2 (27−16) = 2 11 = 2048子網。
(如果您將網路劃分為 /32,您將以相同的方式獲得主機數量!)
答案2
我找到了計算子網路的解決方案,例如前綴為 29 的網路遮罩
255.255.255.248 11111111.11111111.11111111.11111000 29 128+64+32+16+8=248
我們有最新的八位元組
11111000
所以,主機數量為6
000=3=2^3-2=6
子網路數量為 32
11111=2^5=32
這種方式對於C類ip來說還可以,對於A類和B類來說有點困難,但是一個很好的幫助是這裡