免责声明:文中有一些图片来源自网络,如有版权请通知我删除,谢谢!
网络启动最早用于无盘系统,那时的电脑只配备软驱也没有网络,系统启动速度慢而且功能简单。后期虽然有了硬盘后,但造价昂贵、管理也十分的不方便。随之而来的就是各种网络启动技术的出现,让电脑不但有了网络功能,同时也不需要硬盘了。
以前的电脑
在这期间,有很多网络启动技术,我最早用的是Novell技术。当时我单位的学生机房共有48台学生机、1台教师机,但是只是用软盘启动DOS,软盘太容易损坏,教师机老师除了备课、上课以外,就是不断的用“HD-COPY”(用过的朋友私信我,估计我们是同龄人)复制软盘。当时我用这个Novell服务器、同轴缆NE2000网卡,实现了无盘启动DOS,再后来实现了无盘的Windows95。
同龄人认识的HD-Copy
Novell系统
NE2000同轴(细缆网卡)
随着WindowsNT的出现,windows开始出现Server版跟Workstations版。Windows的优点是窗口化的图形界面,但是磁盘占用也是不小,因此也需要无盘系统。但是的Windows无盘,采用的是多用户远程登录的办法,也就是网络启动后,通过远程桌面的方式登录Windows,引导协议是RPL,因此市场上大量出现了号称让“老机器”启动Win2000的产品。这种方式其实就是让“老机器”充当了一个终端(键盘、鼠标、显示器),所有运算均在服务器上执行。
RPL系统
无盘Windows2000
网络启动主要的硬件,就是块网卡,它上面通常有个集成电路插座,工程师将启动代码通过EPROM擦写器烧录到EPROM中,再插入插座,这是当计算机加点开机时,启动代码被执行,通过网络进行系统引导。
EPROM
网卡上的插座
目前最新的技术就是PXE启动协议了。PXE是Preboot eXecution Environment(预启动执行环境)的缩写,由Intel在1999年开发。最早也是需要烧录到EPROM中,但随着网卡被集成到主板上以后,PXE启动代码被写在了主板的CMOS芯片中,而且目前PXE已经成了主板默认标配,因此PXE网络启动已经大兴起到了。
大约在2002年,我利用PXE技术,实现了一个教师机房30多台电脑的无盘XP启动。当时底层用的是BXP(Venturcom公司开发)系统,网卡RTL8139不是集成,虽然有EPROM插座,但是我为了省钱,就将PXE启动代码与BIOS代码合并,写入了CMOS。
BXP无盘系统
当时的交换机还不错是两台CISCO Catalyst 1924,24个10M口,2个100M口,因此每台终端只有10Mbps连接,因此带机量不行,服务器网卡与交换机用100M连接,但是一块网卡卡顿严重,后来找领导申请再购买了一块网卡同时使用,网速就得到了提高。
CISCO Catalyst 1924
最终使用效果非常好,快速、静音、省电、易于管理,网线掉了机器也就是暂时定格,插上网线立刻恢复使用。
无盘WinXP
除了以上应用,我们还用过PXE启动后的GHOST网络克隆装机,给机房管理员节省了大量时间。日常工作也就是遇到个别系统损坏,无非是联网再传一次罢了。
GHOST网络克隆
转眼间,过去了将近20年,PXE仍旧是网络启动的主流,只是由于TFTP传输速度太慢,无法发挥当前100M、1000M到桌面的网络环境,出现了改进技术IPXE,使得网络带宽得到了充足的使用,因此我估计还能至少再火10年。
PXE启动原理
带有PXE启动代码计算机启动后,首先通过网卡发送DHCP Discover消息,请求获取ip、TFTP服务器地址、启动文件等信息。
DHCP Discover消息
负责PXE启动的DHCP服务器接到请求后,会给PXE发送一个IP地址,并告知TFTP服务地址、启动文件名称。
PXE获得到IP地址后,通过TFTP命令到TFTP服务器下载启动文件,开始启动。
这个过程告诉我们,PXE启动服务器,需要配置DHCP服务器,并在DHCP参数中给出TFTP地址、启动文件名称。服务器中还需要安装TFTP服务,用于下发启动文件。
PXE启动过程
下载后的启动文件,就决定了计算机后续的启动内容,是进行GHOST网络克隆呢?还是启动一个WinPE呢?还是启动一个Windows安装程序呢?还是启动一个BXP的无盘系统等等。
第一篇 启动WinPE
今天我们实际制作一个案例,就是利用PXE技术启动一个WinPE系统。
电脑WInPE
大家知道WinPE的作用就是装机或者计算机维护维修,最早的做法就是光盘启动,后来由于光盘速度慢而且容易损坏,因此都采用U盘方式了。
如果采用PXE启动方式,在一个单位的局域网中,管理员更加省事儿,U盘都不用带了,开机选择PXE启动即可。
开始操作前,我们准备如下内容:
1. 服务器,我这里用虚拟机代替,采用WindowsServer2019,需要看安装过程的请点击我的头像,看《WIndows Server 2019安装实录》,注意:虚拟机网卡采用NAT方式,如果用了“桥接”,可能会干扰您现有网络中的DHCP(无线路由器一般都有这个服务)。
虚拟机中的WinServer2019
虚拟机网卡设置为NAT方式(不太熟悉Vmware虚拟云的朋友请点击我的头像看以往视频)
2. 客户端,我也用虚拟机代替,只是不配备硬盘,启动顺序为PXE网络启动优先。网络适配器也需要是“NAT”方式。
3. WindowsServer没有TFTP服务,只能用第三发的,我用的是TFTPD64
4. WinPE有很多可用,我这里用老毛桃
具体操作如下:
1. 服务器配置网卡IP地址(不明白为何这样的朋友,请留言或私信)
服务器IP地址设置
a) 本例:192.168.111.10
b) 子网掩码:255.255.255.0
c) 网关:192.168.111.2
d) DNS:192.168.111.2
2. 服务器进入“服务器管理器”→仪表盘→快速启动→添加角色和功能→不断“下一步”,找到“服务器角色”→选择DHCP服务器→直到安装完成
DHCP安装
3. 服务器进入“服务器管理器”→右上角“工具”菜单→点击DHCP服务器进行设置→先新建作用域→再设置作用域选项,并安装向导配置好“默认网关”、“DNS”两项。
DHCP配置
之后再配置66#“启动服务器主机名”、67#“启动文件名”,配置好的内容见下图:
DHCP选项
4. 安装TFTP服务器,解压绿色版→启动tftpd64→设置→去掉SNTP、DHCP服务器→关闭重启
TFTP设置
5. 复制PE光盘上的所有文件到tftp目录
复制PE文件
6. 准备客户端虚拟机→设计PXE启动优先→开机等待启动完成
启动成功
7. 具体测试
a) 选择【3】启动Ghost备份恢复工具
选择启动ghost
启动成功
b) 选择【4】运行DiskGenius硬盘分区工具
DiskGenius启动成功
c) 测试选择启动【1】【2】的windows图像界面,发现后台tftp传输慢,而且启动不成功。
WIndows图像界面启动
8. 总结
通过上面的操作,我们验证了PXE启动原理,初步实现了WinPE的非图像化界面启动,这些工具还是能起到装机、运维作用的,具备了一定的实用性。但是我们也发现windows图像化界面启动失败。经过分析主要是tftp传输速度太慢,使得系统启动等待太久,程序内部认为是出现了错误(TimeOut错)导致的。
找到了原因如何处理呢?请大家关注我,后续会带大家进一步探讨解决问题。
另外,本次实战的视频,我正在录制,请关注我后续发布的视频。
以上就是PXE网络启动实战(一)的内容,有何问题可以给我留言,也可以私信我。
关注我的账号后,可以第一时间收到新的内容。关注、点赞、留言、转发都是对我的支持,谢谢!