凌峰创科服务平台

windows pxe服务器搭建

  1. DHCP 服务器:为客户端分配 IP 地址,并告知客户端去哪里寻找启动文件。
  2. TFTP 服务器:提供客户端所需的启动文件(如 pxelinux.0、内核、引导程序等)。
  3. 文件共享:提供完整的操作系统安装镜像、驱动程序等大文件,因为 TFTP 通常不适合传输大文件。

我们将使用 Windows Server 的内置角色 DHCP 服务器文件服务,并使用一个轻量级的开源工具 TFTP-32 作为 TFTP 服务器。

windows pxe服务器搭建-图1
(图片来源网络,侵删)

环境准备

  • 一台 Windows Server:推荐使用 Windows Server 2025 或更高版本,本教程以 Windows Server 2025 为例。
  • 服务器静态 IP 地址168.1.10,子网掩码 255.255.0,网关 168.1.1
  • 客户端:一台支持网络启动(PXE)的物理计算机或虚拟机。
  • 操作系统安装镜像:Windows Server 的 ISO 文件(en_windows_server_2025_x64.iso)。

第一步:安装必要的服务和角色

在服务器上,通过“服务器管理器”安装以下角色和功能。

  1. 安装 DHCP 服务器

    • 打开“服务器管理器” -> “添加角色和功能”。
    • 在“服务器角色”页面,勾选 “DHCP 服务器”
    • 点击“下一步”,直到“确认”页面,勾选“如果需要,自动重新启动目标服务器”,然后点击“安装”。
    • 安装完成后,打开“服务器管理器” -> “工具” -> “DHCP”,打开 DHCP 管理控制台。
  2. 安装文件服务和工具

    • 再次打开“服务器管理器” -> “添加角色和功能”。
    • 在“服务器角色”页面,展开“文件和存储服务”,勾选 “文件和 iSCS 服务”
    • 在“功能”子页面中,确保勾选了 “文件服务器资源管理工具”“SMB 直通”(可选,但推荐)。
    • 完成安装。

第二步:配置文件共享

我们将创建一个共享文件夹来存放所有的安装文件。

windows pxe服务器搭建-图2
(图片来源网络,侵删)
  1. 在服务器上创建一个文件夹,D:\PXE_Install

  2. 在该文件夹内,创建以下子目录结构:

    • boot:存放 TFTP 提供的启动文件。
    • images:存放完整的操作系统安装 ISO 文件或解压后的安装源。
    • winpe:存放 Windows PE 启动镜像(可选,但推荐用于更高级的部署)。
  3. 共享文件夹

    • 右键点击 D:\PXE_Install 文件夹,选择“属性”。
    • 切换到“共享”选项卡,点击“高级共享”。
    • 勾选“共享此文件夹”,点击“权限”。
    • 点击“添加”,输入 Everyone,然后赋予“读取”权限,点击“确定”。
    • 为了方便客户端访问,我们还需要为这个共享文件夹设置一个“共享名”,PXEShare

第三步:配置 DHCP 服务器

这是 PXE 启动的关键一步,需要告诉客户端去哪里找启动文件。

windows pxe服务器搭建-图3
(图片来源网络,侵删)
  1. 打开 DHCP 管理控制台。

  2. 右键点击你的服务器,选择“配置 DHCP”。

  3. 在“授权”对话框中,点击“是”。

  4. 展开 IPv4,右键点击你的作用域(168.1.0),选择“选项配置”。

  5. 我们需要设置几个关键的 选项,最简单的方法是修改“选项 006 DNS 服务器”和“选项 015 DNS 域名”的“供应商类别”为 PXEClient

  6. 添加新的 DHCP 选项

    • 在 DHCP 控制台中,右键点击服务器名称 -> “定义选项和用户类”。
    • 在“选项”选项卡中,点击“添加”。
    • 选项名称Boot Server Host Name
    • 选项 ID66
    • 数据类型字符串
    • :输入你的 TFTP 服务器的 FQDNIP 地址168.1.10
    • 点击“确定”。
    • 再次点击“添加”。
    • 选项名称Bootfile Name
    • 选项 ID67
    • 数据类型字符串
    • :输入 TFTP 服务器上的启动文件名,pxelinux.0 (用于 Linux) 或 undionly.kpxe (用于更通用的 PXE 启动),我们这里使用 undionly.kpxe,它兼容性更好。
    • 点击“确定”。
  7. 设置作用域选项

    • 右键点击你的作用域,选择“配置选项”。
    • 在“常规”选项卡中,确保勾选了 选项 006 DNS 服务器选项 015 DNS 域名,并填入你的 DNS 服务器地址和域名。
    • 切换到“高级”选项卡,在“可用选项”列表中,找到并勾选 选项 066 Boot Server Host Name选项 067 Bootfile Name
    • 点击“确定”。

第四步:安装和配置 TFTP 服务器

