我们有一台 RHEL 7.9 服务器,充当为多个子网提供服务的 DHCP/TFTP (PXE) 服务器。以下是 dhcpd.conf 文件的副本(DHCP/PXE 服务器是 XY145.98):
allow bootp;
allow booting;
max-lease-time 1200;
default-lease-time 900;
subnet X.Y.145.96 netmask 255.255.255.224 {
option routers X.Y.145.126;
range X.Y.145.100 X.Y.145.105;
next-server X.Y.145.98;
filename "pxelinux.0"
}
subnet X.Y.145.144 netmask 255.255.255.248 {
option routers X.Y.145.145;
range X.Y.145.146 X.Y.145.150;
next-server X.Y.145.98;
filename "pxelinux.0"
}
我们看到的问题是 grub.cfg 正在抓取options router
变量的参数IP pxe_default_server
,而不是next-server
参数。然后使用此 ( pxe_default_server
) 定义变量net_default_server
参数,我们的 PXE 失败,因为它指向网关 IP 而不是 DHCP/PXE 服务器 IP。如果我们编辑 grub.cfg 文件以将参数硬编码pxe_default_server
为等于 DHCP/PXE 服务器的 IP...我们可以正常启动并下载映像。我应该使用不同的参数吗?
Grub 肯定会感到困惑,但你的 dhcpd.confg 有问题。
请参阅此处的示例: https ://www.redhat.com/sysadmin/pxe-boot-uefi