DHCP 服务器未为 PXE 提供正确的文件名

DHCP 服务器未为 PXE 提供正确的文件名

我正在尝试配置 PXE 服务器以支持 Legacy/UEFI。因此我需要根据机器的架构提供不同的引导加载程序。

以下为部分内容dhcpd.conf

option architecture-type code 93 = unsigned integer 16 ;

next-server 10.10.10.10;
if option  architecture-type = 00:07 {
  filename "grubx64.efi";
} else {
  filename "pxelinux.0";
}

这个块似乎根本不起作用。无论我从哪台机器启动,无论是 BIOS 还是 UEFI,服务器都会提供pxelinux.0。我确信机器提供了有关架构的正确信息(选项 93)——我使用查看了包的内容tcpdump

我已经尝试将其包装在类中,如 Red Hat 示例中所示。我正在尝试创建新主机,因此dhcpd.leasessupersede server.filename = "pxelinux.0";不是问题。

我在 CentOS 7 上使用 ISC DHCP 服务器 4.2.5,文件由 TFTP 提供

答案1

我的错,我没有发布完整的内容dhcpd.conf

有一行关于使用 omapi 的内容,结果发现另一个程序负责创建dhcpd.leases带有硬编码引导加载程序名称的文件。

相关内容