劉世華 張小紅
摘 要:目前,為了便于管理,很多計(jì)算機(jī)實(shí)驗(yàn)室都采用了還原卡來保護(hù)系統(tǒng)穩(wěn)定性、安全性和完整性,但對(duì)于操作系統(tǒng)安裝和要求系統(tǒng)重啟的實(shí)驗(yàn)來說,還原卡又帶來了諸多不便。該文介紹了采用虛擬機(jī)技術(shù)構(gòu)建計(jì)算機(jī)實(shí)驗(yàn)室的方案,該方案在一臺(tái)PC上安裝多臺(tái)虛擬機(jī)并構(gòu)建成內(nèi)部局域網(wǎng),不僅解決了系統(tǒng)重啟與還原卡沖突的問題,也簡化了學(xué)生實(shí)驗(yàn)分組的管理;同時(shí)還提供了網(wǎng)絡(luò)類相關(guān)課程實(shí)驗(yàn)的統(tǒng)一實(shí)驗(yàn)平臺(tái)。
關(guān)鍵詞:虛擬機(jī) VirtualBox 實(shí)驗(yàn)室 還原卡
中圖分類號(hào):G250.73文獻(xiàn)標(biāo)識(shí)碼:B 文章編號(hào):1673-8454(2009)19-0052-03
一、問題描述
目前,為了便于管理,很多計(jì)算機(jī)實(shí)驗(yàn)室都采用了還原卡來保護(hù)系統(tǒng)穩(wěn)定完整,但對(duì)于操作系統(tǒng)安裝和要求系統(tǒng)重啟的實(shí)驗(yàn)來說,還原卡又帶來了諸多不便。此外,對(duì)于網(wǎng)絡(luò)相關(guān)課程,一般都要求幾臺(tái)計(jì)算機(jī)組網(wǎng)并對(duì)學(xué)生進(jìn)行分組實(shí)驗(yàn)。分組實(shí)驗(yàn)的好處是實(shí)驗(yàn)環(huán)境比較真實(shí),同學(xué)之間可以相互協(xié)作,缺點(diǎn)在于學(xué)生管理復(fù)雜,一個(gè)同學(xué)一組的情況,實(shí)驗(yàn)設(shè)備有限,實(shí)驗(yàn)室建設(shè)成本高;對(duì)于多人分組的情況,有可能會(huì)出現(xiàn)一些同學(xué)“濫竽充數(shù)”,此外,由于任務(wù)分工,也有可能使同學(xué)對(duì)知識(shí)掌握不夠全面。
根據(jù)作者在網(wǎng)絡(luò)操作系統(tǒng)課程中的實(shí)踐,采用虛擬機(jī)技術(shù)在一臺(tái)PC機(jī)上安裝多臺(tái)虛擬機(jī)并構(gòu)建成一個(gè)內(nèi)部虛擬局域網(wǎng),很好地解決了上述難題。
二、虛擬機(jī)技術(shù)
虛擬機(jī)技術(shù),即在一臺(tái)物理PC機(jī)上,采用為一個(gè)軟件抽象層將單個(gè)物理硬件平臺(tái)虛擬成多個(gè)虛擬機(jī),使不同的操作系統(tǒng)可以在其上同時(shí)運(yùn)行。[1] 隨著硬件性能的進(jìn)一步提高和網(wǎng)絡(luò)安全威脅的升級(jí),虛擬機(jī)技術(shù)在設(shè)備復(fù)用和系統(tǒng)安全領(lǐng)域又得到了越來越廣泛的應(yīng)用。
目前,實(shí)驗(yàn)室配置的一臺(tái)普通2000~3000元的PC機(jī)(內(nèi)存2G,硬盤160G)上同時(shí)運(yùn)行三臺(tái)虛擬機(jī)(安裝Windows Server2003)都已經(jīng)比較流暢,這也為虛擬機(jī)組建虛擬實(shí)驗(yàn)網(wǎng)奠定了基礎(chǔ)。
1.常用虛擬機(jī)選擇
目前,常見的虛擬機(jī)軟件主要有VMWare、VirtualBox、Virtual PC三種,根據(jù)作者的使用經(jīng)驗(yàn),從易用性、占用系統(tǒng)資源、運(yùn)行性能、支持平臺(tái)、穩(wěn)定性、應(yīng)用場合等方面對(duì)它們進(jìn)行了一個(gè)主觀的比較,如表1所示。
以上比較沒有經(jīng)過嚴(yán)格的測試,總體來說,三款虛擬機(jī)軟件都很優(yōu)秀,基本都適合日常的需求,從占用系統(tǒng)資源、支持平臺(tái)和使用經(jīng)驗(yàn)等來看,我們選用了VirtualBox。
2.VirtualBox網(wǎng)絡(luò)模式
選用VirtualBox的另一個(gè)重要原因是其網(wǎng)絡(luò)模式適合網(wǎng)絡(luò)實(shí)驗(yàn)室的使用場合。與VMWare類似,VirtualBox虛擬機(jī)也支持多種網(wǎng)絡(luò)模式。[2][3]
(1)NAT模式
這是VirtualBox缺省的網(wǎng)絡(luò)模式,也是虛擬機(jī)聯(lián)網(wǎng)最簡單的方式之一,它不需要對(duì)虛擬機(jī)進(jìn)行任何的配置。它就像一臺(tái)實(shí)際的計(jì)算機(jī)通過路由器聯(lián)網(wǎng)一樣,當(dāng)然,這里的路由器是由VirtualBox網(wǎng)絡(luò)引擎來擔(dān)當(dāng)。VirtualBox網(wǎng)絡(luò)引擎內(nèi)置了一個(gè)DHCP服務(wù)器,自動(dòng)為虛擬機(jī)分配IP地址,虛擬機(jī)第一塊網(wǎng)卡分配的是私網(wǎng)地址10.0.2.0/24,第二塊網(wǎng)卡采用10.0.3.0/24,以此類推。VirtualBox最多支持四塊網(wǎng)卡。虛擬機(jī)采用私網(wǎng)地址通過網(wǎng)絡(luò)引擎提供的網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)服務(wù)進(jìn)行聯(lián)網(wǎng),對(duì)宿主機(jī)(Host)網(wǎng)絡(luò)沒有任何影響。
不過,采用NAT模式也有一些缺點(diǎn),它與宿主機(jī)不在同一網(wǎng)段,無法通過網(wǎng)上鄰居共享數(shù)據(jù);對(duì)于ICMP協(xié)議和UDP廣播的支持并不可靠;VPN穿越還存在問題。
(2)Host Interface模式
宿主機(jī)接口模式(Host Interface)是在宿主機(jī)系統(tǒng)中添加一個(gè)稱為“網(wǎng)絡(luò)過濾器”的設(shè)備驅(qū)動(dòng),它可以截取宿主機(jī)物理網(wǎng)卡的數(shù)據(jù)幀并通過過濾來決定是發(fā)給宿主機(jī)還是發(fā)給虛擬機(jī)。虛擬機(jī)發(fā)送的數(shù)據(jù)也是通過該驅(qū)動(dòng)插入到物理網(wǎng)卡中發(fā)送,對(duì)于用戶來說,虛擬機(jī)使用的就是物理計(jì)算機(jī)的物理網(wǎng)卡。
Host Interface模式可以使虛擬機(jī)和宿主機(jī)處于同一網(wǎng)段,其網(wǎng)絡(luò)工作模式跟一臺(tái)獨(dú)立的物理計(jì)算機(jī)的上網(wǎng)過程類似。因此,它對(duì)宿主機(jī)可以通過網(wǎng)上鄰居進(jìn)行數(shù)據(jù)共享。
(3)Internal Network模式
內(nèi)部網(wǎng)絡(luò)模式是VirtualBox比較有特色的一種網(wǎng)絡(luò)模式,它為同一臺(tái)宿主機(jī)上多個(gè)虛擬機(jī)相互通信提供網(wǎng)絡(luò)服務(wù),它采用虛擬交換機(jī)將多臺(tái)虛擬機(jī)進(jìn)行互連。雖然采用Host Interface模式也可以將多臺(tái)虛擬機(jī)互連,但內(nèi)部網(wǎng)絡(luò)模式有其獨(dú)特的優(yōu)勢:它比較安全,虛擬機(jī)網(wǎng)絡(luò)與宿主機(jī)網(wǎng)絡(luò)沒有聯(lián)系,對(duì)宿主機(jī)網(wǎng)絡(luò)沒有任何影響,且由于不用經(jīng)過物理網(wǎng)卡的過濾處理,其效率也更高。本文討論的實(shí)驗(yàn)環(huán)境搭建就是采用該網(wǎng)絡(luò)模式來進(jìn)行構(gòu)建。
二、虛擬機(jī)實(shí)驗(yàn)室構(gòu)建方案
1.實(shí)驗(yàn)環(huán)境
對(duì)于計(jì)算機(jī)實(shí)驗(yàn)室常見的實(shí)驗(yàn)課程,主要有裝配類、組網(wǎng)類等幾種,常見課程如:計(jì)算機(jī)組裝與維護(hù)、計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、網(wǎng)絡(luò)操作系統(tǒng)、網(wǎng)絡(luò)安全等。[4]綜合考慮各門課程的特點(diǎn),除了涉及交換機(jī)和路由器配置的“路由與交換”等少數(shù)高級(jí)網(wǎng)絡(luò)課程外,常見課程都可以采用如圖1所示拓?fù)浣Y(jié)構(gòu)來設(shè)置實(shí)驗(yàn)環(huán)境,即一個(gè)實(shí)驗(yàn)中配置兩臺(tái)服務(wù)器和一臺(tái)客戶機(jī)來模擬一個(gè)企業(yè)局域網(wǎng)。
文獻(xiàn)[2]、[4]、[5]、[6]給出了各門課程應(yīng)用虛擬機(jī)技術(shù)設(shè)置網(wǎng)絡(luò)實(shí)驗(yàn)環(huán)境的經(jīng)驗(yàn)和可行方案,且都基于VMWare虛擬機(jī)軟件進(jìn)行構(gòu)建。由于虛擬機(jī)軟件的升級(jí),目前采用VirtualBox虛擬機(jī)構(gòu)建上述實(shí)驗(yàn)平臺(tái)更加簡單方便,且可以構(gòu)建如圖1所示的虛擬內(nèi)部局域網(wǎng),從而為上述所有網(wǎng)絡(luò)類相關(guān)課程的實(shí)驗(yàn)提供一個(gè)統(tǒng)一的實(shí)驗(yàn)平臺(tái)。
2.實(shí)驗(yàn)環(huán)境網(wǎng)絡(luò)配置
采用VirtualBox新建三臺(tái)虛擬機(jī),可以根據(jù)特定的需要安裝Windows Server 2003、Windows 2000 Server作為服務(wù)器,安裝Windows XP作為客戶端操作系統(tǒng)。由于VirtualBox可以支持目前所有的主流操作系統(tǒng),因此,也可以根據(jù)需要?jiǎng)?chuàng)建Linux、Solaris等系統(tǒng)的虛擬機(jī),進(jìn)行混合組網(wǎng)實(shí)驗(yàn)。
在VirtualBox新建虛擬機(jī)的操作比較簡單,根據(jù)新建向?qū)нM(jìn)行即可,在組建圖1所示的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)時(shí),需要注意的就是網(wǎng)絡(luò)模式的配置。[7]
前面已經(jīng)介紹,采用Host Interface模式和Internal Network模式都可以構(gòu)建該拓?fù)浣Y(jié)構(gòu),考慮到實(shí)驗(yàn)室宿主機(jī)的安全性和效率,筆者推薦采用后者。
Internal Network模式的配置如圖2所示,在所有需要連接到該虛擬內(nèi)部局域網(wǎng)的虛擬機(jī)上設(shè)置網(wǎng)絡(luò)模式為“Internal Network”。在VirtualBox主程序窗口左邊虛擬機(jī)列表中選定要設(shè)置的虛擬機(jī),然后點(diǎn)擊“設(shè)置”按鈕,打開虛擬機(jī)的詳細(xì)設(shè)置界面,然后找到“網(wǎng)絡(luò)”設(shè)置項(xiàng),在其中勾選“啟用網(wǎng)絡(luò)連接”,然后在“連接方式”一欄中選定“Internal Network”,接著在“網(wǎng)絡(luò)名稱”一欄中設(shè)定一個(gè)名稱如“Intranet”(該名稱可以自行設(shè)定)。
在其他需要聯(lián)網(wǎng)的虛擬機(jī)上采用同樣的設(shè)置,這時(shí)“網(wǎng)絡(luò)名稱”一項(xiàng)中默認(rèn)就是剛剛設(shè)置的“Intranet”,各虛擬機(jī)之間聯(lián)網(wǎng),一定要確保連接方式都是“Internal Network”并且其名稱都是一樣的。網(wǎng)絡(luò)屬性設(shè)置好后,還需要進(jìn)入虛擬機(jī)系統(tǒng),手工進(jìn)行IP地址等網(wǎng)絡(luò)屬性的配置。如IP地址都設(shè)置為172.16.1.0/24地址段。
三、虛擬網(wǎng)絡(luò)實(shí)驗(yàn)環(huán)境的優(yōu)勢
本文描述的虛擬網(wǎng)絡(luò)實(shí)驗(yàn)環(huán)境在筆者開設(shè)的“計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)”和“網(wǎng)絡(luò)操作系統(tǒng)”課程中采用,應(yīng)用效果良好,學(xué)生反應(yīng)也不錯(cuò)。與傳統(tǒng)實(shí)驗(yàn)?zāi)J较啾?基于虛擬機(jī)技術(shù)構(gòu)建的虛擬網(wǎng)絡(luò)實(shí)驗(yàn)環(huán)境具有如下優(yōu)勢:
(1)與還原卡兼容:采用虛擬機(jī)技術(shù)的虛擬網(wǎng)絡(luò)環(huán)境,不僅能夠保證操作系統(tǒng)類需要重啟計(jì)算機(jī)才能實(shí)現(xiàn)的實(shí)驗(yàn)?zāi)軌蝽樌M(jìn)行,同時(shí)又保證了宿主機(jī)還原卡的保護(hù)作用。利用還原卡的還原功能,還能額外地達(dá)到虛擬機(jī)實(shí)驗(yàn)配置結(jié)果自動(dòng)清除還原的效果;此外,對(duì)于計(jì)算機(jī)類的其他課程,只要不啟動(dòng)VirtualBox虛擬機(jī)軟件,就不會(huì)占用系統(tǒng)資源,也不會(huì)對(duì)機(jī)房做其他課程實(shí)驗(yàn)產(chǎn)生影響,這有利于計(jì)算機(jī)機(jī)房的管理和綜合利用。
(2)安全可靠性高:由于同一個(gè)實(shí)驗(yàn)室的計(jì)算機(jī)一般都連接在同一個(gè)局域網(wǎng)中,在網(wǎng)絡(luò)實(shí)驗(yàn)中的一些配置錯(cuò)誤如IP地址沖突等有可能會(huì)影響網(wǎng)絡(luò)的穩(wěn)定性和效率;此外,有些服務(wù)器的配置,如DHCP服務(wù)器,在一個(gè)局域網(wǎng)中進(jìn)行配置是不太適合的。而采用本虛擬實(shí)驗(yàn)環(huán)境,每一臺(tái)物理機(jī)器上的的三臺(tái)虛擬機(jī)采用“Internal Network”網(wǎng)絡(luò)模式構(gòu)成了一個(gè)獨(dú)立的虛擬局域網(wǎng),對(duì)其他物理主機(jī)和整個(gè)物理網(wǎng)絡(luò)沒有任何影響。這既保證了實(shí)驗(yàn)課程的順利進(jìn)行,也保證了物理主機(jī)和實(shí)際網(wǎng)絡(luò)的安全可靠性。
(3)利于實(shí)驗(yàn)的統(tǒng)一管理和檢查:由于虛擬局域網(wǎng)與外界是隔離的,因此,每臺(tái)主機(jī)上的虛擬實(shí)驗(yàn)環(huán)境可以嚴(yán)格配置成一樣的,包括IP地址的規(guī)劃,服務(wù)器的設(shè)置等都一摸一樣,這樣有利于課程實(shí)驗(yàn)的統(tǒng)一管理和實(shí)驗(yàn)結(jié)果的檢查對(duì)照。
(4)利于學(xué)生管理:由于一臺(tái)物理主機(jī)就可以構(gòu)成一個(gè)虛擬實(shí)驗(yàn)網(wǎng)絡(luò),因此,學(xué)生就不用再進(jìn)行分組,每個(gè)學(xué)生就是一組,每個(gè)學(xué)生獨(dú)立完成服務(wù)器和客戶機(jī)的所有配置,這樣既減少了學(xué)生分組管理的麻煩,也克服了學(xué)生分工不均和操作不全面等缺點(diǎn)。
(5)成本低效率高:采用虛擬實(shí)驗(yàn)網(wǎng)絡(luò),可以以較低的成本提供更多的網(wǎng)絡(luò)實(shí)驗(yàn)分組設(shè)施,同時(shí)也不用為了網(wǎng)絡(luò)類課程的實(shí)驗(yàn)專門設(shè)置專用的分組配置機(jī)房。由于沒有分組設(shè)備的管理,也不用對(duì)專門網(wǎng)絡(luò)設(shè)備進(jìn)行維護(hù),機(jī)房維護(hù)相對(duì)簡單;網(wǎng)絡(luò)類課程實(shí)驗(yàn)還可以與其他計(jì)算機(jī)類甚至經(jīng)管文科類課程實(shí)驗(yàn)共用機(jī)房,因此,其建設(shè)成本低而效率高。
四、小結(jié)
本文對(duì)現(xiàn)有計(jì)算機(jī)機(jī)房進(jìn)行網(wǎng)絡(luò)類課程實(shí)驗(yàn)所存在的問題進(jìn)行了分析,提出了采用VirtualBox虛擬機(jī)技術(shù)構(gòu)建虛擬網(wǎng)絡(luò)實(shí)驗(yàn)環(huán)境的解決方案。本文首先介紹了虛擬機(jī)技術(shù)的可行性和常見虛擬機(jī)軟件,并選用了VirtualBox虛擬機(jī)軟件進(jìn)行實(shí)驗(yàn)環(huán)境的構(gòu)建;接著介紹了VirtualBox虛擬機(jī)支持的幾種聯(lián)網(wǎng)模式并比較了他們的優(yōu)缺點(diǎn);然后重點(diǎn)分析了網(wǎng)絡(luò)課程的特點(diǎn)并提出了通用的虛擬網(wǎng)絡(luò)實(shí)驗(yàn)環(huán)境的拓?fù)浣Y(jié)構(gòu)及其在虛擬機(jī)的實(shí)現(xiàn)方案;最后分析了該方案所具備的幾大優(yōu)勢。從教學(xué)應(yīng)用效果來看,該方案切實(shí)可行,值得推廣。
參考文獻(xiàn):
[1]劉真.虛擬機(jī)技術(shù)的復(fù)興[J].計(jì)算機(jī)工程與科學(xué),2008,30(2).
[2]王永昭.利用虛擬機(jī)搭建計(jì)算機(jī)網(wǎng)絡(luò)教學(xué)實(shí)驗(yàn)環(huán)境[J].實(shí)驗(yàn)室科學(xué),2008(8).
[3]Sun Microsystems,Inc. Sun xVM VirtualBox User Manual [OL],http://download.virtualbox.org/virtualbox/2.1.4/UserManual.pdf,2009.3.
[4]周翔鷹,范開濤,劉鴻.虛擬機(jī)輔助計(jì)算機(jī)實(shí)驗(yàn)教學(xué)探討[J].昆明理工大學(xué)學(xué)報(bào)(理工版),2008(4).
[5]周軍.虛擬機(jī)在《計(jì)算機(jī)組裝與維護(hù)》實(shí)訓(xùn)教學(xué)中的應(yīng)用[J].重慶科技學(xué)院學(xué)報(bào)(自然科學(xué)版),2008(4).
[6]韓迎春.使用虛擬機(jī)技術(shù)搭建網(wǎng)絡(luò)安全教學(xué)的平臺(tái)[J].昆明冶金高等??茖W(xué)校學(xué)報(bào),200(9).
[7]劉世華.VirtualBox虛擬機(jī)使用指南[OL],http://blog.chinaunix.net/u2/73637/showart_1841231.html,2009(2).
(編輯:楊馥紅)