王 洲,席世海
(1.貴州師范大學 數學與計算機科學學院,貴州 貴陽 550002;2.銅仁學院 物理與電子工程學院,貴州 銅仁 554300 )
構建基于UNIX服務器下的C/S型無盤網絡
王洲1,席世海2
(1.貴州師范大學 數學與計算機科學學院,貴州 貴陽 550002;2.銅仁學院物理與電子工程學院,貴州 銅仁 554300 )
根據客戶端網卡啟動芯片PXE或固化在BIOS中的啟動程序以不同的機制向服務器發出啟動請求信號的原理,構建基于UNIX服務器下的C/S型無盤網絡,既節省了網絡構建和維護所需的財力、人力,也保障了網絡運行和擴展的安全。
無盤網絡;服務器;客戶端;UNIX
縱觀人類科學技術的發展史,人們發明了技術,而技術本身又為人類服務。被形象地喻為“信息高速公路”的計算機網絡正以其可靠性強、性價比高和擴充性好等眾多優點滲入到社會的各個領域并扮演著重要的角色。隨著網絡技術日新月異的蓬勃發展,推動了人類社會與時俱進。為了充分利用和共享網絡資源,各個政府部門、組織機構、企事業單位和教育領域等都正在積極地構建和發展各自的網絡(有盤網絡和無盤網絡、B/S型網絡和C/S型網絡等)。而無盤網絡構建的最初目的是為了節省投入成本,但在真正的使用中發現無盤網絡有著有盤網絡無與倫比的穩定性、安全性和可靠性,在具體的維護中無盤網絡比有盤網絡更省時省事。
UNIX是一個功能強、性能好和應用廣的多用戶、多任務且采用批處理方式而又支持多種處理器架構的分時操作系統[1]。UNIX因具有可靠性高、伸縮性強、開放性好和代碼開放等特點而備受人們的青睞。同時它又是根植于網絡和面向數據庫使用,其已成為當今社會主流的網絡操作系統。當前UNIX逐漸朝著高端產業方向發展,而高端產業的服務器大部分使用的是UNIX平臺。運用卓越的設計思想和先進的架構技術在UNIX服務器下組建C/S型結構的無盤網絡,其運行更為暢通,管理極其便捷。
2.1.安裝與管理方便
網管的主要工作就是保證網絡系統以及該系統中每臺客戶機的正常運行。在有盤網絡中如果出現客戶機軟故障或需要對系統更新時,需要通過“主客戶機”對“從客戶機”一一重傳,這會花費大量的時間。而無盤網絡只需通過服務器就可以管理整個網絡,安裝或更新軟件(如游戲更新)只需要在一臺機器上進行即可,對全網系統的維護相當于是對服務器的維護,無需為每個客戶機進行一一處理,這樣為網絡管理節省了大量的時間且易于管理和維護。
2.2.安全與穩定性好
通過網絡系統將服務器上的磁盤映像文件映射為本地磁盤文件,使其客戶端上的數據資料集中控制、管理、存儲和軟件安裝都只需要在服務器一端進行,所有終端皆可共享,即使掉電,也不會造成資料丟失,達到了更高的數據安全級別,確保終端系統穩定可靠,防止病毒入侵和黑客攻擊。
2.3.備份與分流協作
網絡向大型和多元化方向發展,采用獨特方法優化網絡通信,可解決客戶端互聯問題和多服務器備份。同時,可配置多個服務器,當然一個服務器也支持多網卡,為工作站提供服務,實現客戶端從不同服務器讀取系統文件,使服務器的負載能力均衡,運行流暢。
無盤最基本的實現原理就是利用底層技術通過網絡系統將服務器上的磁盤映像文件IMG模擬成本地磁盤,并使其啟動。具體的啟動過程是:(1)當工作站加電后,主板中的BIOS程序完成自檢,然后由客戶端網卡的啟動芯片PXE或嵌入在主板BIOS中固化的啟動程序以各種不同的機制向服務器發出啟動“請求”信號,檢查無盤工作站在網絡服務器上的啟動授權情況,如果允許工作站啟動則返回一個“回答”信號;(2)當服務器收到該信號后,引導程序在啟動數據庫中查找相應記錄并根據不同的機制(RPL、PXE或BOOTP)向客戶端發送相匹配的啟動信號;(3)等待客戶端下載完服務器送來的啟動信號后,系統控制權交給PXE并由PXE轉入內存中的一些特定區域來引導操作系統完成啟動。簡言之,服務器與客戶端之間采用的是一種“握手”方式。
3.1.RPL(Remote Initial Program Load遠程初始化程序引導)啟動原理
客戶端開機后,立即初始化自身網卡,使網卡芯片PXE或嵌入在主板BIOS中固化的啟動程序向本網絡系統廣播一個包含客戶機網卡ID號的FIND引導請求幀。當服務器的遠程啟動服務接收到客戶端送來的FIND找到幀后,確認幀中所帶的網卡物理地址MAC和邏輯地址 IP信息在遠程啟動服務器數據庫中查找相應的客戶端記錄。查找的結果有兩種可能:一是該客戶端記錄未找到,則引導過程失敗;二是該客戶端記錄已找到,則遠程啟動服務發送一個FOUND幀給客戶端的RPLROM。此時的RPLROM收到服務器發送來的 FOUND幀后,也照樣回發一個SEND.FILE.REQUEST請求幀,要求服務器發送文件的請求幀給對應的服務器(有多個服務器的情況)。當服務器接收到客戶端發來的SEND.FILE.REQUEST幀后,根據啟動數據庫中的記錄查找對應的啟動塊(BOOTBLOCK)并回送給客戶端的RPLROM[2]。RPLROM接收完所有的FILE.DAT.RESPONSE幀后,將執行點轉向啟動塊的入口處來啟動客戶端系統。
客戶端以WINDOWS實模式啟動后,創建一個由內存虛擬出來用作系統緩存的 RAM 盤,并將WINDOWS實模式文件從遠程啟動服務器拷貝到RAM盤來加載WINDOWS實模式網絡設備啟動,同時建立一個SBS服務器連接[2]。最后,連接到該客戶端的計算機目錄(MACHINE DIRECTORY)所在服務器完成客戶端上WINDOWS操作系統的啟動過程。
3.2.PXE(Preboot Execution Environment預啟動執行環境)啟動原理
客戶端開機后,在TCP/IP PXE獲得控制權之前先做自我測試,隨后由客戶端的BOOTPROM向服務器送出BOOTP/DHCP服務要求以獲得IP信息[3]。如果服務器收到客戶端發來的請求后,送回包含客服端的 IP地址、預設網關和開機映像文件的BOOTP/DHCP回應。BOOTPROM由TFTP(TFTP可以看成一個簡化的 FTP,不需要認證客戶端的權限)簡單傳輸協議從服務器下載開機映像文件,通過開機映像文件在客戶端內存模擬成磁盤并從這個磁盤啟動系統。
3.3.BOOTP(BOOT Strap Protocol引導程序協議)啟動原理
BOOTP是 UNIX系統中較早出現的一種負責Unixt終端遠程啟動協議,主要用于無盤工作站向服務器獲得 IP、網關和啟動映像文件名等。它的啟動是由BOOTROM芯片中的BOOTP啟動代碼,以IP地址0.0.0.0的形式向網絡中廣播IP地址,并查詢客戶端網卡 MAC物理地址的請求。當網絡中運行BOOTP服務的服務器收到這個請求幀后,根據這個幀中的MAC地址在BOOTPTAB啟動數據庫中查找MAC的記錄。若記錄未找到則不響應該請求;若記錄找到則將包含客戶端和服務器的IP地址、硬件類型、網關、客戶端 MAC地址和啟動映像文件的FOUND幀發送回客戶端。客戶端根據FOUND幀中的信息通過TFTP服務器下載啟動映像文件,并將此文件在客戶端內存中模擬成磁盤從而啟動系統[3]。
本網絡系統僅以設備子系統和建筑群子系統為例,采用二級星型拓撲結構的方式進行綜合布線(如圖1所示)。
4.1.設備子系統
設備子系統是每一建筑群的交匯點,主要由設備間的電纜/光纜、路由器、服務器、防火墻和交換機(集線器HUB)等組成。
4.2.建筑群子系統
建筑群子系統作為擴展的一個子系統,它可以將一個建筑物的連線擴展到另外一些建筑物中的通信設備和裝置上。該系統中主要有電纜/光纜、交換機和終端設備等。

