Pour effectuer un démarrage PXE du programme de d'installation ESXi, le serveur DHCP doit envoyer l'adresse du serveur TFTP et le nom de fichier du chargeur de démarrage initial à l'hôte ESXi.
Lorsque la machine cible démarre pour la première fois, elle transmet un paquet sur le réseau demandant cette information pour pouvoir démarrer. Le serveur DHCP répond. Le serveur DHCP doit pouvoir déterminer si la machine cible est autorisée à démarrer et connaître l'emplacement du fichier binaire de démarrage initial (qui réside généralement sur le serveur TFTP).
De nombreux serveurs DHCP peuvent démarrer les hôtes par PXE. Si vous utilisez une version DHCP pour Microsoft Windows, reportez-vous à la documentation du serveur DHCP pour déterminer comment transmettre les arguments next-server et filename à la machine cible.
Exemple de démarrage en utilisant TFTP avec IPv4
Cet exemple fournit la configuration d'un serveur ISC DHCP pour démarrer ESXi à l'aide d'un serveur TFTP à l'adresse 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"; } }
Lorsqu'une machine tente de démarrer en PXE, le serveur DHCP fournit une adresse IP et l'emplacement du fichier binaire pxelinux.0 ou mboot.efisur le serveur TFTP.
Exemple de démarrage en utilisant TFTP avec IPv6
Cet exemple fournit la configuration d'un serveur ISC DHCPv6 pour démarrer ESXi à l'aide d'un serveur TFTP à l'adresse 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";
Lorsqu'une machine tente de démarrer en PXE, le serveur DHCP fournit une adresse IP et l'emplacement du fichier binaire mboot.efi sur le serveur TFTP.
Exemple de démarrage en utilisant HTTP avec IPv4
Cet exemple fournit la configuration d'un serveur ISC DHCP pour démarrer ESXi à l'aide d'un serveur Web à l'adresse IPv4 xxx.xxx.xxx.xxx. L'exemple utilise gPXELINUX pour les anciens hôtes BIOS et iPXE pour les hôtes 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"; } }
Lorsqu'une machine tente de démarrer en PXE, le serveur DHCP fournit une adresse IP et l'emplacement du fichier binaire gpxelinux.0 ou snponly.efi sur le serveur TFTP. Dans le cas de l'UEFI, iPXE demande au serveur DHCP le fichier suivant à charger. Le serveur retourne cette fois le nom de fichier mboot.efi.
Exemple de démarrage en utilisant HTTP avec IPv6
Cet exemple fournit la configuration d'un serveur ISC DHCPv6 pour démarrer ESXi à l'aide d'un serveur TFTP à l'adresse 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"; }
Lorsqu'une machine tente de démarrer en PXE, le serveur DHCP fournit une adresse IP et l'emplacement du fichier binaire snponly.efi (iPXE) sur le serveur TFTP. iPXE demande au serveur DHCP le fichier suivant à charger. Le serveur retourne cette fois le nom de fichier mboot.efi.