Fix documentation in pxeboot.8 with regarding to the DHCP server configuration lines. The pxeboot binary is loaded just like any other boot file, by specifying it in the DHCP server's configuration file. Below is a sample configura- | tion for the ISC DHCP v3 server: option domain-name "example.com"; option routers 10.0.0.1; option subnet-mask 255.255.255.0; option broadcast-address 10.0.0.255; option domain-name-servers 10.0.0.1; server-name "DHCPserver"; server-identifier 10.0.0.1; + next-server 10.0.0.1; default-lease-time 120; max-lease-time 120; subnet 10.0.0.0 netmask 255.255.255.0 { filename "pxeboot"; range 10.0.0.10 10.0.0.254; } + next-server is the IP address of the next server in the bootstrap + process, i.e. your TFTP server or NFS server. pxeboot recognizes See also http://www.mavetju.org/weblog/html/00110.html for some details on the next-server change in the ISC DHCP server.
Responsible Changed From-To: freebsd-doc->brd grab.
Responsible Changed From-To: brd->edwin Take back (brd agreed)
----- Forwarded message from Ruslan Ermilov <ru@freebsd.org> ----- > > > Not having the next-server statement in the DHCP configuration will > > > prevent QEMU to boot via TFTP. I don't know if it will work with > > > NFS if the statement isn't there, but it won't work with TFTP > > > anymore. > > > > > The proposed patch is incorrect, as explained. It needs to be > > fixed, but in a different way. > > I tried this: > > subnet 192.168.253.0 netmask 255.255.255.0 { > range 192.168.253.20 192.168.253.120; > option routers 192.168.253.1; > > option bootfile-name "pxeboot"; > option root-path "192.168.253.2:/mnt/ad8/qemu/os/FreeBSD-6.3"; > filename "pxeboot"; > server-identifier 192.168.253.1; > # next-server 192.168.253.1; > } > > My QEMU host doesn't do PXE booting, it keeps doing DHCP requests. > I wouldn't be surprsed if it was an implementation-specific thing > per ROM on the NIC. > > The moment I uncomment the next-server statement, it loads pxeboot > via TFTP from 192.168.253.1 and then NFS from 192.168.253.2. > > How about I make the text to: > > The pxeboot binary is loaded just like any other boot file, > by specifying it in the DHCP server's configuration file. > Below are the relevant lines for the configuration of the ISC > DHCP v3 server, where 10.0.0.1 is the network router, 10.0.0.2 > is the DHCP server, 10.0.0.3 is the TFTP server and 10.0.0.4 > is the NFS server: > > server-name "DHCPserver"; > server-identifier 10.0.0.2; > option routers 10.0.0.1; > option domain-name-servers 10.0.0.2; > > subnet 10.0.0.0 netmask 255.255.255.0 { > range 10.0.0.10 10.0.0.254; > next-server 10.0.0.3; > filename "pxeboot"; > option root-path "10.0.0.4:/exports/FreeBSD-6.3"; > } > This part looks good (except for the mix of tabs/spaces :-). > pxeboot uses the next-server option as the TFTP server > to download the file specified in the filename directive and > root-path option as the NFS server and NFS mount path for the > file system. Note that pxeboot expects to fetch /boot/loader.rc > from the specified server before loading any other files. > This is misleading. The first sentence above basically says that "pxeboot is used to download pxeboot". Instead, it's like follows: 1. The PXE ROM uses either "next-server" (if specified) or the DHCP server's IP as the TFTP server to download the "pxeboot" binary specified in the "filename" directive 2. "pxeboot" then uses: for NFS (default compilation): - root-path with an embedded IP address, - next-server's root-path - DHCP server's root-path for TFTP (when compiled with option LOADER_TFTP_SUPPORT): - next-server - DHCP server (e.g. as in 1 above). Cheers, -- Ruslan Ermilov ru@FreeBSD.org FreeBSD committer ----- End forwarded message ----- -- Edwin Groothuis | Personal website: http://www.mavetju.org edwin@mavetju.org | Weblog: http://www.mavetju.org/weblog/
For bugs matching the following criteria: Status: In Progress Changed: (is less than) 2014-06-01 Reset to default assignee and clear in-progress tags. Mail being skipped
A commit references this bug: Author: ygy Date: Sun Nov 25 09:37:58 UTC 2018 New revision: 340917 URL: https://svnweb.freebsd.org/changeset/base/340917 Log: Update pxeboot(8) manual page to reflect the next-server change in the ISC DHCP v3 server. PR: 123484 Submitted by: edwin@mavetju.org Reviewed by: AllanJude MFC after: 1 week Changes: head/stand/i386/pxeldr/pxeboot.8
A commit references this bug: Author: ygy Date: Tue Nov 27 08:51:16 UTC 2018 New revision: 341007 URL: https://svnweb.freebsd.org/changeset/base/341007 Log: Bump the date of pxeboot(8) manual page for r340917. PR: 123484 MFC after: 5 days Changes: head/stand/i386/pxeldr/pxeboot.8
A commit references this bug: Author: ygy Date: Sun Dec 2 19:08:52 UTC 2018 New revision: 341403 URL: https://svnweb.freebsd.org/changeset/base/341403 Log: MFC r340917, r341007 r340917: Update pxeboot(8) manual page to reflect the next-server change in the ISC DHCP v3 server. r341007: Bump the date of pxeboot(8) manual page for r340917. PR: 123484 Submitted by: edwin@mavetju.org Reviewed by: AllanJude Changes: _U stable/12/ stable/12/stand/i386/pxeldr/pxeboot.8
A commit references this bug: Author: kevans Date: Sun Apr 21 04:15:58 UTC 2019 New revision: 346480 URL: https://svnweb.freebsd.org/changeset/base/346480 Log: MFC r338262, r339334, r339796, r340240, r340857, r340917, r341007 r338262: stand: fdt: Drop some write-only assignments/variables and leaked bits Generally straightforward enough; a copy of argv[1] was being made in command_fdt_internal, solely used for a comparison within the handler-search, then promptly leaked. r339334: loader.efi: add poweroff command Add poweroff command to make life a bit easier. r339796: Simplify the EFI delay() function by calling BS->Stall() r340240: loader: ptable_open() check for ptable_cd9660read result is wrong The ptable_*read() functions return NULL on read errors (and partition table closed as an side effect). The ptable_open must check the return value and act properly. r340857: Nuke out buffer overflow safety marker code, it duplicates similar code in the malloc()/free() as well as having potential of softening the handling in case error is detected down to a mere warning as compared to hard panic in free(). r340917: Update pxeboot(8) manual page to reflect the next-server change in the ISC DHCP v3 server. r341007: Bump the date of pxeboot(8) manual page for r340917. PR: 123484, 232483 Changes: _U stable/11/ stable/11/stand/common/bcache.c stable/11/stand/common/part.c stable/11/stand/efi/libefi/delay.c stable/11/stand/efi/loader/main.c stable/11/stand/fdt/fdt_loader_cmd.c stable/11/stand/i386/pxeldr/pxeboot.8