构建基于UNIX服务器下的C/S型无盘网络
2015-10-11席世海
王 洲,席世海
(1.贵州师范大学 数学与计算机科学学院,贵州 贵阳 550002;2.铜仁学院 物理与电子工程学院,贵州 铜仁 554300 )
构建基于UNIX服务器下的C/S型无盘网络
王洲1,席世海2
(1.贵州师范大学 数学与计算机科学学院,贵州 贵阳 550002;2.铜仁学院物理与电子工程学院,贵州 铜仁 554300 )
根据客户端网卡启动芯片PXE或固化在BIOS中的启动程序以不同的机制向服务器发出启动请求信号的原理,构建基于UNIX服务器下的C/S型无盘网络,既节省了网络构建和维护所需的财力、人力,也保障了网络运行和扩展的安全。
无盘网络;服务器;客户端;UNIX
1.引言
纵观人类科学技术的发展史,人们发明了技术,而技术本身又为人类服务。被形象地喻为“信息高速公路”的计算机网络正以其可靠性强、性价比高和扩充性好等众多优点渗入到社会的各个领域并扮演着重要的角色。随着网络技术日新月异的蓬勃发展,推动了人类社会与时俱进。为了充分利用和共享网络资源,各个政府部门、组织机构、企事业单位和教育领域等都正在积极地构建和发展各自的网络(有盘网络和无盘网络、B/S型网络和C/S型网络等)。而无盘网络构建的最初目的是为了节省投入成本,但在真正的使用中发现无盘网络有着有盘网络无与伦比的稳定性、安全性和可靠性,在具体的维护中无盘网络比有盘网络更省时省事。
UNIX是一个功能强、性能好和应用广的多用户、多任务且采用批处理方式而又支持多种处理器架构的分时操作系统[1]。UNIX因具有可靠性高、伸缩性强、开放性好和代码开放等特点而备受人们的青睐。同时它又是根植于网络和面向数据库使用,其已成为当今社会主流的网络操作系统。当前UNIX逐渐朝着高端产业方向发展,而高端产业的服务器大部分使用的是UNIX平台。运用卓越的设计思想和先进的架构技术在UNIX服务器下组建C/S型结构的无盘网络,其运行更为畅通,管理极其便捷。
2.无盘网络的特点
2.1.安装与管理方便
网管的主要工作就是保证网络系统以及该系统中每台客户机的正常运行。在有盘网络中如果出现客户机软故障或需要对系统更新时,需要通过“主客户机”对“从客户机”一一重传,这会花费大量的时间。而无盘网络只需通过服务器就可以管理整个网络,安装或更新软件(如游戏更新)只需要在一台机器上进行即可,对全网系统的维护相当于是对服务器的维护,无需为每个客户机进行一一处理,这样为网络管理节省了大量的时间且易于管理和维护。
2.2.安全与稳定性好
通过网络系统将服务器上的磁盘映像文件映射为本地磁盘文件,使其客户端上的数据资料集中控制、管理、存储和软件安装都只需要在服务器一端进行,所有终端皆可共享,即使掉电,也不会造成资料丢失,达到了更高的数据安全级别,确保终端系统稳定可靠,防止病毒入侵和黑客攻击。
2.3.备份与分流协作
网络向大型和多元化方向发展,采用独特方法优化网络通信,可解决客户端互联问题和多服务器备份。同时,可配置多个服务器,当然一个服务器也支持多网卡,为工作站提供服务,实现客户端从不同服务器读取系统文件,使服务器的负载能力均衡,运行流畅。
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]。
4.无盘网络的规划及布线
本网络系统仅以设备子系统和建筑群子系统为例,采用二级星型拓扑结构的方式进行综合布线(如图1所示)。
4.1.设备子系统
设备子系统是每一建筑群的交汇点,主要由设备间的电缆/光缆、路由器、服务器、防火墙和交换机(集线器HUB)等组成。
4.2.建筑群子系统
建筑群子系统作为扩展的一个子系统,它可以将一个建筑物的连线扩展到另外一些建筑物中的通信设备和装置上。该系统中主要有电缆/光缆、交换机和终端设备等。
图1 网络规划及布线
5.无盘网络的组建方法及步骤
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级计算机科学与技术系学生。