子網(wǎng)掩碼介紹
子網(wǎng)掩碼(subnet mask)是每個(gè)使用互聯(lián)網(wǎng)的人必須要掌握的基礎(chǔ)知識(shí),只有掌握它,才能夠真正理解TCP/IP協(xié)議的設(shè)置。
子網(wǎng)掩碼——屏蔽一個(gè)IP地址的網(wǎng)絡(luò)部分的“全1”比特模式。對(duì)于A類地址來(lái)說(shuō),默認(rèn)的子網(wǎng)掩碼是255.0.0.0;對(duì)于B類地址來(lái)說(shuō)默認(rèn)的子網(wǎng)掩碼是255.255.0.0;對(duì)于C類地址來(lái)說(shuō)默認(rèn)的子網(wǎng)掩碼是255.255.255.0。
利用子網(wǎng)掩碼可以把大的網(wǎng)絡(luò)劃分成子網(wǎng),即VLSM(可變長(zhǎng)子網(wǎng)掩碼),也可以把小的網(wǎng)絡(luò)歸并成大的網(wǎng)絡(luò)即超網(wǎng)。
子網(wǎng)掩碼構(gòu)成
要想理解什么是子網(wǎng)掩碼,就不能不了解IP地址的構(gòu)成?;ヂ?lián)網(wǎng)是由許多小型網(wǎng)絡(luò)構(gòu)成的,每個(gè)網(wǎng)絡(luò)上都有許多主機(jī),這樣便構(gòu)成了一個(gè)有層次的結(jié)構(gòu)。IP地址在設(shè)計(jì)時(shí)就考慮到地址分配的層次特點(diǎn),將每個(gè)IP地址都分割成網(wǎng)絡(luò)號(hào)和主機(jī)號(hào)兩部分,以便于IP地址的尋址操作。
IP地址的網(wǎng)絡(luò)號(hào)和主機(jī)號(hào)各是多少位呢?如果不指定,就不知道哪些位是網(wǎng)絡(luò)號(hào)、哪些是主機(jī)號(hào),這就需要通過(guò)子網(wǎng)掩碼來(lái)實(shí)現(xiàn)。
子網(wǎng)掩碼規(guī)則
子網(wǎng)掩碼的設(shè)定必須遵循一定的規(guī)則。與二進(jìn)制IP地址相同,子網(wǎng)掩碼由1和0組成,且1和0分別連續(xù)。子網(wǎng)掩碼的長(zhǎng)度也是32位,左邊是網(wǎng)絡(luò)位,用二進(jìn)制數(shù)字“1”表示,1的數(shù)目等于網(wǎng)絡(luò)位的長(zhǎng)度;右邊是主機(jī)位,用二進(jìn)制數(shù)字“0”表示,0的數(shù)目等于主機(jī)位的長(zhǎng)度。這樣做的目的是為了讓掩碼與ip地址做按位與運(yùn)算時(shí)用0遮住原主機(jī)數(shù),而不改變?cè)W(wǎng)絡(luò)段數(shù)字,而且很容易通過(guò)0的位數(shù)確定子網(wǎng)的主機(jī)數(shù)(2的主機(jī)位數(shù)次方-2,因?yàn)橹鳈C(jī)號(hào)全為1時(shí)表示該網(wǎng)絡(luò)廣播地址,全為0時(shí)表示該網(wǎng)絡(luò)的網(wǎng)絡(luò)號(hào),這是兩個(gè)特殊地址)。只有通過(guò)子網(wǎng)掩碼,才能表明一臺(tái)主機(jī)所在的子網(wǎng)與其他子網(wǎng)的關(guān)系,使網(wǎng)絡(luò)正常工作。
子網(wǎng)掩碼的作用
子網(wǎng)掩碼是一個(gè)32位地址,是與IP地址結(jié)合使用的一種技術(shù)。它的主要作用有兩個(gè),一是用于屏蔽IP地址的一部分以區(qū)別網(wǎng)絡(luò)標(biāo)識(shí)和主機(jī)標(biāo)識(shí),并說(shuō)明該IP地址是在局域網(wǎng)上,還是在遠(yuǎn)程網(wǎng)上。二是用于將一個(gè)大的IP網(wǎng)絡(luò)劃分為若干小的子網(wǎng)絡(luò)。
使用子網(wǎng)是為了減少IP的浪費(fèi)。因?yàn)殡S著互聯(lián)網(wǎng)的發(fā)展,越來(lái)越多的網(wǎng)絡(luò)產(chǎn)生,有的網(wǎng)絡(luò)多則幾百臺(tái),有的只有區(qū)區(qū)幾臺(tái),這樣就浪費(fèi)了很多IP地址,所以要?jiǎng)澐肿泳W(wǎng)。使用子網(wǎng)可以提高網(wǎng)絡(luò)應(yīng)用的效率。
通過(guò)IP 地址的二進(jìn)制與子網(wǎng)掩碼的二進(jìn)制進(jìn)行與運(yùn)算,確定某個(gè)設(shè)備的網(wǎng)絡(luò)地址和主機(jī)號(hào),也就是說(shuō)通過(guò)子網(wǎng)掩碼分辨一個(gè)網(wǎng)絡(luò)的網(wǎng)絡(luò)部分和主機(jī)部分。子網(wǎng)掩碼一旦設(shè)置,網(wǎng)絡(luò)地址和主機(jī)地址就固定了。子網(wǎng)一個(gè)最顯著的特征就是具有子網(wǎng)掩碼。與IP地址相同,子網(wǎng)掩碼的長(zhǎng)度也是32位,也可以使用十進(jìn)制的形式。例如,為二進(jìn)制形式的子網(wǎng)掩碼:1111 1111.1111 1111.1111 1111.0000 0000,采用十進(jìn)制的形式為:255.255.255.0。
通過(guò)計(jì)算機(jī)的子網(wǎng)掩碼判斷兩臺(tái)計(jì)算機(jī)是否屬于同一網(wǎng)段的方法是,將計(jì)算機(jī)十進(jìn)制的IP地址和子網(wǎng)掩碼轉(zhuǎn)換為二進(jìn)制的形式,然后進(jìn)行二進(jìn)制“與”(AND)計(jì)算(全1則得1,不全1則得0),如果得出的結(jié)果是相同的,那么這兩臺(tái)計(jì)算機(jī)就屬于同一網(wǎng)段。
子網(wǎng)掩碼怎么計(jì)算
IP地址是32位的二進(jìn)制數(shù)值,用于在TCP/IP通訊協(xié)議中標(biāo)記每臺(tái)計(jì)算機(jī)的地址。通常我們使用點(diǎn)式十進(jìn)制來(lái)表示,如192.168.0.5等等。
每個(gè)IP地址又可分為兩部分。即網(wǎng)絡(luò)號(hào)部分和主機(jī)號(hào)部分:網(wǎng)絡(luò)號(hào)表示其所屬的網(wǎng)絡(luò)段編號(hào),主機(jī)號(hào)則表示該網(wǎng)段中該主機(jī)的地址編號(hào)。按照網(wǎng)絡(luò)規(guī)模的大小,IP地址可以分為A、B、C、D、E五類,其中A、B、C類是三種主要的類型地址,D類專供多目傳送用的多目地址,E類用于擴(kuò)展備用地址。A、B、C三類IP地址有效范圍如下表:
隨著互連網(wǎng)應(yīng)用的不斷擴(kuò)大,原先的IPv4的弊端也逐漸暴露出來(lái),即網(wǎng)絡(luò)號(hào)占位太多,而主機(jī)號(hào)位太少,所以其能提供的主機(jī)地址也越來(lái)越稀缺,目前除了使用NAT在企業(yè)內(nèi)部利用保留地址自行分配以外,通常都對(duì)一個(gè)高類別的IP地址進(jìn)行再劃分,以形成多個(gè)子網(wǎng),提供給不同規(guī)模的用戶群使用。
這里主要是為了在網(wǎng)絡(luò)分段情況下有效地利用IP地址,通過(guò)對(duì)主機(jī)號(hào)的高位部分取作為子網(wǎng)號(hào),從通常的網(wǎng)絡(luò)位界限中擴(kuò)展或壓縮子網(wǎng)掩碼,用來(lái)創(chuàng)建某類地址的更多子網(wǎng)。但創(chuàng)建更多的子網(wǎng)時(shí),在每個(gè)子網(wǎng)上的可用主機(jī)地址數(shù)目會(huì)比原先減少。
子網(wǎng)掩碼是標(biāo)志兩個(gè)IP地址是否同屬于一個(gè)子網(wǎng)的,也是32位二進(jìn)制地址,其每一個(gè)為1代表該位是網(wǎng)絡(luò)位,為0代表主機(jī)位。它和IP地址一樣也是使用點(diǎn)式十進(jìn)制來(lái)表示的。如果兩個(gè)IP地址在子網(wǎng)掩碼的按位與的計(jì)算下所得結(jié)果相同,即表明它們共屬于同一子網(wǎng)中。
在計(jì)算子網(wǎng)掩碼時(shí),我們要注意IP地址中的保留地址,即“ 0”地址和廣播地址,它們是指主機(jī)地址或網(wǎng)絡(luò)地址全為“ 0”或“ 1”時(shí)的IP地址,它們代表著本網(wǎng)絡(luò)地址和廣播地址,一般是不能被計(jì)算在內(nèi)的。
子網(wǎng)掩碼怎么計(jì)算實(shí)例
下面就來(lái)以實(shí)例來(lái)說(shuō)明子網(wǎng)掩碼的算法:
對(duì)于無(wú)須再劃分成子網(wǎng)的IP地址來(lái)說(shuō),其子網(wǎng)掩碼非常簡(jiǎn)單,即按照其定義即可寫(xiě)出:如某B類IP地址為 10.12.3.0,無(wú)須再分割子網(wǎng),則該IP地址的子網(wǎng)掩碼為255.255.0.0。如果它是一個(gè)C類地址,則其子網(wǎng)掩碼為 255.255.255.0。其它類推,不再詳述。下面我們關(guān)鍵要介紹的是一個(gè)IP地址,還需要將其高位主機(jī)位再作為劃分出的子網(wǎng)網(wǎng)絡(luò)號(hào),剩下的是每個(gè)子網(wǎng)的主機(jī)號(hào),這時(shí)該如何進(jìn)行每個(gè)子網(wǎng)的掩碼計(jì)算。
一、利用子網(wǎng)數(shù)來(lái)計(jì)算
在求子網(wǎng)掩碼之前必須先搞清楚要?jiǎng)澐值淖泳W(wǎng)數(shù)目,以及每個(gè)子網(wǎng)內(nèi)的所需主機(jī)數(shù)目。
1)將子網(wǎng)數(shù)目轉(zhuǎn)化為二進(jìn)制來(lái)表示
2)取得該二進(jìn)制的位數(shù),為 N
3)取得該IP地址的類子網(wǎng)掩碼,將其主機(jī)地址部分的的前N位置 1 即得出該IP地址劃分子網(wǎng)的子網(wǎng)掩碼。
如欲將B類IP地址168.195.0.0劃分成27個(gè)子網(wǎng):
1)27=11011
2)該二進(jìn)制為五位數(shù),N = 5
3)將B類地址的子網(wǎng)掩碼255.255.0.0的主機(jī)地址前5位置 1,得到 255.255.248.0
即為劃分成 27個(gè)子網(wǎng)的B類IP地址 168.195.0.0的子網(wǎng)掩碼。
二、利用主機(jī)數(shù)來(lái)計(jì)算
1)將主機(jī)數(shù)目轉(zhuǎn)化為二進(jìn)制來(lái)表示
2)如果主機(jī)數(shù)小于或等于254(注意去掉保留的兩個(gè)IP地址),則取得該主機(jī)的二進(jìn)制位數(shù),為 N,這里肯定 N《8。如果大于254,則 N》8,這就是說(shuō)主機(jī)地址將占據(jù)不止8位。
3)使用255.255.255.255來(lái)將該類IP地址的主機(jī)地址位數(shù)全部置1,然后從后向前的將N位全部置為 0,即為子網(wǎng)掩碼值。
如欲將B類IP地址168.195.0.0劃分成若干子網(wǎng),每個(gè)子網(wǎng)內(nèi)有主機(jī)700臺(tái):
1) 700=1010111100
2)該二進(jìn)制為十位數(shù),N = 10
3)將該B類地址的子網(wǎng)掩碼255.255.0.0的主機(jī)地址全部置 1,得到255.255.255.255
然后再?gòu)暮笙蚯皩⒑?10位置0,即為: 11111111.11111111.11111100.00000000
即255.255.252.0。這就是該欲劃分成主機(jī)為700臺(tái)的B類IP地址 168.195.0.0的子網(wǎng)掩碼。
下面列出各類IP地址所能劃分出的所有子網(wǎng),其劃分后的主機(jī)和子網(wǎng)占位數(shù),以及主機(jī)和子網(wǎng)的(最大)數(shù)目,注意要去掉保留的IP地址(即劃分后有主機(jī)位或子網(wǎng)位全為“0”或全為“1”的):
A類IP地址:
B類IP地址:
C類IP地址:
再根據(jù)CCNA中會(huì)出現(xiàn)的題目給大家舉個(gè)例子: 首先,我們看一個(gè)考試中常見(jiàn)的題型:一個(gè)主機(jī)的IP地址是202.112.14.137,掩碼是255.255.255.224,要求計(jì)算這個(gè)主機(jī)所在網(wǎng)絡(luò)的網(wǎng)絡(luò)地址和廣播地址。
常規(guī)辦法是把這個(gè)主機(jī)地址和子網(wǎng)掩碼都換算成二進(jìn)制數(shù),兩者進(jìn)行邏輯與運(yùn)算后即可得到網(wǎng)絡(luò)地址。其實(shí)大家只要仔細(xì)想想,可以得到另一個(gè)方法:255.255.255.224的掩碼所容納的IP地址有256-224=32個(gè)(包括網(wǎng)絡(luò)地址和廣播地址),那么具有這種掩碼的網(wǎng)絡(luò)地址一定是32的倍數(shù)。而網(wǎng)絡(luò)地址是子網(wǎng)IP地址的開(kāi)始,廣播地址是結(jié)束,可使用的主機(jī)地址在這個(gè)范圍內(nèi),因此略小于137而又是32的倍數(shù)的只有128,所以得出網(wǎng)絡(luò)地址是202.112.14.128。而廣播地址就是下一個(gè)網(wǎng)絡(luò)的網(wǎng)絡(luò)地址減1。而下一個(gè)32的倍數(shù)是160,因此可以得到廣播地址為202.112.14.159。可參照下表來(lái)理解本例。
子網(wǎng)絡(luò) 2進(jìn)制子網(wǎng)絡(luò)域數(shù) 2進(jìn)制主機(jī)域數(shù)的范圍 2進(jìn)制主機(jī)域數(shù)的范圍
CCNA考試中,還有一種題型,要你根據(jù)每個(gè)網(wǎng)絡(luò)的主機(jī)數(shù)量進(jìn)行子網(wǎng)地址的規(guī)劃和計(jì)算子網(wǎng)掩碼。這也可按上述原則進(jìn)行計(jì)算。比如一個(gè)子網(wǎng)有10臺(tái)主機(jī),那么對(duì)于這個(gè)子網(wǎng)需要的IP地址是:
10+1+1+1=13
注意:加的第一個(gè)1是指這個(gè)網(wǎng)絡(luò)連接時(shí)所需的網(wǎng)關(guān)地址,接著的兩個(gè)1分別是指網(wǎng)絡(luò)地址和廣播地址。因?yàn)?3小于16(16等于2的4次方),所以主機(jī)位為4位。而
256-16=240
所以該子網(wǎng)掩碼為255.255.255.240。
如果一個(gè)子網(wǎng)有14臺(tái)主機(jī),不少人常犯的錯(cuò)誤是:依然分配具有16個(gè)地址空間的子網(wǎng),而忘記了給網(wǎng)關(guān)分配地址。這樣就錯(cuò)誤了,因?yàn)椋?/p>
14+1+1+1=17
17大于16,所以我們只能分配具有32個(gè)地址(32等于2的5次方)空間的子網(wǎng)。這時(shí)子網(wǎng)掩碼為:255.255.255.224。
評(píng)論
查看更多