通过 dnsmasq 代理 DHCP:Grub 欢迎我,但随后就卡住了

通过 dnsmasq 代理 DHCP:Grub 欢迎我,但随后就卡住了

我正在尝试使用代理 DHCP 服务器通过 EFI PXE 启动 GRUB2...此配置运行良好,它只是替换了 DHCP 服务器:

interface=enp3s0
dhcp-range=192.168.1.10,192.168.1.90,255.255.255.0,12h
dhcp-option=option:router,192.168.1.1
pxe-prompt="Going to network boot", 4
enable-tftp
tftp-root=/var/ftpd
dhcp-boot=grubnetx64.efi

客户端启动正常。但这不是我想要的。我希望 IP 分配仍然由路由器 DHCP 服务器处理。所以我将其改为:

interface=enp3s0

dhcp-range=192.168.1.1,proxy

enable-tftp
tftp-root=/var/ftpd

pxe-prompt="Going to network boot", 4
pxe-service=x86-64_EFI,"Network boot",grubnetx64.efi
dhcp-boot=grubnetx64.efi

Intel UNDI(或无论这个东西叫什么)和 iPXE 都可以启动 GRUB2,但它只显示“欢迎使用 GRUB!”横幅,之后就冻结了,所有网络活动都停止了。过了很长时间,我终于进入了 grub shell(不是紧急 shell),没有任何错误消息。配置根本没有加载。

dhcp有趣的是,iPXE 在运行或时不会显示任何 IP 地址ifstat,就好像它没有获得 IP 地址一样,但它能够自动grubnetx64.efi从服务器上获取文件。

Wireshark 显示客户端已完全下载了grubnetx64.efi文件,但随后所有通信都停止,包括 DHCP。

这是启动过程中的网络转储,直到启动文件开始下载为止。

No. Time         Source        Destination     Protocol Length Info
19  25.842147691 0.0.0.0       255.255.255.255 DHCP     389    DHCP Discover - Transaction ID 0x2ac0b917
20  25.842958215 192.168.1.124 255.255.255.255 DHCP     342    DHCP Offer    - Transaction ID 0x2ac0b917
21  25.844230209 192.168.1.1   255.255.255.255 DHCP     342    DHCP Offer    - Transaction ID 0x2ac0b917
24  29.480009427 0.0.0.0       255.255.255.255 DHCP     401    DHCP Request  - Transaction ID 0x2ac0b917
25  29.483931744 192.168.1.1   255.255.255.255 DHCP     342    DHCP ACK      - Transaction ID 0x2ac0b917
28  29.484919255 192.168.1.137 192.168.1.124   DHCP     389    proxyDHCP Request  - Transaction ID 0xfe4617c6
29  29.485937159 192.168.1.124 192.168.1.137   DHCP     342    proxyDHCP ACK      - Transaction ID 0xfe4617c6
33  30.485321160 192.168.1.137 192.168.1.124   TFTP     86     Read Request, File: grubnetx64.efi, Transfer type: octet, tsize=0, blksize=1468
34  30.486167149 192.168.1.124 192.168.1.137   TFTP     71     Option Acknowledgement, blksize=1468, tsize=3864000
35  30.486335275 192.168.1.137 192.168.1.124   TFTP     72     Error Code, Code: Option negotiation failed, Message: User aborted the transfer
36  30.511880616 192.168.1.137 192.168.1.124   TFTP     78     Read Request, File: grubnetx64.efi, Transfer type: octet, blksize=1468
37  30.512618251 192.168.1.124 192.168.1.137   TFTP     57     Option Acknowledgement, blksize=1468
38  30.512763523 192.168.1.137 192.168.1.124   TFTP     60     Acknowledgement, Block: 0
39  30.513057030 192.168.1.124 192.168.1.137   TFTP     1514   Data Packet, Block: 1
40  30.513471667 192.168.1.137 192.168.1.124   TFTP     60     Acknowledgement, Block: 1
41  30.513903970 192.168.1.124 192.168.1.137   TFTP     1514   Data Packet, Block: 2
42  30.514401757 192.168.1.137 192.168.1.124   TFTP     60     Acknowledgement, Block: 2

你知道为什么会发生这种情况吗?我完全困惑了。而且我对 DHCP 和 PXE 的内部原理还不太了解。

提前感谢
Tuxifan

相关内容