Para arrancar el instalador de ESXi mediante PXE, el servidor DHCP debe enviar la dirección al servidor TFTP y un puntero al directorio pxelinux.0 o gpxelinux.0.

La máquina de destino usa el servidor DHCP para obtener una dirección IP. 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 de PXELINUX (que generalmente reside en un servidor TFTP). Cuando la máquina de destino se arranca por primera vez, transmite un paquete mediante la red para solicitar esta información a fin de realizar un arranque. El servidor DHCP responde.

PRECAUCIÓN:

No configure un nuevo 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 gPXE

En este ejemplo se muestra cómo configurar un servidor DHCP de ISC versión 3.0 para habilitar gPXE.

allow booting;
allow bootp;
# gPXE options
option space gpxe;
option gpxe-encap-opts code 175 = encapsulate gpxe;
option gpxe.bus-id code 177 = string;
class "pxeclients" {
   match if substring(option vendor-class-identifier, 0, 9) = "PXEClient";
   next-server TFTP server address;
   if not exists gpxe.bus-id {
      filename "/gpxelinux.0";
   }
}
subnet Network address netmask Subnet Mask {
   range Starting IP Address Ending IP Address;
}

Cuando una máquina intenta realizar un arranque mediante PXE, el servidor DHCP proporciona una dirección IP y la ubicación del archivo binario gpxelinux.0 en el servidor TFTP. La dirección IP asignada se ubica en el rango definido en la sección de la subred del archivo de configuración.

Ejemplo de PXELINUX (sin gPXE)

En este ejemplo se muestra cómo configurar un servidor DHCP de ISC versión 3.0 para habilitar PXELINUX.

#
# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.sample
#
ddns-update-style ad-hoc;
allow booting;
allow bootp;
class "pxeclients" {
   match if substring(option vendor-class-identifier, 0, 9) = "PXEClient";
   next-server xxx.xxx.xx.xx;
   filename = "pxelinux.0";
}
subnet 192.168.48.0 netmask 255.255.255.0 {
   range 192.168.48.100 192.168.48.250;
}

Cuando una máquina intenta realizar un arranque mediante PXE, el servidor DHCP proporciona una dirección IP y la ubicación del archivo binario pxelinux.0 en el servidor TFTP. La dirección IP asignada se ubica en el rango definido en la sección de la subred del archivo de configuración.