Para el arranque PXE del instalador de ESXi, el servidor DHCP debe enviar la dirección del servidor TFTP y el nombre de archivo del cargador de arranque inicial al host ESXi.

Cuando la máquina de destino arranca por primera vez, transmite un paquete mediante la red para solicitar información a fin de realizar el arranque por sí misma. El servidor DHCP responde. El servidor DHCP debe ser capaz de determinar si la máquina de destino puede arrancar y, asimismo, de determinar la ubicación del archivo binario del cargador de arranque inicial (generalmente un archivo en un servidor TFTP).

Precaución: No configure un segundo servidor DHCP si la red ya tiene uno. Si varios servidores DHCP responden a las solicitudes de DHCP, las máquinas pueden obtener direcciones IP incorrectas o en conflicto, o no recibir la información de arranque correcta. Consulte a un administrador de red antes de configurar un servidor DHCP. Para obtener asistencia en relación con la configuración de DHCP, póngase en contacto con el proveedor del servidor DHCP.

Muchos servidores DHCP tienen hosts de arranque mediante PXE. Si usa una versión de DHCP para Microsoft Windows, consulte la documentación del servidor DHCP para determinar cómo transmitir los argumentos next-server y filename a la máquina de destino.

Ejemplo de arranque mediante TFTP con IPv4

En este ejemplo se muestra cómo configurar un servidor DHCP de ISC para arrancar ESXi mediante un servidor TFTP en una dirección IPv4 xxx.xxx.xxx.xxx.

#
# ISC DHCP server configuration file snippet.  This is not a complete
# configuration file; see the ISC server documentation for details on
# how to configure the DHCP server.
#
allow booting;
allow bootp;
option client-system-arch code 93 = unsigned integer 16;
class "pxeclients" {
   match if substring(option vendor-class-identifier, 0, 9) = "PXEClient";
   next-server xxx.xxx.xxx.xxx;
   if option client-system-arch = 00:07 or option client-system-arch = 00:09 {
      filename = "mboot.efi";
   } else {
      filename = "pxelinux.0";
   }
}

Cuando una máquina intenta realizar un arranque PXE, el servidor DHCP proporciona una dirección IP y la ubicación del archivo binario pxelinux.0 o mboot.efi en el servidor TFTP.

Ejemplo de arranque mediante TFTP con IPv6

En este ejemplo se muestra cómo configurar un servidor DHCPv6 de ISC para arrancar ESXi mediante un servidor TFTP en una dirección IPv6 xxxx:xxxx:xxxx:xxxx::xxxx.

#
# ISC DHCPv6 server configuration file snippet.  This is not a complete
# configuration file; see the ISC server documentation for details on
# how to configure the DHCP server.
#
allow booting;
allow bootp;
option dhcp6.bootfile-url code 59 = string;
option dhcp6.bootfile-url "tftp://[xxxx:xxxx:xxxx:xxxx::xxxx]/mboot.efi";

Cuando una máquina intenta realizar un arranque PXE, el servidor DHCP proporciona una dirección IP y la ubicación del archivo binario mboot.efi en el servidor TFTP.

Ejemplo de arranque mediante HTTP con IPv4

En este ejemplo se muestra cómo configurar un servidor DHCP de ISC para arrancar ESXi mediante un servidor web en una dirección IPv4 xxx.xxx.xxx.xxx. El ejemplo utiliza gPXELINUX para los hosts de BIOS heredado e iPXE para los hosts UEFI.

#
# ISC DHCPv6 server configuration file snippet.  This is not a complete
# configuration file; see the ISC server documentation for details on
# how to configure the DHCP server.
#
allow booting;
allow bootp;
option client-system-arch code 93 = unsigned integer 16;
class "pxeclients" {
   match if substring(option vendor-class-identifier, 0, 9) = "PXEClient";
   next-server xxx.xxx.xxx.xxx;
   if option client-system-arch = 00:07 or option client-system-arch = 00:09 {
      if exists user-class and option user-class = "iPXE" {
         # Instruct iPXE to load mboot.efi as secondary bootloader
         filename = "mboot.efi";
      } else {
         # Load the snponly.efi configuration of iPXE as initial bootloader
         filename = "snponly.efi";
      }
   } else {
      filename "gpxelinux.0";
   }
}

Cuando una máquina intenta realizar un arranque PXE, el servidor DHCP proporciona una dirección IP y la ubicación del archivo binario gpxelinux.0 o snponly.efi en el servidor TFTP. En el caso de UEFI, iPXE pide al servidor DHCP el siguiente archivo que se debe cargar y, en esta ocasión, el servidor devuelve el nombre de archivo mboot.efi.

Ejemplo de arranque mediante HTTP con IPv6

En este ejemplo se muestra cómo configurar un servidor DHCPv6 de ISC para arrancar ESXi mediante un servidor TFTP en una dirección IPv6 xxxx:xxxx:xxxx:xxxx::xxxx.

#
# ISC DHCPv6 server configuration file snippet.  This is not a complete
# configuration file; see the ISC server documentation for details on
# how to configure the DHCP server.
#
allow booting;
allow bootp;

option dhcp6.bootfile-url code 59 = string;
if exists user-class and option user-class = "iPXE" {
   # Instruct iPXE to load mboot.efi as secondary bootloader
   option dhcp6.bootfile-url "tftp://[xxxx:xxxx:xxxx:xxxx::xxxx]/mboot.efi";
} else {
   # Load the snponly.efi configuration of iPXE as initial bootloader
   option dhcp6.bootfile-url "tftp://[xxxx:xxxx:xxxx:xxxx::xxxx]/snponly.efi";
}

Cuando una máquina intenta realizar un arranque PXE, el servidor DHCP proporciona una dirección IP y la ubicación del archivo binario snponly.efi (iPXE) en el servidor TFTP. iPXE pide al servidor DHCP el siguiente archivo que se debe cargar y, en esta ocasión, el servidor devuelve el nombre de archivo mboot.efi.