圖1 網絡規劃及布線
5.1.UNIX服務器的安裝及設置
在服務器端安裝UNIX操作系統后進行設置:
(1)在本地連接的 TCP/IP屬性中添加IPX/SPX/NETBIOS協議并設置 IP地址(如192.168.1.254)、子網掩碼(如255.255.255.0)、默認網關(可與IP地址相同)。
(2)安裝銳起server版無盤軟件。
(3)在DHCP服務中將無盤“XP輔助服務”和無盤“XP數據服務”進行手動停止,然后用從server版的無盤軟件中解壓出來的 DlXPdhcp.exe和Manager.exe替換原始文件,再手動重啟上述倆服務。(4)重啟計算機,打開無盤XP管理器對話框(如圖2所示),根據對話框的提示分別建立三個文件夾,而“默認磁盤目錄”用來存放*.im映像文件,讀寫最為頻繁的能將其獨占一個分區或硬盤為佳。指定完三個文件夾的路徑之后,即可以進入無盤XP管理器(如圖 3所示)并進行管理器的相應設置(值得注意的是工作站一定要設置為“超級用戶”)。

圖2 無盤網絡管理設置

圖3 無盤網絡管理器
(5)完成以上基本(可做更多設置)設定后,關閉無盤XP管理器,進入系統的“管理工具/服務”,再次停止上述的兩個服務,把剛才解壓的最后一個RTIPOSRV.EXE文件替換掉原始文件后再啟動上述兩個服務。
5.2.UNIX服務器DHCP的配置

