IPv4 支持三種不同類型的尋址模式。單播尋址方式、廣播尋址方式和組播尋址方式。本章節我們來介紹這些尋址方式。
單播尋址方式
在這種模式下,數據只發送到一個目標主機。Destination Address 字段包含目標主機的 32 位 IP 地址。在這里,客戶端將數據發送到目標服務器
廣播尋址方式
在這種模式下,數據包被尋址到一個網段內的所有主機。Destination Address 字段包含一個特殊的廣播地址,即255.255.255.255。當主機在網絡上看到這個數據包時,它必然會對其進行處理。在這里,客戶端發送一個數據包,所有服務器都接受它
組播尋址方式
這種模式是前兩種模式的混合,即發送的數據包既不是去往單個主機,也不是去往網段上的所有主機。在這個數據包中,目標地址包含一個以 224.xxx 開頭的特殊地址,可以被多個主機接收。
在這里,服務器發送由多個服務器接收的數據包。每個網絡都有一個為代表網絡的網絡號保留的 IP 地址和一個為廣播地址保留的 IP 地址,它代表該網絡中的所有主機。
分層尋址方案
IPv4 使用分層尋址方案。一個 32 位長的 IP 地址被分成兩個或三個部分,如圖所示
單個 IP 地址可以包含有關網絡及其子網以及最終主機的信息。該方案使 IP 地址能夠分層,其中網絡可以有許多子網,而子網又可以有許多主機。
子網掩碼
32 位 IP 地址包含有關主機及其網絡的信息。對二者的區分是非常有必要的。為此,路由器使用子網掩碼,它與 IP 地址中網絡地址的長度是一樣的,也是 32 位長。二進制的 IP 地址與其子網掩碼進行 AND 運算,結果將產生網絡地址。例如,假設 IP 地址為 192.168.1.152,子網掩碼為 255.255.255.0,則運算過程如下圖所示
這樣子網掩碼有助於從 IP 地址中提取網絡 ID 和主機。現在可以確定 192.168.1.0 是網絡編號,而 192.168.1.152 是該網絡上的主機。
二進制表示
位置表示法是從十進制值轉換二進制值的最簡單形式。IP 地址是 32 位值,分為 4 個字節。一個字節組包含 8 位二進制位,每個位的值可以由位值“1”在八位組中的位置確定。
位置值由 2 的 (位置 - 1)次冪決定,即 1 在第 6 位的值是 2(6-1) 即 25 ,值為 32。八位字節是通過將位的位置值相加來確定的。11000000 的值是 128+64 = 192。
可以通過下表的一些例子加深一下理解
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 | 值 |
---|---|---|---|---|---|---|---|---|
0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 |
0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 2 |
0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 3 |
0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 4 |
0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 5 |
0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 6 |
0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 7 |
0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 8 |
0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 9 |
0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 10 |
0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 16 |
0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 32 |
0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 64 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 128 |
1 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 168 |
1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 192 |
1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 255 |
更多關於IPv4的內容可以參考 跡憶客 IPV4教程
擴展閱讀