1、從兩級 ip 地址到三級 ip 地址
在 arpanet 的早期,ip 地址的設計確實不夠合理。
ip 地址空間的利用率有時很低。
給每一個物理網(wǎng)絡分配一個網(wǎng)絡號會使路由表變得太大因而使網(wǎng)絡性能變壞。
兩級的 ip 地址不夠靈活。
從 1985 年起在 ip 地址中又增加了一個“子網(wǎng)號字段”,使兩級的 ip 地址變成為 三級的 ip 地址。
這種做法叫作劃分子網(wǎng)(subnetting) 。劃分子網(wǎng)已成為因特網(wǎng)的正式標準協(xié)議。
2、劃分子網(wǎng)的基本思路
劃分子網(wǎng)純屬一個單位內(nèi)部的事情。單位對外仍然表現(xiàn)為沒有劃分子網(wǎng)的網(wǎng)絡。
從主機號借用若干個位作為子網(wǎng)號 subnet-id,而主機號 host-id 也就相應減少了若干個位。
ip地址 ::= {<網(wǎng)絡號>, <子網(wǎng)號>, <主機號>}
凡是從其他網(wǎng)絡發(fā)送給本單位某個主機的 ip 數(shù)據(jù)報,仍然是根據(jù) ip 數(shù)據(jù)報的目的網(wǎng)絡號 net-id,先找到連接在本單位網(wǎng)絡上的路由器。
然后此路由器在收到 ip 數(shù)據(jù)報后,再按目的網(wǎng)絡號 net-id 和子網(wǎng)號 subnet-id 找到目的子網(wǎng)。
最后就將 ip 數(shù)據(jù)報直接交付目的主機。
當沒有劃分子網(wǎng)時,ip 地址是兩級結(jié)構(gòu)。
劃分子網(wǎng)后 ip 地址就變成了三級結(jié)構(gòu)。
劃分子網(wǎng)只是把 ip 地址的主機號 host-id 這部分進行再劃分,而不改變 ip 地址原來的網(wǎng)絡號 net-id。
3、子網(wǎng)掩碼
從一個 ip 數(shù)據(jù)報的首部并無法判斷源主機或目的主機所連接的網(wǎng)絡是否進行了子網(wǎng)劃分。
使用子網(wǎng)掩碼(subnet mask)可以找出 ip 地址中的子網(wǎng)部分。
子網(wǎng)掩碼的確定
ip地址中net-id和subnet-id位均在子網(wǎng)掩碼中體現(xiàn)為“1”,其余表示主機位的均在子網(wǎng)掩碼中體現(xiàn)為“0”。
網(wǎng)絡地址的確定
ip地址與子網(wǎng)掩碼逐位進行 and 運算,所得即為網(wǎng)絡地址(包括子網(wǎng)地址)。
默認子網(wǎng)掩碼
默認子網(wǎng)掩碼中1的位數(shù)和ip地址中的網(wǎng)絡號字段net-id正好對應。
子網(wǎng)掩碼是一個網(wǎng)絡或一個子網(wǎng)的重要屬性。
路由器在和相鄰路由器交換路由信息時,必須把自己所在網(wǎng)絡(或子網(wǎng))的子網(wǎng)掩碼告訴相鄰路由器。
路由器的路由表中的每一個項目,除了要給出目的網(wǎng)絡地址外,還必須同時給出該網(wǎng)絡的子網(wǎng)掩碼。
若一個路由器連接在兩個子網(wǎng)上就擁有兩個網(wǎng)絡地址和兩個子網(wǎng)掩碼。
使用子網(wǎng)掩碼的好處
所有的網(wǎng)絡都必須使用子網(wǎng)掩碼,同時在路由器的路由表中也必須有子網(wǎng)掩碼這一欄。如果一個網(wǎng)絡不劃分子網(wǎng),那么該網(wǎng)絡的子網(wǎng)掩碼就使用默認子網(wǎng)掩碼。
路由器處理到來的數(shù)據(jù)報時,只要把子網(wǎng)掩碼和ip地址進行逐位“與”計算,就能得出網(wǎng)絡地址來。
路由器在和相鄰的路由器交換路由信息時,必須把自己所在網(wǎng)絡(子網(wǎng))的子網(wǎng)掩碼告訴相鄰路由器。在路由器的路由表中的每一個項目 ,除了要給出目的網(wǎng)絡地址外,還必須同時給出該網(wǎng)絡的子網(wǎng)掩碼。若一個路由器連接在兩個子網(wǎng)上就擁有兩個子網(wǎng)掩碼。
在采用固定長度子網(wǎng)時,所劃分的所有子網(wǎng)的子網(wǎng)掩碼都是相同的。
b類地址的子網(wǎng)劃分選擇(固定長度子網(wǎng))