Windows 自带 TFTP 服务功能较弱,我们使用免费的 TFTP-32

  1. 下载 TFTP-32

  2. 安装和配置

    • 运行安装程序,安装到服务器上。
    • 打开 TFTP-32 程序。
    • 服务选项卡:
      • 确保 Install as a service 被勾选,这样它会在后台自动运行。
      • 点击 Save 保存配置。
    • TFTP选项卡:
      • Server Interface:选择服务器的网卡 IP 地址。
      • Root Directory这是最关键的一步! 点击 Browse...,选择我们之前创建的 D:\PXE_Install\boot 文件夹,TFTP 将从这个目录提供文件。
      • Time Out (sec):可以保持默认 5
      • Blocksize:可以保持默认 512
      • 确保 TFTP Server 复选框被勾选。
      • 点击 Save
  3. 下载必要的启动文件


第五步:准备 Windows 安装文件

  1. 挂载 ISO 镜像

    • 右键点击你的 Windows Server ISO 文件,选择“装载”。
    • 记住挂载后的驱动器号,E:
  2. 复制安装文件

    • E:\sources\install.wim 文件复制到 D:\PXE_Install\images 文件夹中。
    • (可选)你也可以将整个 sources 文件夹复制过去,这样更完整。

第六步:配置 PXE 启动菜单 (WDS - 推荐方式)

使用上面的 TFTP + 文件共享的方式,只能启动到一个非常基础的命令行环境,为了实现图形化的安装选择菜单,最佳实践是使用 Windows 部署服务。

WDS 内置了强大的 PXE、TFTP 和文件共享功能,并且可以自动管理启动菜单,是微软官方推荐的解决方案。

如果你希望功能更强大、更稳定,请跳过前面的 TFTP 配置,直接按以下步骤操作:

  1. 安装 WDS 角色

    • 在“服务器管理器”中添加角色,勾选 “Windows 部署服务”
    • 安装完成后,打开“服务器管理器” -> “工具” -> “Windows 部署服务”
  2. 配置 WDS 服务器

    • 在 WDS 控制台中,右键点击你的服务器,选择“配置服务器”。
    • “远程安装”选项卡:
      • 勾选“响应客户端计算机的请求(PXE 启动)”。
      • 勾选“不监听端口 67”或“侦听所有客户端计算机(推荐)”,如果你的网络中已经有其他 DHCP 服务器,请务必勾选“不监听端口 67”,否则会产生 IP 地址冲突。
      • 点击“下一步”。
    • “根目录/远程安装文件夹”选项卡:
      • 选择一个足够大的磁盘空间来存放 WDS 文件,D:\RemoteInstall
      • 点击“下一步”。
    • “PXE 服务器响应”选项卡:
      • 选择“不添加映像”或“添加映像”(如果你已经有了捕获的映像),对于全新安装,选择“不添加映像”。
      • 点击“完成”。
  3. 添加安装映像

    • 在 WDS 控制台中,右键点击“映像”,选择“添加映像”。
    • 在“映像来源”中,选择“安装映像”,然后点击“下一步”。
    • 点击“浏览”,找到我们之前挂载的 ISO 文件中的 sources\install.wim 文件。
    • 为映像命名并描述,然后点击“完成”。
    • WDS 会自动处理启动文件和菜单。
  4. 配置启动菜单

    • 在 WDS 控制台中,展开“启动映像”和“安装映像”。
    • 你可以拖拽这些映像来调整启动顺序,或者右键点击它们来设置属性(指定默认启动项、添加密码等)。

第七步:测试 PXE 启动

  1. 将客户端计算机设置为从 网络 启动(BIOS/UEFI 设置中)。
  2. 启动客户端,它应该会从 DHCP 获取 IP 地址。
  3. 客户端会连接到 TFTP 服务器(或 WDS 服务器)并加载启动文件。
  4. 如果配置正确,你应该会看到:
    • 使用 WDS:一个漂亮的图形化启动菜单,列出了你添加的 Windows 安装映像。
    • 使用基础 TFTP:一个黑色的屏幕,可能会显示一些加载信息,然后等待你输入命令(这比较复杂,不推荐初学者使用)。

选择要安装的 Windows 版本,然后按照屏幕提示进行操作,WDS 会自动从其存储位置加载 install.wim 文件并开始安装。


总结与排错

  • 最佳实践:对于 Windows 环境下的 PXE 部署,强烈推荐使用 Windows 部署服务,它整合了所有功能,管理更简单,功能也更强大(支持驱动注入、无人值守安装等)。
  • 基础方案:如果你只需要一个非常简单的、非图形化的启动环境(用于运行 Linux 安装脚本),TFTP + 文件共享 + DHCP 的组合是可行的。
  • 常见问题
    • PXE-E61: Media test failure, no boot device found:客户端无法从网络启动,检查 BIOS/UEFI 设置,确保网络启动已启用且顺序正确。
    • PXE-M0F: Exiting Intel PXE ROM:客户端成功连接到 DHCP 并获取了 IP,但 TFTP 服务器未响应或启动文件不存在,检查 DHCP 选项 66 和 67 是否正确,TFTP 服务器是否正在运行,Root Directory 是否设置正确,启动文件是否在 boot 目录中。
    • TFTP timeout:客户端无法下载启动文件,通常是防火墙问题,确保服务器的防火墙允许 TFTP 流量(UDP 端口 69),或者直接暂时关闭防火墙进行测试。
    • 无法访问安装源:启动后提示找不到 install.wim,检查 WDS 的配置或文件共享的权限,确保客户端可以访问到 images 文件夹。
分享:
扫描分享到社交APP
上一篇
下一篇