透過 MCP 連接 →

輸入計算

數學公式

廣告

結果

可用 IP 位址數
254
hosts in a /24 subnet
前綴長度 /24
主機位元數 8
位址總數 256

這是什麼

「可用 IP 位址數量計算器」能告訴你,在指定前綴長度(CIDR 表示法,例如 /24 或 /16)的 IPv4 子網路裡,實際上可以分配給主機的位址有多少個。無論是規劃子網路、設定 DHCP 位址範圍,還是評估某個網段的容量,這都是不可或缺的工具。

如何使用

輸入子網路前綴長度,也就是 CIDR 表示法中斜線後面的數字(0 到 32)。按下計算後,工具會回傳該區塊的位址總數、主機位元數,以及扣除網路位址與廣播位址後的可用位址數量。

公式解析

IPv4 位址共有 32 個位元。前綴長度 \(p\) 固定了網路部分,剩下 \(32 - p\) 個位元作為主機位元。因此位址總數為 \(2^{32 - p}\)。在標準子網路中,第一個位址保留作為網路識別碼,最後一個保留作為廣播位址,所以可用數量為:

$$\text{可用數} = 2^{\,32 - p} - 2$$

注意:/31 的點對點連線(RFC 3021)與 /32 的主機路由屬於特例,並不適用上述減 2 的計算方式。

Advertisement
32位元IPv4位址依前綴邊界劃分為網路部分和主機部分的示意圖,其中兩個主機位址標記為保留
前綴將32位元劃分為網路部分和主機部分;主機位元提供\(2^{32 - \text{前綴}}\)個位址,減去2個保留位址。

實際範例

以 /24 子網路為例:主機位元 = 32 − 24 = 8,總數 = 2^8 = 256,可用數 = 256 − 2 = 254 個位址。/16 子網路則可得 2^16 − 2 = 65,534 個可用主機位址。

$$\text{主機位元} = 32 - 24 = 8$$$$\text{總數} = 2^8 = 256$$$$\text{可用數} = 256 - 2 = 254$$$$2^{16} - 2 = 65{,}534$$

常見問題

為什麼要減 2?因為其中一個位址用來識別網路本身,另一個則是廣播位址,這兩個都不能分配給主機使用。

那 /31 子網路呢?RFC 3021 允許 /31 將兩個位址都用於點對點連線,因此可用數量為 2 個。

這適用於 IPv6 嗎?不適用——本工具僅適用於 IPv4。IPv6 使用 128 位元位址,主機保留的慣例也不相同。

最後更新: