<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <font face="Droid Serif">I don't have any specific documentation and
      my setup might be limited to my environment, but just thought I'd
      share what I have. I've got the next server and filename
      parameters specified in a client class and then add that to
      certain pools:<br>
      <font face="Droid Sans Mono"><br>
            {<br>
      </font></font><font face="Droid Serif"><font face="Droid Sans
        Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>"Dhcp4": {<br>
      </font></font><font face="Droid Serif"><font face="Droid Sans
        Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>    ...<br>
      </font></font><font face="Droid Serif"><font face="Droid Sans
        Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>    "client-classes": [<br>
            </font></font><font face="Droid Serif"><font face="Droid
        Sans Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>    {<br>
                </font></font><font face="Droid Serif"><font face="Droid
        Sans Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>    "name": "pxe_bios_x86",<br>
                    </font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono">    </font></font>"test":
        "substring(option[60].hex,0,9) == 'PXEClient' and option[93].hex
        == 0x0000",<br>
      </font></font><font face="Droid Serif"><font face="Droid Sans
        Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>            "next-server": "10.2.84.194",<br>
            </font></font><font face="Droid Serif"><font face="Droid
        Sans Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>        "boot-file-name": "/pxeboot/pxelinux.0"<br>
                </font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono">    </font></font>}<br>
      </font></font><font face="Droid Serif"><font face="Droid Sans
        Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>    ]<br>
            </font></font><font face="Droid Serif"><font face="Droid
        Sans Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>"subnet4": [<br>
                </font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono">    </font></font>{<br>
                    </font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono">    </font></font>"id": 12<br>
      </font></font><font face="Droid Serif"><font face="Droid Sans
        Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>            "subnet": "10.2.24.0/22"<br>
            </font></font><font face="Droid Serif"><font face="Droid
        Sans Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>        ...<br>
                </font></font><font face="Droid Serif"><font face="Droid
        Sans Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>    "pools": [<br>
                    </font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono">    </font></font>    ...<br>
                        </font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono">    </font></font>{<br>
                            </font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono">    </font></font>"pool":
        "10.2.27.65 - 10.2.27.96"<br>
      </font></font><font face="Droid Serif"><font face="Droid Sans
        Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>                    "client-class":
        "pxe_bios_x86"<br>
            </font></font><font face="Droid Serif"><font face="Droid
        Sans Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>            }<br>
                </font></font><font face="Droid Serif"><font face="Droid
        Sans Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>    ]<br>
      </font></font><font face="Droid Serif"><font face="Droid Sans
        Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>        }<br>
            </font></font><font face="Droid Serif"><font face="Droid
        Sans Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>]<br>
      </font></font><font face="Droid Serif"><font face="Droid Sans
        Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>}<br>
      </font></font><font face="Droid Serif"><font face="Droid Sans
        Mono"><font face="Droid Serif"><font face="Droid Sans Mono">   
          </font></font>}<br>
        <br>
        <font face="Droid Serif">On my tftp server I use tftpd-hpa:<br>
          <br>
        </font></font></font><font face="Droid Serif"><font face="Droid
        Sans Mono"><font face="Droid Serif"><font face="Droid Sans Mono"><font
              face="Droid Serif"><font face="Droid Sans Mono">    </font></font>user@ftphost:~$
            cat /etc/default/tftpd-hpa <br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>#
            /etc/default/tftpd-hpa<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono">    </font></font><br>
    <font face="Droid Serif"><font face="Droid Sans Mono"><font
          face="Droid Serif"><font face="Droid Sans Mono"><font
              face="Droid Serif"><font face="Droid Sans Mono">    </font></font>TFTP_USERNAME="tftp"<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>TFTP_DIRECTORY="/srv/tftp"<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>TFTP_ADDRESS="10.2.84.194:69"<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>TFTP_OPTIONS="--listen
            --secure --port-range 58000:58999 -vvv"</font><br>
          <br>
          And under my pxeboot directory I have my PXE configuration:<br>
          <br>
        </font></font></font><font face="Droid Serif"><font face="Droid
        Sans Mono"><font face="Droid Serif"><font face="Droid Sans Mono"><font
              face="Droid Serif"><font face="Droid Sans Mono">    </font></font>user@ftphost:~$
            ls -l /srv/tftp/pxeboot/<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>total 79376<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>drwxr-xr-x 5
            root root        5 Feb 19  2020 centos<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>drwxr-xr-x 5
            root root        5 Feb 19  2020 debian<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>drwxr-xr-x 4
            root root        4 Feb 19  2020 fedora<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>drwxr-xr-x 4
            root root        7 Feb  1  2020 gtk<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>-rw-r--r-- 1
            root root   115812 Feb 19  2020 ldlinux.c32<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>-rw-r--r-- 1
            root root   180568 Feb 20  2020 libcom32.c32<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>-rw-r--r-- 1
            root root    23052 Feb 20  2020 libutil.c32<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>-rw-r--r-- 1
            root root 50331648 Feb  1  2020 mini.iso<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>-rw-r--r-- 1
            root root 37343759 Feb  1  2020 netboot.tar.gz<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>drwxr-xr-x 4
            root root        4 Feb 19  2020 opensuse<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>-rw-r--r-- 1
            root root    42430 Feb  1  2020 pxelinux.0<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>drwxr-xr-x 2
            root root       10 Jun 10  2021 pxelinux.cfg<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>drwxr-xr-x 7
            root root        7 Feb 19  2020 ubuntu<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>drwxr-xr-x 4
            root root        4 Feb 19  2020 windows<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>drwxr-xr-x 2
            root root        5 Feb  1  2020 xen<br>
            <br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>user@ftphost:~$
            cat /srv/tftp/pxeboot/pxelinux.cfg/default <br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font># Menu setup<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>path       
            gtk/debian-installer/amd64/boot-screens/<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>default    
            gtk/debian-installer/amd64/boot-screens/vesamenu.c32<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>prompt      0<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>timeout     0<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>menu title 
            Harmonywave PXE boot menu<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono">    </font></font><br>
    <font face="Droid Serif"><font face="Droid Sans Mono"><font
          face="Droid Serif"><font face="Droid Sans Mono"><font
              face="Droid Serif"><font face="Droid Sans Mono">    </font></font>#
            Main menu<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>label      
            linux<br>
                </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>           
            menu label      ^Linux boot options<br>
                    </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>        menu
            default<br>
                        </font></font></font></font><font face="Droid
      Serif"><font face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>   
            kernel         
            gtk/debian-installer/amd64/boot-screens/vesamenu.c32<br>
                            </font></font></font></font><font
      face="Droid Serif"><font face="Droid Sans Mono"><font face="Droid
          Serif"><font face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>append         
            pxelinux.cfg/linux.cfg<br>
          </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono">    </font></font><br>
    <font face="Droid Serif"><font face="Droid Sans Mono"><font
          face="Droid Serif"><font face="Droid Sans Mono"><font
              face="Droid Serif"><font face="Droid Sans Mono">    </font></font>label       
            windows<br>
                </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>           
            menu label      ^Windows boot options<br>
                    </font></font></font></font><font face="Droid Serif"><font
        face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>       
            kernel         
            gtk/debian-installer/amd64/boot-screens/vesamenu.c32<br>
                        </font></font></font></font><font face="Droid
      Serif"><font face="Droid Sans Mono"><font face="Droid Serif"><font
            face="Droid Sans Mono"><font face="Droid Serif"><font
                face="Droid Sans Mono">    </font></font>   
            append          pxelinux.cfg/windows.cfg</font><br>
        </font></font><br>
      The main menu takes you to various other sub-menus (i.e. Linux
      -> Ubuntu -> "Various Ubuntu distro options", etc) which are
      defined in their own files. Also this only works for BIOS (CSM)
      systems on x86 over IPv4. I've yet to configure UEFI for IPv4 or
      anything for IPv6.<br>
    </font><br>
    <div class="moz-cite-prefix">On 2/23/22 08:46, Stephen Berg, Code
      7309 via Kea-users wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:a75316c9-a7a1-0a86-3ca9-c824cb0bda62@nrlssc.navy.mil">On
      2/23/2022 9:17 AM, Stephen Berg, Code 7309 via Kea-users wrote:
      <br>
      <blockquote type="cite">Where can I find documentation on setting
        up pxebooting to do linux installs?  I'm running kea-1.8.0-2 on
        Rocky Linux 8.5.  I want to be able to pxeboot different OS's
        like centos 7.x, rocky 8.x and future releases.  The tftp-server
        is installed and setup, syslinux packages are installed.  I've
        got just a couple clients defined in dhcp as reserved leases and
        added next-server and filename options for one but when I boot
        the network from that client it never seems to get to the
        pxelinux.0 or the defined kernel in the
        "pxelinux.cfg/01-macaddress" file.
        <br>
        <br>
        I figure I'm probably missing some setup in the kea-dhcp4.conf
        file but can't find what the missing parts might be.
        <br>
        <br>
        My old setup is centos 6, dhcp-4.1.1.  I'd add the next-server
        and filename lines for a particular host reservation then use
        pxeboot to setup the pxelinux.cfg file and that would have
        kernel parameters to boot the installer and read a kickstart
        file.  Right now I can get the new system to boot from the
        network, it gets an IP from kea but then fails to find the tftp
        file to boot from.
        <br>
      </blockquote>
      <br>
      Additional related issue: On my previous dhcpd setup I'd setup a
      new system to boot and install from the network with the pxeboot
      command and it would create the pxelinux.cfg/<host
      identifier> file with the kernel that's available from tftp and
      an append line.  I can't find the pxeboot command anywhere in
      Rocky Linux 8.x.  I can hand jam those files if needed but was
      curious if the utility is available somewhere. There's a pxeos.xml
      file in that setup and it's also seemingly not available in RL8 or
      kea.
      <br>
      <br>
      <br>
      <fieldset class="moz-mime-attachment-header"></fieldset>
    </blockquote>
    <br>
    <pre class="moz-signature" cols="0">-- 
Thanks,
Joshua Schaeffer</pre>
  </body>
</html>