Description of problem: When booting via UEFI, using IPv4 PXE protocol, error of no network devices shows up. Via https://github.com/openshift/ironic-image/blob/master/dnsmasq.conf.j2#L28 we see that ipxe.efi is set but it should be using snponly.efi https://github.com/metal3-io/ironic-image/blob/master/dnsmasq.conf.j2#L41 Steps to Reproduce: 1. Ensure UEFI+ IPv4 PXE protocol in UEFI settings 2. Attempt an IPI on BM install Actual results: Fails to PXE masters with No network devices Expected results: Properly PXE the master nodes. https://github.com/openshift/ironic-image/blob/master/dnsmasq.conf.j2#L28 https://github.com/metal3-io/ironic-image/blob/master/dnsmasq.conf.j2#L41
UEFI stacks are supposed to supply network stacks to the firmware images loaded such as those for ipxe before the operating system loads. This means we should be using the snponly.efi binary for uefi with IPv4. With IPv6, the file is already correct. Pull requests created for openshift and metal3. https://github.com/openshift/ironic-image/pull/76 https://github.com/metal3-io/ironic-image/pull/152
Julia -- I am an OpenShift technical writer trying to write a release note for this fixed issue. However, I have little experience and understanding of this realm. Can I bother you to take a look at what I draft and let me know if I'm even close? We use the Cause-Consequence-Fix-Result format for reporting fixed issues. Thank you in advance for any help. Michael Because the UEFI boot process was using the `ipxe.efi` binary, if using IPv4 networks, the boot process reported that there are no networks are found. As a result, the Preboot eXecution Environment (PXE) boots the masters with no network devices. The dnsmasq.conf file has been updated to use the `snponly.efi` binary. The PXE boots with the correct network drivers and the master have network connectivity.
So, your note is a bit confusing, lets try: Because the UEFI boot process was using the `ipxe.efi` binary when using IPv4 networks, the boot process reported that there were no network devices found. As a result, the Preboot eXecution Environment (PXE) boots the machines with "No network devices". The dnsmasq.conf file has been updated to use the `snponly.efi` binary for IPv4 networks. The machines booting with PXE utilize the UEFI network drivers and are able to deploy as they have network connectivity. It glosses over technical details of the differences between iPXE generalized PXE, but it should still work.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2020:2409