5.3.WINDOWS客戶端的安裝及設置
在客戶端安裝好Windows XP或Windows 7操作系統后進行如下設置:
(1)更改“主客戶”機的計算機名(也可不做修改),在本地連接的TCP/IP屬性中卸載“QOS數據包計劃程序”和添加“IPX/SPX/NETBIOS協議”;指定IP地址且一定要與上述的“無盤XP管理器”為該機分配的地址相同,方能連接虛擬映像盤RAM。
(2)安裝銳起clien版無盤軟件。
(3)重啟計算機后,在“計算機管理/磁盤管理”中對其出現的80GB硬盤進行分區和NTF格式化。
(4)重啟計算機后,以管理員身份登陸系統后進行上傳操作(如圖4所示),待上傳完畢后再關閉該計算機并取下硬盤。

圖4 系統上傳過程
(5)重啟計算機后,陸續啟動其他不帶硬盤的客戶機,并依次輸入每臺計算機名和IP地址即可(第一次啟動時要求輸入計算機名和IP地址,以后默認啟動)。
[1]李林英.操作系統原理UNIX篇[M].北京:清華大學出版社,2006.
[2]俞席忠.無盤網絡完全教程[M].北京:清華大學出版社,2004.
[3]藍宇.無盤工作站組建、應用、維護實戰精通[M].北京:人民郵電出版社,2004.
[4]馬孝榮.UNIX和Linux自動化管理[M].北京:電子工業出版社,2004.
[5]王興.Linux網絡服務器應用教程[M].北京:中國鐵道出版社,2009.
[6]林麗紅.淺談PXE的無盤終端網絡技術[J].吉林省經濟管理干部學院學報,2009,23(1):72-75.
The C/S Type Diskless Network (CTDN) Based on UNIX Server
WANG Zhou1,XI Shihai2
(1. School of Mathematics and Computer Science,Guizhou Normal University,Guiyang,Guizhou 550002,China;2. School of Physics and Electronic Engineering,Tongren University,Tongren,Guizhou 554300,China )
According to the principle that the client PXE card or the program with different mechanism of solidification in the BIOS requests starting signal to the server,the C/S diskless network model were constructed based on the UNIX server. The model can not only save network build and maintains the required resources,human,but also improve the network brings security,convenient operation and extension.
diskless network,server,client,UNIX
TP301
A
1673-9639 (2015) 04-0125-04
(責任編輯 毛志)(責任校對 徐松金)(英文編輯 田興斌)
2015-03-07
本文系銅仁學院科研啟動基金項目(TS1119)研究成果。
王洲(1990-),男,土家族,貴州銅仁人,貴州師范大學數學與計算機科學學院2011級計算機科學與技術系學生。