團隊文章

了解 IPv4 位址結構與類別

透過一個 /24 實例,了解 IPv4 前綴、如何劃分成 /25 區塊,以及為何現代 CIDR 比猜測位址類別更有用。

目錄

一位微型技術人員在白色托盤內移動藍色隔板,將位址方塊分隔成大小不同的區間。

前綴決定位址區塊的大小。相較於舊有固定的位址類別,CIDR 能做出更細緻的劃分。

你正在設定辦公室網路,看到範例中的 192.0.2.0/24。有人稱它為「C 類」。究竟哪個部分才真正告訴你它的大小?如今,實用的答案是前綴長度:/24。舊有的類別名稱是歷史背景,不能代替閱讀實際設定。

以下位址來自專為文件範例保留的範圍。它們用來說明計算方法,並不是你應該部署的公用網路。

四個數字代表一個 32 位元位址

IPv4 將 32 個二進位數字寫成四個以點分隔的十進位數字。每組代表 8 個位元,範圍從 0 到 255。點只負責分隔各組,本身並不能告訴你網路前綴在哪裡結束。

前綴長度才提供了這條邊界。在 192.0.2.0/24 中,前 24 個位元固定,剩下 8 個用於區塊內的位址。8 個可變位元產生 256 種組合,從 192.0.2.0 到 192.0.2.255。對應的遮罩是 255.255.255.0。

前綴數字越小,區塊越大

這種表示法起初可能讓人覺得顛倒了。固定前綴越長,剩下的可變位元就越少。/25 含有 128 個位址,/24 含有 256 個,/22 則含有 1,024 個。

範例中的 /24 可以分成兩個邊界對齊的半區塊:192.0.2.0/25 與 192.0.2.128/25。每一半都有自己的前綴。這種劃分改變的是位址的分組方式,而不是單一 IPv4 位址的長度。

在傳統的廣播子網中,網路位址與廣播位址不會指派為一般主機位址,因此一個 /24 會剩下 254 個主機位址。不要將「減二」當成放諸四海皆準的規則:點對點鏈路可以使用 /31,兩個位址都用來識別端點。

A、B、C 類是什麼?

早期的類別式定址採用固定劃分。A 類使用 8 位元網路前綴,B 類使用 16 位元,C 類使用 24 位元。位址最前面的位元用來識別類別。這使得可用的區塊大小不夠細緻:組織所需的位址可能比某個區塊能提供的多,卻又遠少於下一級較大區塊所提供的數量。

歷史上的 D 類範圍用於多點傳播,也就是將流量送給一個群組。歷史上的 E 類範圍則是保留空間,並非另一批供企業主機使用的一般位址。IANA 位址空間登錄表記錄了特殊範圍及其狀態。

為何現代網路使用 CIDR

無類別域間路由(Classless Inter-Domain Routing,CIDR)會明確標示前綴,而不是從位址類別推斷固定大小。它讓規劃者能使用不同大小的區塊,也讓路由能彙總相容且邊界對齊的區塊。CIDR 規範說明了位址指派與彙總模型。

彙總並不代表可以將不相關的位址任意合併成一條更大的路由。區塊必須符合涵蓋它們的前綴,路由安排也必須真的能到達其中的目的地。光有一份整齊的試算表,並不能建立可運作的路徑。

更改網路之前,先問三個問題

  • 設定的前綴是什麼?請閱讀遮罩或前綴長度,不要從第一個數字猜測。
  • 哪些位址已指派、已保留,或仍在使用中?除了記錄,也要確認實際運作的網路。
  • 還有哪些項目依賴這個範圍?路由、防火牆規則、DNS 與遠端連線都可能需要留意。

位址管理入門說明了如何讓這些記錄持續發揮作用。前綴描述的是技術上的分組。它本身既不能識別法律上的所有人,也不會賦予註冊機構對使用該前綴的網路行使政治權力。

為何位址計算無法為更大的爭論定論

CIDR 更靈活地利用現有的 32 位元空間,並沒有讓它變成無限。但單憑數量有限這件事,同樣無法告訴營運者有哪些位址可用,或哪種投資值得做。

在 Note 45 中,盧恒質疑以位址稀缺作為機構行使裁量控制的正當理由。理解位址與前綴實際上做了什麼,有助於讀者檢視這項主張,而不把技術協調工作與支配所有依賴它的人的權力混為一談。