Summary: | [patch] teach pxeboot.8 about ISC DHCP v3 | ||||||
---|---|---|---|---|---|---|---|
Product: | Documentation | Reporter: | edwin | ||||
Component: | Manual Pages | Assignee: | Guangyuan Yang <ygy> | ||||
Status: | Closed FIXED | ||||||
Severity: | Affects Only Me | CC: | doc, ygy | ||||
Priority: | Normal | Keywords: | patch | ||||
Version: | Latest | ||||||
Hardware: | Any | ||||||
OS: | Any | ||||||
Attachments: |
|
Description
edwin
2008-05-07 07:50:00 UTC
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 |