Internet組織機構(gòu)定義了五種IP地址,用于主機的有A、B、C三類地址。其中A類網(wǎng)絡(luò)有126個,每個A類網(wǎng)絡(luò)可能有16,777,214臺主機,它們處于同一廣播域。而在同一廣播域中有這么多結(jié)點是不可能的,網(wǎng)絡(luò)會因為廣播通信而飽和,結(jié)果造成16,777,214個地址大部分沒有分配出去,形成了浪費。而另一方面,隨著互連網(wǎng)應(yīng)用的不斷擴大,IP地址資源越來越少。為了實現(xiàn)更小的廣播域并更好地利用主機地址中的每一位,可以把基于類的IP網(wǎng)絡(luò)進一步分成更小的網(wǎng)絡(luò),每個子網(wǎng)由路由器界定并分配一個新的子網(wǎng)網(wǎng)絡(luò)地址,子網(wǎng)地址是借用基于類的網(wǎng)絡(luò)地址的主機部分創(chuàng)建的。劃分子網(wǎng)后,通過使用掩碼,把子網(wǎng)隱藏起來,使得從外部看網(wǎng)絡(luò)沒有變化,這就是子網(wǎng)掩碼。
1. 子網(wǎng)掩碼
RFC 950定義了子網(wǎng)掩碼的使用,子網(wǎng)掩碼是一個32位的2進制數(shù),其對應(yīng)網(wǎng)絡(luò)地址的所有位都置為1,對應(yīng)于主機地址的所有位都置為0。由此可知,A類網(wǎng)絡(luò)的缺省的子網(wǎng)掩碼是255.0.0.0,B類網(wǎng)絡(luò)的缺省的子網(wǎng)掩碼是255.255.0.0,C類網(wǎng)絡(luò)的缺省的子網(wǎng)掩碼是255.255.255.0。將子網(wǎng)掩碼和IP地址按位進行邏輯“與”運算,得到IP地址的網(wǎng)絡(luò)地址,剩下的部分就是主機地址,從而區(qū)分出任意IP地址中的網(wǎng)絡(luò)地址和主機地址。子網(wǎng)掩碼常用點分十進制表示,我們還可以用網(wǎng)絡(luò)前綴法表示子網(wǎng)掩碼,即“/<網(wǎng)絡(luò)地址位數(shù)>”。如138.96.0.0/16表示B類網(wǎng)絡(luò)138.96.0.0的子網(wǎng)掩碼為255.255.0.0。子網(wǎng)掩碼告知路由器,地址的哪一部分是網(wǎng)絡(luò)地址,哪一部分是主機地址,使路由器正確判斷任意IP地址是否是本網(wǎng)段的,從而正確地進行路由。例如,有兩臺主機,主機一的IP地址為222.21.160.6,子網(wǎng)掩碼為255.255.255.192,主機二的IP地址為222.21.160.73,子網(wǎng)掩碼為255.255.255.192,F(xiàn)在主機一要給主機二發(fā)送數(shù)據(jù),先要判斷兩個主機是否在同一網(wǎng)段。
主機一
222.21.160.6即:11011110.00010101.10100000.00000110
255.255.255.192即:11111111.11111111.11111111.11000000
按位邏輯與運算結(jié)果為: 11011110.00010101.10100000.00000000
主機二
222.21.160.73 即:11011110.00010101.10100000.01001001
255.255.255.192即:11111111.11111111.11111111.11000000
按位邏輯與運算結(jié)果為:11011110.00010101.10100000.01000000
兩個結(jié)果不同,也就是說,兩臺主機不在同一網(wǎng)絡(luò),數(shù)據(jù)需先發(fā)送給默認網(wǎng)關(guān),
然后再發(fā)送給主機二所在網(wǎng)絡(luò)。那么,假如主機二的
子網(wǎng)掩碼誤設(shè)為255.255.255.128,會發(fā)生什么情況呢?
讓我們將主機二的IP地址與錯誤的子網(wǎng)掩碼相“與”:
222.21.160.73 即:11011110.00010101.10100000.01001001
255.255.255.128即:11111111.11111111.11111111.10000000
結(jié)果為 11011110.00010101.10100000.00000000
這個結(jié)果與主機的網(wǎng)絡(luò)地址相同,主機與主機二將被認為處于同一網(wǎng)絡(luò)中,數(shù)據(jù)不再發(fā)送給默認網(wǎng)關(guān),而是直接在本網(wǎng)內(nèi)傳送。由于兩臺主機實際并不在同一網(wǎng)絡(luò)中,數(shù)據(jù)包將在本子網(wǎng)內(nèi)循環(huán),直到超時并拋棄。數(shù)據(jù)不能正確到達目的機,導(dǎo)致網(wǎng)絡(luò)傳輸錯誤。反過來,如果兩臺主機的子網(wǎng)掩碼原來都是255.255.255.128,誤將主機二的設(shè)為255.255.255.192,主機一向主機二發(fā)送數(shù)據(jù)時,由于IP地址與錯誤的子網(wǎng)掩碼相與,誤認兩臺主機處于不同網(wǎng)絡(luò),則會將本來屬于同一子網(wǎng)內(nèi)的機器之間的通信當(dāng)作是跨網(wǎng)傳輸,數(shù)據(jù)包都交給缺省網(wǎng)關(guān)處理,這樣勢必增加缺省網(wǎng)關(guān)的負擔(dān),造成網(wǎng)絡(luò)效率下降。所以,子網(wǎng)掩碼不能任意設(shè)置,子網(wǎng)掩碼的設(shè)置關(guān)系到子網(wǎng)的劃分。
相關(guān)推薦:2010年軟件水平考試程序員考試備考資料北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |