認識 IP 網際網路協定

簡介

網際網路協定(Internet Protocol,簡稱 IP)是用於封包交換資料網路的協定。

IP 是在 TCP/IP 協定套組中網路層的主要協定,任務僅僅是根據來源主機和目的主機的位址來傳送資料。為此目的,IP 定義了定址方法和資料報的封裝結構。第一個架構的主要版本為 IPv4,目前仍然是廣泛使用的網際網路協定,而世界各地正在積極部署 IPv6。

IP 位址

IP 位址的全名是「網際網路協定位址」(Internet Protocol Address)。這是一組數字,用來識別連接到網路的設備。IP 位址是由 32 位元的二進位數組成,例如 10101100 00000000 00000000 00000001。但這樣的數字不易於理解。為了方便記憶,通常會將 IP 位址表示為十進位數,中間以小數點隔開,例如 172.0.0.1

公用 IP 位址是由網際網路服務提供者(ISP)所分配的,是路由器用於與廣域網路通訊的位址。

家庭網路上的每個設備(包含筆記型電腦、智慧電視或手機)都擁有由路由器分配的唯一私人 IP 位址。私人 IP 位址僅在區域網路中運作。相同區域網路(LAN)上的兩個設備不能使用相同的私人 IP 位址。

之所以需要私人 IP 位址,是因為人們使用的設備數量無法分配到足够的 IP 位址。在 1980 年代,當 IPv4 協定建立時,引入了 32 位元數字 IP 位址。相當於大約 43 億個唯一的 IP 位址。不過,專家很快就發現,人們需要更多 IP 位址。

採用私人 IP 位址和網路位址轉換(NAT)解決了這個問題。NAT 位於路由器上,將流量從廣域網路重新導向到位於相同網路上的所有設備。路由器也會為這些設備分配唯一的私人 IP 位址。這些設備無法透過網際網路進行路由,因此全球許多設備可以擁有相同的私人 IP 而不會發生衝突。

子網路遮罩

子網路遮罩(subnet mask)可用規劃子網路,將 IP 分成不同網段,可以用來有效管理和規劃區域網路。

IP 位址由網路元件和主機元件組成,例如以 192.168.123.132 為例。前三個八位元組(192.168.123.)代表網路,最後一個八位元組定義網路上的設備。

IP 位址由 32 個二進位位元(4x8)組成,但由於攏長且難以閱讀,通常使用十進位小數點系統來表示。

`192.168.123.132` = `11000000.10101000.01111011.10000100`

子網路遮罩反映 IP 位址中的網路部分。它可能看起來像這樣:

`255.255.255.0` = `11111111.11111111.11111111.00000000`

切割與計算

以下子網路遮罩有 8 個連續的 1,用 /8 表示,有 16,777,216 個 IP 可使用。

`255.0.0.0` = `11111111.00000000.00000000.00000000`

以下子網路遮罩有 16 個連續的 1,用 /16 表示,有 65,536 個 IP 可使用。

`255.255.0.0` = `11111111.11111111.00000000.00000000`

以下子網路遮罩有 24 個連續的 1,用 /24 表示,有 256 個 IP 可使用。

`255.255.255.0` = `11111111.11111111.11111111.00000000`

以下子網路遮罩有 25 個連續的 1,用 /25 表示,有 128 個 IP 可使用。

`255.255.255.128` = `11111111.11111111.11111111.10000000`

同屬一個子網路的判斷

判斷 IP 位置是否同屬一個子網路時,先轉換成二進制,再使用 AND 運算方法。

位址一:192.168.1.1

    11000000 10101000 00000001 00000001 (192.168.1.1)
AND 11111111 11111111 11111111 00000000 (255.255.255.0)
  = 11000000 10101000 00000001 00000000 (192.168.1.0)

位址二:192.168.1.2

    11000000 10101000 00000001 00000010 (192.168.1.2)
AND 11111111 11111111 11111111 00000000 (255.255.255.0)
  = 11000000 10101000 00000001 00000000 (192.168.1.0)

位址三:192.168.2.1

    11000000 10101000 00000010 00000001 (192.168.2.1)
AND 11111111 11111111 11111111 00000000 (255.255.255.0)
  = 11000000 10101000 00000001 00000000 (192.168.2.0)

得到的結果為,前兩個 IP 位置屬於同一個子網路,而第三個則屬於其它子網路。

類別

IP 位址分為三類:A、B 和 C,也存在 D 和 E,但最終不會使用 D 和 E。每個類別都有不同的預設子網路遮罩。

A 類位址

A 類網路使用 255.0.0.0 的子網路遮罩,並將 0-127 作為其第一個八位元組。它允許 126 個網路和每個網路約 1700 萬台主機。

B 類位址

B 類位址使用 255.255.0.0 的子網路遮罩,並將 128-191 作為其第一個八位元組。它被中大型網路使用。B 類位址允許大約 16000 個網路和每個網路 65000 台主機。

C 類位址

C 類位址用於區域網路(LAN),允許 200 萬個網路,每個網路有 254 台主機。C 類位址使用 255.255.255.0 的子網路遮罩,第一個八位元組為 192-223。

D 類位址

D 類保留用於(為多個用戶傳輸串流媒體和其他資料)。它的範圍從 224 到 239,並且沒有子網路遮罩,因為不會針對特定主機進行多播。

E 類位址

E 類的範圍為 240 到 255,並且沒有子網路遮罩。用於實驗和研究目的。

參考資料