我正在尝试使用 ubuntu 盒子 (192.168.10.9) 充当 PXE 服务器,但无法让 DHCP 正常工作。PXE
服务器连接到充当交换机的 SOHO 路由器 (192.168.10.1)。
我已禁用路由器上的 DHCP 服务器。
$ dhcpd --version
isc-dhcpd-4.2.4
的内容/etc/dhcp/dhcpd.conf
ddns-update-style none;
option domain-name-servers 192.168.10.1;
default-lease-time 3600;
max-lease-time 7200;
authoritative;
log-facility local7;
allow booting;
allow bootp;
subnet 192.168.10.0 netmask 255.255.255.0 {
range dynamic-bootp 192.168.10.101 192.168.10.200;
option routers 192.168.10.1;
option broadcast-address 192.168.10.255;
next-server 192.168.10.9;
filename "/tftpboot/pxelinux.0";
}
的内容/etc/default/isc-dhcp-server
INTERFACES="eth0"
当客户端启动时,它会尝试从服务器获取 IP 地址,但会失败并显示以下错误消息:
PXE-E51: No DHCP or proxyDHCP offers were received.
在服务器端,/var/log/syslog
当客户端尝试启动时我正在跟踪:
Dec 4 12:57:10 athspk-Dell dhcpd: DHCPDISCOVER from 00:1f:d0:8e:6b:db via eth0
Dec 4 12:57:11 athspk-Dell dhcpd: DHCPOFFER on 192.168.10.101 to 00:1f:d0:8e:6b:db via eth0
Dec 4 12:57:12 athspk-Dell dhcpd: DHCPDISCOVER from 00:1f:d0:8e:6b:db via eth0
Dec 4 12:57:12 athspk-Dell dhcpd: DHCPOFFER on 192.168.10.101 to 00:1f:d0:8e:6b:db via eth0
Dec 4 12:57:17 athspk-Dell dhcpd: DHCPDISCOVER from 00:1f:d0:8e:6b:db via eth0
Dec 4 12:57:17 athspk-Dell dhcpd: DHCPOFFER on 192.168.10.101 to 00:1f:d0:8e:6b:db via eth0
Dec 4 12:57:25 athspk-Dell dhcpd: DHCPDISCOVER from 00:1f:d0:8e:6b:db via eth0
Dec 4 12:57:25 athspk-Dell dhcpd: DHCPOFFER on 192.168.10.101 to 00:1f:d0:8e:6b:db via eth0
答案1
DHCP 服务器提供了一个地址,但如果无法提取启动映像,固件将出错(隐秘地)。仔细查看 192.168.0.9 上的 tftp 服务器设置。我不确定您使用的是哪个 tftp 服务器,但通常路径是相对于启动时传递给守护进程的目录,而不是绝对路径。在另一台机器上启动 tftp 客户端并尝试从同一目录下载文件以确认功能正常。
或者,尝试运行数据包捕获来精确观察 DHCP 服务器向客户端提供的内容以及客户端因此采取的操作。