子網(wǎng)劃分一直是網(wǎng)管初學(xué)者頭疼的問(wèn)題,在網(wǎng)吧當(dāng)中很多網(wǎng)管朋友是由服務(wù)員做起,慢慢學(xué)習(xí)網(wǎng)管技巧和知識(shí),所以沒(méi)有系統(tǒng)學(xué)習(xí)過(guò)TCP/IP方面的知識(shí),由于最基礎(chǔ)的TCIP/IP知識(shí)在日常當(dāng)中根本用不到,所以導(dǎo)致子網(wǎng)劃分的方法和技巧往往很難掌握到實(shí)質(zhì)的經(jīng)驗(yàn),這也是為什么子網(wǎng)劃分成為初學(xué)網(wǎng)管的難題。要想理解什么是子網(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)。本文以我曾經(jīng)對(duì)一個(gè)超過(guò)255單網(wǎng)段網(wǎng)吧的實(shí)際子網(wǎng)劃分案例,用我的理解為大家分析在網(wǎng)吧應(yīng)用當(dāng)中最常見(jiàn)的子網(wǎng)劃分原則和技巧,并希望與大家交流經(jīng)驗(yàn)。
關(guān)鍵知識(shí)一子網(wǎng)掩碼:子網(wǎng)掩碼不能單獨(dú)存在,它必須結(jié)合IP地址一起使用。子網(wǎng)掩碼只有一個(gè)作用,就是將某個(gè)IP地址劃分成網(wǎng)絡(luò)地址和主機(jī)地址兩部分。子網(wǎng)掩碼的設(shè)定必須遵循一定的規(guī)則。與IP地址相同,子網(wǎng)掩碼的長(zhǎng)度也是32位,左邊是網(wǎng)絡(luò)位,用二進(jìn)制數(shù)字“1”表示;右邊是主機(jī)位,用二進(jìn)制數(shù)字“0”表示。附圖所示的就是IP地址為“192.168.1.1”和子網(wǎng)掩碼為“255.255.255.0”的二進(jìn)制對(duì)照。其中,“1”有24個(gè),代表與此相對(duì)應(yīng)的IP地址左邊24位是網(wǎng)絡(luò)號(hào);“0”有8個(gè),代表與此相對(duì)應(yīng)的IP地址右邊8位是主機(jī)號(hào)。這樣,子網(wǎng)掩碼就確定了一個(gè)lP地址的32位二進(jìn)制數(shù)字中哪些是網(wǎng)絡(luò)號(hào)、哪些是主機(jī)號(hào)。這對(duì)于采用TCP/IP協(xié)議的網(wǎng)絡(luò)來(lái)說(shuō)非常重要,只有通過(guò)子網(wǎng)掩碼,才能表明一臺(tái)主機(jī)所在的子網(wǎng)與其他子網(wǎng)的關(guān)系,使網(wǎng)絡(luò)正常工作。
子網(wǎng)掩碼和IP地址的關(guān)系
子網(wǎng)掩碼是用來(lái)判斷任意兩臺(tái)計(jì)算機(jī)的IP地址是否屬于同一子網(wǎng)絡(luò)的根據(jù)。最為簡(jiǎn)單的理解就是兩臺(tái)計(jì)算機(jī)各自的IP地址與子網(wǎng)掩碼進(jìn)行AND運(yùn)算后,如果得出的結(jié)果是相同的,則說(shuō)明這兩臺(tái)計(jì)算機(jī)是處于同一個(gè)子網(wǎng)絡(luò)上的,可以進(jìn)行直接的通訊。
運(yùn)算演示之一:
IP地址:192.168.0.1
子網(wǎng)掩碼:255.255.255.0
AND轉(zhuǎn)化為二進(jìn)制進(jìn)行運(yùn)算:
lP地址:11000000.10101000.00000000.0000000 子網(wǎng)掩碼:11111111.11111111.11111111.00000000
AND運(yùn)算:11000000.10101000.00000000.00000000
轉(zhuǎn)化為十進(jìn)制后為:192.168.0.0
以上運(yùn)算將不同IP通過(guò)AND運(yùn)算后,就能確定IP是否同屬于192.168.0.0這網(wǎng)段,也就可以判斷是否可以直接通信。
案例如下:
IP地址段:192.168.0.1—192.168.0.67
子網(wǎng)掩碼:255.255.254.0
網(wǎng)關(guān):192.168.1.253
第二個(gè)子網(wǎng):IP地址段:192.168.1.1—192.168.1.200
子網(wǎng)掩碼:255.255.254.0
網(wǎng)關(guān):192.168.1.253
實(shí)例當(dāng)中是要按照這樣來(lái)分的,但如果不知道這樣分是怎么實(shí)現(xiàn)的,那在以后遇到這種情況仍然是不能隨機(jī)應(yīng)變的,,所以下面我說(shuō)下這樣實(shí)現(xiàn)的原理:從已經(jīng)劃分成的地址類(lèi)型可以看出,使用的是網(wǎng)吧通常使用的C類(lèi)IP地址,簡(jiǎn)單的看一下子網(wǎng)內(nèi)IP地址和網(wǎng)關(guān)的設(shè)定,如果懂得TCP/IP常識(shí)可以發(fā)現(xiàn),IP地址是192.168.0.X,網(wǎng)關(guān)卻設(shè)置成了192.168.1.X,大家會(huì)問(wèn)如果這樣設(shè)置的話,客戶端與網(wǎng)關(guān)怎樣進(jìn)行通信呢,分明不在同一網(wǎng)段內(nèi)。其實(shí)這樣劃分是有技術(shù)上的優(yōu)勢(shì)的,我們知道,C類(lèi)IP段中,例如192.168.0.0,子網(wǎng)掩碼為255.255.255.0,其中的255.255.255.0計(jì)算為二進(jìn)制則表示成11111111.11111111.11111111.00000000,全為1的則表示網(wǎng)絡(luò)部分,全為0的則表示為主機(jī)部分,那么子網(wǎng)掩碼為255.255.255.0的網(wǎng)絡(luò),最多只能容納254臺(tái)主機(jī)(去除全為0和全為1的兩臺(tái)),那么這段網(wǎng)絡(luò)怎么才能容納267臺(tái)主機(jī)呢。這里我們就用到了“借位”一說(shuō)。主機(jī)位不夠,那我們何不向網(wǎng)絡(luò)位借呢,把網(wǎng)絡(luò)位中的1位或者幾位借過(guò)來(lái)作為主機(jī)位用,那不就可能容納更多的主機(jī)了嗎?
我們向網(wǎng)絡(luò)位借該怎么借呢?該借幾位呢?實(shí)際理論當(dāng)中是存在這么一個(gè)公式的,這里把需要容納的主機(jī)設(shè)為M,要借的位數(shù)設(shè)為N,那么產(chǎn)生一個(gè)公式,2的N次方≥M,這樣就簡(jiǎn)單了,2的8次方=256,不足以容納267臺(tái)機(jī)器,那么2的9次方=512,大于267了,也可以理解為采用9位主機(jī)位的網(wǎng)絡(luò)可以容納512臺(tái)機(jī)器,267臺(tái)當(dāng)然可以正常使用。經(jīng)過(guò)這樣的算法就得出了N=9,也就是要借9位主機(jī)位來(lái)表示主機(jī)數(shù)目。前文提到全為0的表示主機(jī)位,全為1的表示網(wǎng)絡(luò)位,并且我們是用網(wǎng)絡(luò)位來(lái)表示主機(jī)位,當(dāng)然主機(jī)位是連續(xù)的了,不然這邊借一位,那邊再跳著借一位吧。把上面的二進(jìn)制數(shù)列拿來(lái)分析一下,11111111.11111111.11111111.00000000這里有8位主機(jī)位,剛剛算出來(lái)需要有9位主機(jī)位,那么就向網(wǎng)絡(luò)位借一位來(lái)用用,把網(wǎng)絡(luò)位的最后面一位從1(網(wǎng)絡(luò)位)變成0(主機(jī)位),這樣就可以表示成11111111.11111111.11111110.00000000,9位主機(jī)位出來(lái)了,然后再把這個(gè)數(shù)列換算成10進(jìn)制就是255.255.254.0,也就是我們劃分子網(wǎng)的子網(wǎng)掩碼啦,這下大家就可以知道上面方案中255.255.254.0的由來(lái)了吧。
下面該總結(jié)一下為什么網(wǎng)關(guān)要設(shè)置成192.168.1.254了,因?yàn)閯倓偨柽^(guò)來(lái)的一位來(lái)表示主機(jī)位,我們就利用這一位來(lái)設(shè)置各個(gè)子網(wǎng)的lP地址段。這里我們采用的是192.168.0.0,換算成二進(jìn)制就是11000000.01010100.00000000.00000000,這里第9位主機(jī)位是借來(lái)的,它可以表示成000000000和00000001,那么這個(gè)網(wǎng)絡(luò)的IP地址就可以設(shè)置成110000000.01010100.00000000.C0000001到11000000.01010100.00000001.11111110了,再換算成10進(jìn)制就是192.168.0.1—192.168.1.254了。
這樣我們就得出了最終的結(jié)果,267臺(tái)機(jī)器的網(wǎng)絡(luò)可以通過(guò)向網(wǎng)絡(luò)位借位來(lái)表示主機(jī)位,得出的lP地址段為192.168.0.1—192.168.1.254,子網(wǎng)掩碼為255.255.254.0,這樣所有主機(jī)設(shè)置成IP段中的一個(gè),子網(wǎng)掩碼為255.255.254.0,就能夠處于同一個(gè)網(wǎng)段,192.168.1.254自然也處于這一網(wǎng)段中,把它設(shè)置成網(wǎng)關(guān)就可以順利的發(fā)揮網(wǎng)關(guān)的作用,而且整個(gè)網(wǎng)段內(nèi)由于子網(wǎng)掩碼作用,可以有效防止風(fēng)暴的產(chǎn)生,還能解決互訪問(wèn)題。
由這個(gè)典型網(wǎng)吧解決主機(jī)數(shù)量超過(guò)一個(gè)網(wǎng)段的案例可以看出,其實(shí)子網(wǎng)劃分首先要確定的就是掩碼方式,本文就是詳細(xì)解讀了子網(wǎng)掩碼與IP對(duì)應(yīng)關(guān)系的一種通俗的解釋,然后根據(jù)掩碼方式確定IP地址的分配原則,雖然通俗易懂,但這一切都要建立在詳細(xì)理解TCP/IP的基礎(chǔ)之上的,也許這個(gè)案例能幫大家更快的記住子網(wǎng)劃分的原則與初級(jí)技巧,但要真正做到以不變應(yīng)萬(wàn)變,還需要透徹研究TCP/IP相關(guān)知識(shí),才能成為一名合格的網(wǎng)管。