2019-10-25, 23:19
Hello, people!
I use multiboot OS with TFTP server using the script menu of different configurations according to the manual (PXE chainloading)
Please, help me to create a configuration of possible variants of the script (menu.ipxe) to install NetBSD by Protocol TFTP!
With according to the man page for this OS
In this way, the loading takes place in several stages (PXE BIOS, first and second pxeboot stage, NetBSD kernel), so, the order of the query filenames is different by DHCP tags..
How to this can be redone to worked menu.ipxe (with a undionly.kpxe)?
I use multiboot OS with TFTP server using the script menu of different configurations according to the manual (PXE chainloading)
Code:
if exists user-class and option user-class = "iPXE" {
filename "menu.ipxe";
} else {
filename "undionly.kpxe";
}
Please, help me to create a configuration of possible variants of the script (menu.ipxe) to install NetBSD by Protocol TFTP!
With according to the man page for this OS
Quote:Bootfile name is set to ``boot.cfg'' during the first request, and then to the filename argument on the boot command line typed in by the user (can be empty), using ``netbsd'' in the non-interactive case., configuration of the DHCP server does not provide for the use of different menu items:
DHCP Vendor class identifier tag is set to ``NetBSD:i386:libsa''.
The DHCP server can use these fields (i.e. the DHCP vendor class identifier tag and the requested file name, possibly supplied by the user's command line input to the pxeboot program) to distinguish between the various originators of requests (PXE BIOS, first and second pxeboot stage, NetBSD kernel), and to alter its behaviour.
Code:
if substring (option vendor-class-identifier, 0, 20)
= "PXEClient:Arch:00000" {
filename "pxeboot_ia32.bin";
} elsif substring (option vendor-class-identifier, 0, 17)
= "NetBSD:i386:libsa" {
if filename = "boot.cfg" {
filename "tftp:boot.cfg";
} else if filename = "netbsd" {
filename "tftp:netbsd-INSTALL.gz";
}
}
How to this can be redone to worked menu.ipxe (with a undionly.kpxe)?