[Dnsmasq-discuss] PXE booting a Raspberry Pi 3B
ygator at yahoo.com
ygator at yahoo.com
Wed Jan 11 22:31:01 UTC 2023
I'm trying to pxe boot a Raspberry Pi 3B (not 3B+) with dnsmasq configured with a tftp server on a different host. In all cases I've tried it always uses dnsmasq as the tftp server. Btw, I have Raspberry Pi 4 that does work.
Doing some tests with my own pxe server I was able to get the Raspberry Pi 3B to use the proper tftp server only when I sent option 66 last or possibly after option 43 as both are true.
Is there a way to configure dnsmasq for this to work?
The Raspberry Pi 3B does request the tftp server parameter last, however the RFC says it is not required for the server to comply though it does say it MUST try.
FROM RFC2132
9.8. Parameter Request List
This option is used by a DHCP client to request values for specified
configuration parameters. The list of requested parameters is
specified as n octets, where each octet is a valid DHCP option code
as defined in this document.
The client MAY list the options in order of preference. The DHCP
server is not required to return the options in the requested order,
but MUST try to insert the requested options in the order requested
by the client.
Thanks
Details below
Network Devices
===============
192.168.0.1 = router
192.168.0.4 = dnsmasq server
192.168.0.5 = ntp server
192.168.0.6 = rpi3b computer
192.168.0.7 = tftp server
dnsmasq configuration
=====================
dhcp-range=192.168.0.0,192.168.0.255,255.255.255.0,12h
dhcp-reply-delay=tag:rpi3b,2
dhcp-ignore=tag:!known
dhcp-option=3,192.168.0.1
dhcp-option=6,192.168.0.4
dhcp-option=42,192.168.0.5
dhcp-boot="bootcode.bin","192.168.0.7",192.168.0.7
pxe-service=0,Raspberry Pi Boot
enable-tftp
tftp-root=/home/pi/network/tftpboot
log-dhcp
domain-needed
bogus-priv
no-hosts
addn-hosts=/home/pi/network/hosts
dhcp-host=aa:bb:cc:dd:ee:ff,rpi3,192.168.0.6,infinite,set:rpi3b
/home/pi/network/hosts/hosts
============================
192.168.0.6 rpi3.example.com
dnsmasq output
==============
dnsmasq-dhcp[48831]: 653460281 available DHCP range: 192.168.0.0 -- 192.168.0.255
dnsmasq-dhcp[48831]: 653460281 vendor class: PXEClient:Arch:00000:UNDI:002001
dnsmasq-dhcp[48831]: 653460281 DHCPDISCOVER(wlan0) aa:bb:cc:dd:ee:ff
dnsmasq-dhcp[48831]: 653460281 tags: rpi3b, known, wlan0
dnsmasq-dhcp[48831]: 653460281 reply delay: 2
dnsmasq-dhcp[48831]: 653460281 DHCPOFFER(wlan0) 192.168.0.6 aa:bb:cc:dd:ee:ff
dnsmasq-dhcp[48831]: 653460281 requested options: 43:vendor-encap, 60:vendor-class, 67:bootfile-name,
dnsmasq-dhcp[48831]: 653460281 requested options: 128, 129, 130, 131, 132, 133, 134, 135, 66:tftp-server
dnsmasq-dhcp[48831]: 653460281 next server: 192.168.0.7
dnsmasq-dhcp[48831]: 653460281 sent size: 1 option: 53 message-type 2
dnsmasq-dhcp[48831]: 653460281 sent size: 4 option: 54 server-identifier 192.168.0.4
dnsmasq-dhcp[48831]: 653460281 sent size: 4 option: 51 lease-time infinite
dnsmasq-dhcp[48831]: 653460281 sent size: 12 option: 66 tftp-server 192.168.0.7
dnsmasq-dhcp[48831]: 653460281 sent size: 13 option: 67 bootfile-name bootcode.bin
dnsmasq-dhcp[48831]: 653460281 sent size: 4 option: 1 netmask 255.255.255.0
dnsmasq-dhcp[48831]: 653460281 sent size: 4 option: 28 broadcast 192.168.0.255
dnsmasq-dhcp[48831]: 653460281 sent size: 9 option: 60 vendor-class 50:58:45:43:6c:69:65:6e:74
dnsmasq-dhcp[48831]: 653460281 sent size: 17 option: 97 client-machine-id 00:44:44:44:44:44:44:44:44:44:44:44:44:44...
dnsmasq-dhcp[48831]: 653460281 sent size: 32 option: 43 vendor-encap 06:01:03:0a:04:00:50:58:45:09:14:00:00:11...
dnsmasq-tftp[48831]: sent /home/pi/network/tftpboot/bootcode.bin to 192.168.0.6
dnsmasq-tftp[48831]: file /home/pi/network/tftpboot/bootsig.bin not found
More information about the Dnsmasq-discuss
mailing list