
1 引 言
IP地址的到來為我們描繪了一個廣闊的景象,但同時也給我們帶來了一系列的問題:首先我們如何解決某網絡上的主機與另一個不同網絡上的主機進行通信,其次如果全球每人均有電腦且都分配一個至多個IP地址,那么我們該如何解決IP地址的數量問題。
2 IP尋址解決主機間通信問題
主機與主機之間通信,每個數據包都被指定了發送者和接收者的IP地址,每個接收了數據包的路由器都是基于數據包的目的IP地址來決定路由的。
發送者的IP地址我們一般稱為源IP,而接收者的IP地址一般稱為目的IP,我們可以通過源和目的確定通信的路徑。對應于整個互聯網而言,IP地址數量驚人,如何去尋找232個IP地址中的源和目的是需要解決的問題。
2.1 IP地址中的網絡地址和廣播地址
2.1.1 網絡地址
IP中網絡地址是將數據包發送到遠程網絡的路由中使用的名稱。我們來看一個通俗的例子,張三是南京人,那么張三的所屬就南京,南京就是張三的網絡地址,因為南京有很多人,而張三只是其中一員,這一員我們稱為主機。這樣我們就可以確定一個公式:
2.1.2 廣播地址
被應用程序和主機用來將信息發送給網絡上所有結點的地址。在IP地址里面,我們認為255.255.255.255用于指向所有網絡,所有的節點,眼下之意也就是172.16.255.255是指向172.16.0.0上的所有子網和主機的,而10.255.255.255是指向網絡10.0.0.0上所有的子網和主機的,192.168.1.255是指向網絡192.168.1.0上所有的子網和主機的。
2.2 分層的IP尋址方案
如何解決IP地址因數量龐大而導致IP尋址困難這個難題,方法就是使用兩級或者三級的分層化尋址方案。
因特網的設計者決定根據網絡的大小來創建網絡的類別。這些類別分為A類網絡、B類網絡、C類網絡、D類網絡和E類網絡,如表1所示,其中D類網絡我們又稱為組播,E類網絡適用于研究,也就是說,我們真正可以接觸的網絡有A、B和C三類。
我們發現在表1中,有一些地址我們并沒有真正地使用到,這些地址,我們都稱之為私有IP地址,表2展示了所有可用的私有IP地址范圍。私有地址的出現,是為了節省寶貴的IP地址空間,為了滿足廣泛需要的安全目的,我們要注意這些私有IP地址允許被私有的網絡所使用,但是絕對不可以通過因特網。
3 子網劃分進一步對網絡進行分層
我們已經將網絡劃分成A、B和C類3類,但是我們只是定義了網絡。如果你想擁有一個網絡地址,并從中創建6個網絡的話,應該做以下處理。
3.1 子網劃分基礎
3.1.1 固定的子網掩碼
子網掩碼是一個32位的二進制值,接收IP數據包的一方可以從IP地址的主機號部分中區分出子網IP號地址。二進制子網掩碼中的1表示精確匹配網絡位或者是子網位。
在A類、B類和C類地址中,默認的子網是不可以改變的,表3闡述了有類網絡中各種地址默認的子網掩碼的格式和范圍。
3.1.2 可變子網掩碼
VLSM是為了有效地使用CIDR和路由匯總來控制路由表的大小,對子網進行層次化編址,以便最有效地利用現有的地址空間。
當從ISP那里得到一個成塊的地址,如193.168.10.32/28,我們可以把它看到兩個部分,第一部分就是193.168.10.32,第二部分就是28。顯然,通過第一部分,發現它屬于有類網絡中的C類IP地址,而第二部分就是子網掩碼,28表示32位二進制中有28個1,有4個0,即轉化為十進制就是255.255.255.240。
3.2 進行子網劃分
3.2.1 子網劃分的原則
(1) 這個被選用的子網掩碼會產生的子網數是
2x = 子網數目。我們首先通過子網掩碼來初步判斷是屬于哪一類的IP地址,根據不同的類別,判斷出不同的網絡位數。
(2) 每個子網中又會有多少個合法的主機號可用
2y - 2 = 每個子網中主機的數目。y是非掩碼位的位數,即子網掩碼二進制位中0的個數,同樣我們在判斷子網掩碼的位數的時候,也要首先初步判斷該IP地址是屬于哪一類別。
(3) 這些合法的子網號
256 - 子網掩碼 = 塊大小,即增量值。我們通過增量值,可以知道下一個網段是從哪里開始的。
(4) 每個子網的廣播地址
每個子網都是有網絡地址和廣播地址所分割的。
(5) 在每個子網中,哪些是合法的主機號
合法主機地址是那些介于子網的網絡地址和廣播地址之間的IP地址,但是同時也要注意的是,在VLSM子網劃分中,并非全0就是網絡地址,全1就是廣播地址。
3.2.2 C類地址的子網劃分
C類地址的網絡位一共有3個字節24位,那么我們的CIDR值也就必須從/24~/32開始取數。其中/24也就是傳統意義上的C類地址。
假設從ISP那邊獲得了一個C類的IP地址:193.168.10.0/25。由于/25對應的二進制子網掩碼是11111111 11111111 11111111 10000000,十進制表示為255.255.255.128。我們將對C類網絡地址193.168.10.0進行子網劃分。
193.168.10.0 = 網絡地址
255.255.255.128 = 子網掩碼
我們通過子網劃分的五大原則,有如下分析步驟:
(1) 有多少個子網
由上述獲得的C類IP地址,已經得知/25對應的子網掩碼的二進制和十進制表示,那么11111111 11111111 11111111 10000000中第四部分首位二進制位為1,因此子網的數量為21 = 2個子網。
(2) 每個子網中有多少臺主機
這里面第四部分中有7個0表示主機位,因此我們通過計算可以得到27 - 2 = 126,也就是說我們現在的所擁有的主機數量為126臺。
(3) 我們有多少個合法的子網
合法的子網其實計算相當的簡單,也就是256 - 128 = 128。這里面是從0開始計算的,因此我們所得到的塊地址大小為128,可以得到兩塊,也就是合法的子網為0、128。
(4) 每個子網的廣播地址是什么
還記得我們在討論IP地址中廣播地址的時候,假設了一個結論,就是對于一個真實的IP地址,只要所有以255結尾的IP地址都是該網絡地址的廣播地址。
(5) 哪些是合法的主機號
合法的主機號就是介于子網的網絡地址和廣播地址之間的地址。找出這些合法主機地址的最簡單的方法,就是寫出該子網地址和廣播地址。如表4所示。
兩個不同的子網之間的通信必須通過路由器去完成,下面羅列一下該IP子網劃分的邏輯拓撲圖1。
4 總 結
我們通過上述的分析和實例可知,子網的劃分其實分成兩大類:固定子網掩碼和可變子網掩碼。子網的劃分縮減了主機的數量,同時通過匯總,把原先數量龐大或者是雜亂無章的網段,通過相同的網絡塊,再一次把網絡匯聚在一起,最后投入到因特網中進行使用。我們正是通過分久必合和合久必分的思想,來提高整個網絡的IP尋址的效率。