Pxeboot fails with pxelinux.0 not found in wireshark and 404 in MAAS logs

Summarry
Pxeboot fails with pxelinux.0 not found in wireshark and 404 in MAAS logs.

Identify your version and build
root@maas:/var/snap/maas/common/maas# snap list maas
Name Version Rev Tracking Publisher Notes
maas 3.5.0-16308-g.c799a1080 36363 3.5/stable canonical** -

Explain whether you’re using the UI, CLI, or API

I’m both using UI and CLI

Explain what happens
Pxebooting fails on the physical machines that is on the same subnet as my MAAS installation.
My setup is region+rack combo with a external DHCP, I have ensure that client machine is able to reach the MAAS tftp using wireshark.
Looking at the logs I’m seeing 404 related to the pxelinux.0 which is also shown in the wireshark “file not found”.
Did I miss something after bootstrapping my MAAS installation?, causing this issue
Additional information: I’m running Maas inside a privileged docker container with network host(for testing), but I don’t think it has something to do with my issue.

Explain how to reproduce your issue

  1. Followed snap installation procedure in https://maas.io/docs/tutorial-bootstrapping-maas.
  2. Excuted init (region+rack), createadmin, login ui
  3. Wait for default image(22.04 LTS) to finish syncing.
  4. Attempt pxeboot in client machine.
# journalctl -xef
Aug 04 10:21:35 maas.avcn.local maas-rackd[1067]: provisioningserver.rackdservices.tftp: [info] pxelinux.0 requested by 192.168.0.123
Aug 04 10:21:35 maas.avcn.local maas-rackd[1067]: provisioningserver.rackdservices.http: [info] /images/pxelinux.0 requested by ::1
Aug 04 10:21:35 maas.avcn.local maas-log[6134]: maas.rpc.rackcontrollers: [info] Existing rack controller 'maas' running version 3.5.0-16308-g.c799a1080 has connected to region 'maas'.
Aug 04 10:21:35 maas.avcn.local maas-http[6134]:  192.168.0.113 - - [04/Aug/2024:10:21:35 +0000] "GET /MAAS/boot-resources/pxelinux.0 HTTP/1.1" 404 134 "-" "-"
Aug 04 10:21:35 maas.avcn.local maas-http[6134]:  ::1 - - [04/Aug/2024:10:21:35 +0000] "GET /images/pxelinux.0 HTTP/1.1" 404 173 "-" "-"
# root@maas:/var/snap/maas/common/maas# maas status
Service          Startup   Current   Since
agent            disabled  active    today at 08:59 UTC
apiserver        enabled   active    today at 08:58 UTC
bind9            disabled  active    today at 08:58 UTC
dhcpd            disabled  inactive  -
dhcpd6           disabled  inactive  -
http             disabled  active    today at 08:58 UTC
ntp              disabled  active    today at 10:18 UTC
proxy            disabled  active    today at 10:19 UTC
rackd            enabled   active    today at 08:58 UTC
regiond          enabled   active    today at 10:18 UTC
syslog           disabled  active    today at 10:18 UTC
temporal         disabled  active    today at 08:58 UTC
temporal-worker  disabled  active    today at 08:58 UTC
#root@maas:/var/snap/maas/common/maas# maas admin boot-resources read | jq -r '.[] | "\(.name)\t\(.architecture)"'
grub-efi-signed/uefi	amd64/generic
grub-efi/uefi	arm64/generic
grub-ieee1275/open-firmware	ppc64el/generic
pxelinux/pxe	i386/generic
ubuntu/jammy	amd64/ga-22.04
ubuntu/jammy	amd64/ga-22.04-lowlatency
ubuntu/jammy	amd64/hwe-22.04
ubuntu/jammy	amd64/hwe-22.04-edge
ubuntu/jammy	amd64/hwe-22.04-lowlatency
ubuntu/jammy	amd64/hwe-22.04-lowlatency-edge


tftp_root

could you try with 3.4?

If with 3.4 you don’t have any issue, could you open a bug on launchpad?

hi @r00ta , I was too fast reading your first reply about the 'images", but since I’ve already did the test for it im adding it here, it doesn’t seem to be my dhcp adding that. I made some additional test to ensure that.
a. bootp config w/o path
ddwrt-bootp


b. bootp with path.

I haven’t tried 3.4 though. let me do that as well thanks for the quick response.

I’ve tried 3.4 and didn’t get the not found issue/404 pxelinux.0 like in 3.5. Though pxebooting still failed it is no longer related to this one.

hi @r00ta, looking at launchpad, I notice one entry that they used bootx64.efi as the bootloader instead pxelinux.0 so I tried it that that seems to have worked and pxebooted the client machine. I was following https://maas.io/docs/how-to-troubleshoot-common-issues#maas-setup-with-existingexternal-dhcp and just assumed that I should be using pxelinux.0. Is this still consider a bug? and how do those bootloaders gets into MAAS?
Screenshot from 2024-08-04 23-02-15

I’d say no. pxelinux.0 is supposed to be used only if you machine is using legacy boot.

Glad it works

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.