我正在尝试制定一个自动化的 Windows 安装过程,并想看看 WDS。在取得了一些有希望的初步进展之后,我似乎遇到了瓶颈。我导入了启动和安装 WIM,并成功创建了捕获 WIM。但是,每当我尝试针对 WDS 服务器进行 PXE 启动参考机器时,它都会出错。它找到服务器并成功下载 WDSNBP.COM,然后显示消息“TFTP 下载失败”。
根据 WireShark 的说法,WDS 盒和客户端盒之间的唯一通信是成功的 TFTP 请求和 boot\x86\WDSNBP.COM 的下载。没有发送其他请求。服务器上的 WDS 日志显示了相同的内容,一次成功下载,没有其他活动。
我尝试了下面的所有组合,但行为没有任何变化:
Win Server 2008R2 与 2012 与 2012R2
WDS 在 KVM、ESXi、VirtualBox、VMWare Workstation 上虚拟化
在 KVM、ESXi、VirtualBox、VMWare Workstation 上虚拟化的客户端
虚拟化平台提供的每种网络适配器类型。
“实际”网络与孤立的虚拟网络。
MS DHCP 服务器与 Linux isc-dhcp-server
加入域与独立
我尝试将 DHCP 中的启动文件名改为 pxeboot.com,这样下载该文件就没问题了,但随后它又抱怨 Boot\BCD 已损坏。此外,对于 2012,WDSNBP.com 似乎没有进行架构检测,或者至少没有报告它进行了检测。2008 报告发现 x64,然后出现错误。
我发现自己没有东西可以检查,也没有发现任何立即错误。我该怎么做?
WDS 服务器位于 192.168.1.50,DHCP/DNS 位于 192.168.1.7。
客户端电脑开机后的控制台:
MAC: 52:54:00:28:94:0E UUID: blah blah
Searching for server (DHCP).....
Me: 192.168.1.155, DHCP: 192.168.1.7, Gateway 192.168.1.1
Loading 192.168.1.50:boot\x86\wdsnbp.com ...(PXE).................done
Downloaded WDSNCP...
TFPT download failed
Linux DHCP 服务器上 /etc/dhcp/dhcpd.conf 的有趣部分:
allow booting;
allow bootp;
option option-60 code 60 = string;
option option-66 code 66 = string;
option option-67 code 67 = string;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.110 192.168.1.253;
next-server 192.168.1.50;
option tftp-server-name "192.168.1.50";
option option-60 "PXEClient";
filename "boot\\x86\\wdsnbp.com";
option bootfile-name "boot\\x86\\wdsnbp.com";
}
答案1
那么它获取了 DHCP 地址并联系了 PXE 服务器,但随后却没有收到 WDS 启动映像?请检查您的 WDS 服务器设置。具体来说,是 PXE 响应、PXE 启动和客户端选项卡。
我还会仔细检查您在 WDS 中配置的启动映像。从 Windows 安装 DVD 等 (media\sources\boot.wim) 导入。或者,如果您使用的是 Microsoft Deployment Toolkit,则从 MDT 生成的启动映像导入。
我一直认为,在 WDS 服务器上安装 HYPER-V 并启动连接到 PXE 网络的本地 VM 是解决 WDS / MDT 问题最简单的方法。排除任何外部网络问题。