張海絨
(山西工程職業(yè)學院,山西 太原 030009)
高職院校“計算機網(wǎng)絡技術”課程重點難點較多,理論知識繁瑣抽象,特別是子網(wǎng)劃分部分。針對網(wǎng)絡規(guī)劃和管理,子網(wǎng)劃分方案顯的尤為重要[1]。
計算機網(wǎng)絡技術課程教學中,對于子網(wǎng)劃分部分的講解比較復雜,比如二進制與十進制之間的轉換,學生入校之前沒有學過,但這部分知識的掌握是子網(wǎng)劃分學習的前期準備工作。筆者翻閱了很多計算機網(wǎng)絡相關的教材,也查閱了國內外相關的論文資料,還沒有發(fā)現(xiàn)一種能夠輕松掌握的子網(wǎng)劃分方法,并能將其應用于當前高職院校零基礎學生的教學工作。筆者在長期的計算機網(wǎng)絡教學過程中,總結出了一套子網(wǎng)劃分簡單易學的方法,便于學生理解和掌握。本文從案例的角度出發(fā),來介紹該子網(wǎng)劃分是如何進行的。
從一個教學案例的角度出發(fā),某所新建的學校,教室有400 臺計算機,圖書館有180 臺計算機,宿舍里有40 臺計算機,食堂有18 臺計算機。前期的網(wǎng)絡施工布線工作已經(jīng)基本完成,現(xiàn)在需要為每個部門做IP規(guī)劃和子網(wǎng)劃分。分配的IP 地址塊是172.16.0.0/22,需要將其劃分為五個子網(wǎng),分別為:第一個子網(wǎng)是教室LAN,最多支持400 臺主機;第二個子網(wǎng)是圖書館LAN,最多支持180 臺主機;第三個子網(wǎng)是宿舍LAN,最多支持40 臺主機;第四個子網(wǎng)是食堂LAN,最多支持18臺主機;第五個子網(wǎng)是WAN,采用點對點鏈路。
完成此案例子網(wǎng)規(guī)劃與子網(wǎng)劃分的前提是,學生需掌握一定的計算機網(wǎng)絡基礎知識,比如,IP 地址的二進制記法和二進制與十進制之間的轉換等。
目前IP 地址采用的是IPv4 版本,需要32 位的二進制數(shù)表示,由于二進制數(shù)只適用于計算機識別,為了更加人性化,計算機網(wǎng)絡界采用點分十進制的記法,即192.168.2.1,32 位的二進制位分為四組,每一組換算成十進制,中間用小數(shù)點隔開。
學生還需要掌握二進制的數(shù)數(shù)規(guī)則,8 位二進制從00000000 數(shù)到11111111,掌握二進制加減法,逢2進1 的方法。熟練的進行二進制十進制之間的轉換,至少需要8 位的二進制數(shù)與十進制數(shù)之間的轉換,可以采用8421法進行。
所謂8421法,指的是二進制數(shù)按位權展開,(這里以8 位二進制位為例),從高位到地位依次是:2726252423222120,依次計算出對應的值為:128 64 32 16 8 4 2 1。例如,這里給出一個8位的二進制數(shù)00110011,作出位權對應,如表1所示。將二進制數(shù)位為1 的對應的位權值相加即可,也就是32+16+2+1=51,筆者得出8 位二進制數(shù)00110011所對應的十進制數(shù)為51。相比較于傳統(tǒng)的二-十進制轉換方法,該方法快速簡單,特別適用于網(wǎng)絡工程應用的情況,但是要求學生熟記相應的位權數(shù),也就是128 64 32 16 8 4 2 1。
表1 8421法
學術界對于子網(wǎng)劃分有很多種常用的方法,比較常見的一種是可變長子網(wǎng)劃分VLSM 的方法[2],這里采用VLSM方法解決上述案例。
首先,將點分十進制的IP 地址表示改為二進制的表示形式,因為網(wǎng)絡號為前22 位,前兩個字節(jié)可以不用換算成二進制形式,那么,172.16.0.0/22 轉為二進制IP 地址表示為:172.16.000000/00.00000000。子網(wǎng)劃分需要從計算機數(shù)最多的子網(wǎng)開始劃分,依次往下,直到劃分完畢[3]。
⑴第一個子網(wǎng)能夠支持400臺主機,采用計算方法2n>=400,算出n=9,那么至少要空出九位的主機位,所以,就剩下一位來劃分子網(wǎng),172.16.000000/00.00000000,如下劃線標注的一位來劃分子網(wǎng),一位的二進制位能劃分兩個子網(wǎng),一般情況下,我們定義0開始為第一個子網(wǎng),即172.16.0000000/0.00000000,剩下的一個子網(wǎng)為172.16.0000001/0.00000000。
⑵第二個子網(wǎng)需要支持180臺主機,根據(jù)計算得出需要8位二進制位,所以,在上述剩下的子網(wǎng)的基礎上,即172.16.0000001/0.00000000網(wǎng)絡上繼續(xù)劃分,空出8位主機位數(shù),只有一位二進制位來劃分子網(wǎng),同樣,一位二進制位可以表示兩個子網(wǎng),為0的子網(wǎng)我們來定義為我們的第二個子網(wǎng),也就是172.16.00000010/.00000000,其中有下劃線的二進制位用來劃分子網(wǎng)。剩下的一個子網(wǎng)為172.16.00000011/.00000000。
⑶第三個子網(wǎng)需要40 臺主機,首先計算出需要六位主機號,在第⑵步劃分網(wǎng)絡的基礎上,也就是172.16.00000011/.00000000繼續(xù)劃分,需要空出6位主機號,剩下二位的二進制位來劃分子網(wǎng),二位二進制位可以劃分出四個子網(wǎng),分別為172.16.00000011.00/000000,172.16.00000011.01/000000,172.16.00000011.10/000000,172.16.00000011.11/000000。第三個子網(wǎng)原則上四選一即可,一般我們選擇00子網(wǎng),也就是172.16.00000011.00/000000。
⑷ 接下來的子網(wǎng)劃分我們按照第⑶步劃分的四個子網(wǎng)順序,應該從172.16.00000011.01/000000網(wǎng)絡的基礎上進行。第四個子網(wǎng)有18 臺主機,計算出需要五位主機號,同樣的空出五位主機號,剩下一位子網(wǎng)號,同樣可以劃分為兩個子網(wǎng),分別為172.16.00000011.010/00000,和172.16.00000011.011/00000。第四個子網(wǎng)取172.16.00000011.010/00000。剩下的172.16.00000011.011/00000,繼續(xù)在此基礎上劃分。
⑸ 第五個子網(wǎng)是WAN 網(wǎng),需要二個IP 地址,22-2=2,所以主機位數(shù)需要二位二進制位,從第⑷步中剩下的子網(wǎng)172.16.00000011.011/00000 繼續(xù)劃分,同樣,留出二位主機號,有三位二進制位用于劃分子網(wǎng),可以分八個子網(wǎng),分別為172.16.00000011.011000/00,172.16.00000011.011001/00,172.16.00000011.011010/00,172.16.00000011.011011/00,172.16.00000011.011100/00,172.16.00000011.011101/00,172.16.00000011.011110/00,172.16.00000011.011111/00。這里第五個子網(wǎng)選擇172.16.00000011.011000/00。
至此,五個子網(wǎng)已經(jīng)分配完畢,IP 子網(wǎng)規(guī)劃和子網(wǎng)劃分不是唯一的,在此過程中可以任意選擇[4]。該方法首先算出主機號,繼而求出子網(wǎng)號,根據(jù)子網(wǎng)號劃分子網(wǎng),在此基礎上繼續(xù)下一個子網(wǎng)劃分,比較繁瑣,在課堂講授過程中,學生容易混淆,特別是高職院校的學生,理解起來相對困難。
傳統(tǒng)的子網(wǎng)劃分對于高職院校的學生理解比較困難,筆者提出一種以主機位數(shù)為核心的子網(wǎng)劃分方法,大大降低了子網(wǎng)劃分的難度。
劃分子網(wǎng)首先還是從主機臺數(shù)最多的子網(wǎng)開始,依次到臺數(shù)最少的子網(wǎng)。和傳統(tǒng)的方法一樣,需要將IP 地址的十進制表示換算成相應的二進制表示,172.16.0.0/22 變?yōu)槎M制表示為(前兩個字節(jié)可以不用變):172.16.00000000.00000000/22。
⑴先劃分400臺主機臺數(shù)的子網(wǎng),同樣需要計算出能夠支持400 臺主機數(shù)需要多少位主機號,主機號全0 的IP 地址表示網(wǎng)絡地址,主機號全1 的IP 地址表示廣播地址,所以在計算主機位數(shù)時,應該減去2,和VLSM方法一樣,求出主機號位數(shù)最少需要9位。
從二進制IP地址最右邊起數(shù)出9位作為主機位數(shù),將這9 位主機號從全0 到全1,就是該子網(wǎng)的IP 地址范圍(除去全0和全1)。
172.16.000000/00.00000000……172.16.000000/01.11111111。
接下來需要寫出172.16.000000/01.11111111 相鄰的下一個二進制數(shù),也就是在172.16.000000/01.11111111的基礎上加二進制1,為172.16.00000010.00000000。
⑵繼續(xù)劃分180 臺主機數(shù)的子網(wǎng):計算支持180臺主機臺數(shù)最少需要8 位。從最右邊起數(shù)出8 位作為主機位數(shù),從全0到全1,如下所示:
172.16.00000010.00000000……
172.16.00000010.11111111。
3.8 集中消毒餐飲具。指具有消毒服務的條件和能力,能夠為餐飲服務者提供餐飲具集中消毒服務的機構或單位,按照規(guī)范流程進行集中清洗消毒,符合相關衛(wèi)生標準,并提供給餐飲服務者使用的餐具、飲具。
同樣,計算出172.16.00000010.11111111 二進制表示形式的下一個數(shù),即172.16.00000011.00000000。
⑶第三個子網(wǎng)需要40臺主機IP地址,同樣的方法計算出主機位數(shù)是6位,那么從172.16.00000011.00000000的最右邊數(shù)出6 位,172.16.00000011.00000000,此6 位主機號,從全0到全1,去除主機號全0和全1的即為可以分配的IP地址。范圍是從:
172.16.00000011.00000000……
172.16.00000011.00111111。
需要將末尾二進制IP 地址自動加1,即為172.16.00000011.01000000。
⑷第四個子網(wǎng)有18 臺主機,算出需要的主機位數(shù)是5 位,在172.16.00000011.01000000 的最右邊數(shù)出5 位主機位,即172.16.00000011.01000000,同樣的方法,這5位主機位從全0到全1,范圍:
172.16.00000011.01000000……
172.16.00000011.01011111。
⑸第五個子網(wǎng)比較特殊,只需要2臺主機IP地址即可,所以計算出需要的主機位數(shù)是2。在最后一個二進制IP地址的基礎上同樣從最右邊取2位作為主機號,172.16.00000011.01100000,兩個主機號從全0 到全1,即范圍為:
172.16.00000011.01100000……
172.16.00000011.01100011。
以主機號為核心的子網(wǎng)劃分方法,需要把握三點:①子網(wǎng)劃分時,從主機臺數(shù)最多到最少依次進行[5];②每一個子網(wǎng)劃分完畢需要數(shù)出下一個IP 地址的二進制表示數(shù);③計算出需要的最少主機位數(shù),從IP 地址二進制表示的最右邊起數(shù)出的主機位數(shù)即為主機號,將主機號從全0 數(shù)到全1 就是所能分配的IP 地址表示范圍(除過全0和全1)。
掌握這三個要點,子網(wǎng)劃分問題的難題就迎刃而解。
相同點:
⑴兩種方法基本前提都一樣,都需要將十進制的IP地址表示轉換為相應的二進制表示。
⑵都需要從主機數(shù)最多到最少依次進行子網(wǎng)劃分。
⑶都需要先計算出至少的主機位數(shù),確定主機號。
不同點:
VLSM 的子網(wǎng)劃分方法是從子網(wǎng)號出發(fā),劃分出相應的子網(wǎng),從IP 地址的最左邊到右邊進行,而該論文提出的以主機號為核心的子網(wǎng)劃分方法打破了傳統(tǒng)的從子網(wǎng)劃分的角度出發(fā),改為確定主機號,以主機號為核心,從IP 地址的最右邊開始,不需要考慮子網(wǎng)號是如何劃分的,這樣大大減輕了思考的難度,直接做出符合網(wǎng)絡工程實踐要求的結果。
筆者在高職院校的實際教學過程中做過一個測試,針對相同的六個計算機網(wǎng)絡專業(yè)班的學生,采用可變長子網(wǎng)掩碼劃分的方法講解[6],學生聽的效果不是太好,課堂反映較差。后來正值疫情期間在線上課,采用以主機號為核心的子網(wǎng)劃分方法,學生聽的效果良好,課后在做項目實訓時,也能夠根據(jù)講解的內容獨立完成。如圖1所示。
圖1 以主機為核心的子網(wǎng)劃分講解
筆者曾在本科院校教授以謝希仁教授編著的《計算機網(wǎng)絡》教材為導向的計算機網(wǎng)絡課程,對計算機網(wǎng)絡子網(wǎng)劃分做過深入的研究和探索,但是對于高職院校的學生,更需要的是一種簡單、容易掌握,能夠應用于實踐操作的子網(wǎng)劃分的方法。筆者在多年的計算機網(wǎng)絡教學過程中總結出了一套以主機為核心的子網(wǎng)劃分方法,本文已經(jīng)做了詳細的闡述,初步應用到教學實踐中,效果良好。
從教學的過程中,筆者深深體會到,解決一個問題,遇到瓶頸期,可以轉換思路。希望在未來的教學生涯中,能夠領悟更多的方法,應用于教學實踐中,造福于我們的學生,為國家為社會培養(yǎng)出更多的能夠適應企業(yè)造福于于社會的具有一定的計算機網(wǎng)絡專業(yè)素質的合格人才。