Chapitre 418 minIntermédiaire
Démarrage PXE et WDS : déployer par le réseau
Par Josselyn C., prof de BTS SIO. Mis à jour le .
À la fin de ce chapitre, tu sauras
- décrire les étapes d'un démarrage PXE, du DHCP au chargeur ;
- configurer les options 66 et 67 sur le DHCP de l'annuaire, à travers un relais ;
- dire ce que WDS sait encore faire en 2026 et ce que le retrait de MDT change ;
- diagnostiquer un poste qui ne démarre pas sur le réseau.
4 exercices corrigés1 schéma
Le démarrage PXE (Preboot eXecution Environment) permet à un ordinateur de démarrer sur sa carte réseau au lieu de son disque : il reçoit une adresse IP et l'emplacement d'un petit programme de démarrage par DHCP, le télécharge par TFTP, puis charge l'environnement de déploiement. C'est la porte d'entrée de tous les outils de déploiement par le réseau, de WDS à FOG. Ce chapitre décrit le déroulé d'un démarrage PXE, sa configuration sur le DHCP de l'annuaire à travers les VLAN, et l'état de WDS et de MDT en 2026.
Pourquoi démarrer sur le réseau
Sans PXE, il faut une clé USB par poste ou presque, la bonne image sur chaque clé, et un technicien qui passe de bureau en bureau. Avec PXE, le poste démarre sur le réseau, le serveur de déploiement lui envoie l'environnement et l'image, et le technicien pilote tout depuis une console. On peut déployer dix postes à la fois, et même réinstaller un poste à distance s'il est configuré pour démarrer sur le réseau en premier.
PXE est une norme d'Intel (1999), intégrée au micrologiciel de presque toutes les cartes réseau. Sur un PC UEFI, elle s'active dans les réglages du micrologiciel (souvent Network Stack ou PXE Boot), et le démarrage réseau se choisit dans le menu de démarrage ponctuel (touche F12 sur beaucoup de modèles) ou dans l'ordre de démarrage.
Le déroulé d'un démarrage PXE
Quand le poste démarre sur sa carte réseau, six étapes s'enchaînent :
- DHCPDISCOVER. Le micrologiciel diffuse une demande DHCP ordinaire, avec deux renseignements en plus : l'option 60 (vendor class) contient
PXEClientsuivi de l'architecture, et l'option 93 précise l'architecture du client (BIOS, UEFI 64 bits, ARM…). - DHCPOFFER. Le serveur DHCP propose une adresse IP et, si on l'a configuré, l'adresse du serveur de démarrage (option 66, ou le champ next-server de l'en-tête DHCP) et le nom du fichier de démarrage (option 67, bootfile name).
- DHCPREQUEST et DHCPACK. Le poste accepte l'offre et obtient son adresse, comme n'importe quel client DHCP.
- TFTP. Le poste télécharge le fichier de démarrage réseau (NBP, Network Bootstrap Program) depuis le serveur de l'option 66, par TFTP (UDP 69). TFTP est un protocole minimal, sans authentification ni chiffrement, que le micrologiciel sait parler.
- Le chargeur. Le NBP s'exécute. Pour FOG, c'est iPXE, un chargeur libre plus capable, qui affiche un menu et télécharge la suite en HTTP, bien plus rapide que TFTP. Pour WDS, c'est le gestionnaire de démarrage de Windows, qui charge Windows PE.
- L'environnement de déploiement démarre en mémoire (le noyau Linux de FOG, Windows PE pour WDS ou Configuration Manager) et applique l'image ou lance l'installation.
L'architecture annoncée par le poste compte, car le fichier de démarrage n'est pas le même pour un BIOS hérité et pour un UEFI :
| Option 93 | Architecture | Fichier de démarrage typique de FOG |
|---|---|---|
| 0 | BIOS hérité x86 | undionly.kkpxe |
| 6 | UEFI 32 bits | i386-efi/snponly.efi |
| 7 (ou 9) | UEFI 64 bits | snponly.efi, ou la chaîne signée secureboot/snponly-shimx64.efi |
| 11 | UEFI ARM 64 bits | arm64-efi/snponly.efi, ou la chaîne signée secureboot/arm64-efi/snponly-shimaa64.efi |
En 2026, le parc est presque entièrement en UEFI 64 bits : un seul fichier suffit le plus souvent. Les noms ci-dessus sont ceux de FOG 1.6 ; un autre outil a ses propres fichiers.
Configurer le DHCP de l'annuaire pour le PXE
Chez Sorbier, le DHCP des postes est celui de l'annuaire, sur srv-ad : on ne monte pas un second serveur DHCP pour le déploiement, deux serveurs qui répondent dans le même VLAN se gêneraient. On ajoute les options 66 et 67 à l'étendue du VLAN 10, dans la console DHCP (dhcpmgmt.msc) : IPv4 > Étendue [192.168.10.64] VLAN10-POSTES > Options d'étendue > Configurer les options, cocher 066 Nom d'hôte du serveur de démarrage et 067 Nom du fichier de démarrage. Ou en PowerShell, sur srv-ad :
# Options de démarrage réseau sur l'étendue des postes (VLAN 10)
Set-DhcpServerv4OptionValue -ScopeId 192.168.10.64 -OptionId 66 -Value "192.168.10.186"
Set-DhcpServerv4OptionValue -ScopeId 192.168.10.64 -OptionId 67 -Value "secureboot/snponly-shimx64.efi"
# Vérifier
Get-DhcpServerv4OptionValue -ScopeId 192.168.10.64 | Where-Object OptionId -in 66, 67
Chez Sorbier, l'étendue du VLAN 10 est en basculement entre srv-ad et srv-ad2 (cours Windows Server). Les options et les stratégies ne se recopient pas toutes seules sur le partenaire : en mode équilibrage de charge, environ la moitié des postes reçoit son bail de srv-ad2, et sans réplication ces postes-là n'auraient pas les options de démarrage. Réplique l'étendue après chaque modification :
# Recopier la configuration de l'étendue sur le partenaire de basculement (srv-ad2)
Invoke-DhcpServerv4FailoverReplication -ScopeId 192.168.10.64 -Force
Dans la console, c'est le clic droit sur l'étendue, Répliquer l'étendue.
Pourquoi au niveau de l'étendue et pas du serveur ? Parce que seuls les postes du VLAN 10 doivent démarrer sur le serveur de déploiement : ni les téléphones IP du VLAN 50, ni les terminaux de l'entrepôt.
S'il reste des PC en BIOS hérité, une stratégie DHCP donne à chaque architecture son fichier. On déclare une classe de fournisseur qui reconnaît le début de l'option 60, puis une stratégie qui l'utilise :
# Classe de fournisseur : les clients PXE en BIOS hérité annoncent « PXEClient:Arch:00000 »
Add-DhcpServerv4Class -Name "PXE-BIOS" -Type Vendor -Data "PXEClient:Arch:00000"
# Stratégie sur l'étendue : à ces clients, un autre fichier de démarrage
Add-DhcpServerv4Policy -Name "PXE-BIOS" -ScopeId 192.168.10.64 -Condition OR -VendorClass EQ, "PXE-BIOS*"
Set-DhcpServerv4OptionValue -ScopeId 192.168.10.64 -PolicyName "PXE-BIOS" -OptionId 67 -Value "undionly.kkpxe"
L'étoile après le nom de la classe veut dire « commence par » : l'option 60 complète contient d'autres informations après l'architecture. Pense ensuite à répliquer l'étendue vers srv-ad2, comme plus haut.
Traverser les VLAN
Les postes sont dans le VLAN 10, le DHCP et le serveur de déploiement dans le VLAN 20. Deux mécanismes rendent le PXE possible entre VLAN :
- Le relais DHCP. La diffusion DHCPDISCOVER ne traverse pas un routeur. Le switch de cœur, qui route les VLAN, la relaie en unicast vers les deux serveurs DHCP grâce à
ip helper-address 192.168.10.177etip helper-address 192.168.10.181sur l'interface du VLAN 10 : c'est déjà en place pour le DHCP ordinaire (cours Routage et commutation). Le serveur répond au relais (l'adresse192.168.10.126, que le relais a placée dans le champ giaddr de la demande), et le relais transmet la réponse au poste. Les options 66 et 67 voyagent dans cette réponse. - Le routage du TFTP et du HTTP. Une fois son adresse obtenue, le poste contacte
192.168.10.186en unicast, par sa passerelle192.168.10.126: rien de spécial à faire si le switch de cœur route sans filtrer.
Si le routage entre VLAN passe par le pare-feu (l'architecture du cours Cybersécurité de l'infrastructure), il faut autoriser du VLAN 10 vers srv-deploiement : TFTP (UDP 69), HTTP et HTTPS (TCP 80 et 443), et le partage des images (NFS pour FOG). TFTP pose un piège : les données repartent du serveur depuis un port aléatoire, qu'un pare-feu ne relie pas tout seul à la demande. Sur pfSense, l'option TFTP Proxy (System > Advanced > Firewall & NAT) suit ces échanges (les règles elles-mêmes s'écrivent comme au chapitre Règles de pare-feu pfSense). Dans cette architecture, c'est aussi pfSense qui relaie le DHCP (Services > DHCP Relay, interface des postes, serveurs de destination 192.168.10.177 et 192.168.10.181 ; voir DHCP et DNS : pfSense ou Active Directory ?) : les options 66 et 67 traversent le relais sans réglage particulier.
WDS : ce qu'il sait encore faire en 2026
WDS (Windows Deployment Services, services de déploiement Windows) est le rôle de Windows Server qui sert de serveur PXE et distribue des images Windows. Pendant quinze ans, le couple WDS et MDT a été la solution gratuite de Microsoft pour déployer des postes. Sa situation a beaucoup changé :
| Date | Ce qui change |
|---|---|
| Windows 11 (2021) | Le déploiement de bout en bout avec le boot.wim du média de Windows (Windows Setup en « mode WDS ») est bloqué pour Windows 11 |
| Windows Server 2025 | Utiliser le boot.wim du média n'est plus pris en charge, quelle que soit la version déployée |
| Avril 2026 | Le déploiement « mains libres » de WDS (hands-free) est désactivé par défaut par les mises à jour de sécurité, à la suite d'une vulnérabilité (CVE-2026-0386) |
| Septembre 2026 | Microsoft annonce que le rôle WDS entier, son PXE et le multicast seront dépréciés à partir de la version de Windows Server qui suivra 2025 |
Ce qui reste possible : sur Windows Server 2025 et les versions précédentes, WDS continue de fonctionner pendant leur cycle de support, et il sait toujours démarrer des postes en PXE avec une image de démarrage personnalisée (un Windows PE construit avec l'ADK, ou celui d'un outil tiers). Ce qui ne l'est plus : installer Windows 11 avec WDS seul.
Pour comprendre une infrastructure existante, voici l'installation de base :
# Sur un serveur membre du domaine, avec un volume D: dédié aux images
Install-WindowsFeature WDS -IncludeManagementTools
wdsutil /Initialize-Server /RemInst:"D:\RemoteInstall"
# Répondre à tous les clients PXE (par défaut, WDS ne répond à personne)
wdsutil /Set-Server /AnswerClients:All
# Ajouter une image de démarrage personnalisée (Windows PE construit avec l'ADK)
Import-WdsBootImage -Path "C:\WinPE_amd64\media\sources\boot.wim" -NewImageName "WinPE Sorbier 2026-11"
Si WDS et le DHCP sont sur le même serveur, WDS ne doit pas écouter sur le port 67 et le DHCP doit annoncer l'option 60 : wdsutil /Set-Server /UseDHCPPorts:No /DHCPOption60:Yes.
MDT : retiré
MDT (Microsoft Deployment Toolkit) ajoutait à WDS des séquences de tâches : partitionner, appliquer l'image, injecter les pilotes du modèle, joindre le domaine, installer les applications, le tout piloté par une base de règles. Microsoft l'a retiré : les téléchargements ont disparu début 2026, il ne reçoit plus aucun correctif, y compris de sécurité, et son intégration à Configuration Manager n'est plus prise en charge. Les installations existantes fonctionnent encore, sans support.
Tu croiseras encore WDS et MDT en stage, dans des entreprises qui ne les ont pas remplacés, et dans des sujets ou des rapports d'anciens étudiants. Sache les reconnaître et expliquer pourquoi on ne les choisit plus pour un nouveau projet.
Les solutions en 2026
| Solution | Pour qui | Remarques |
|---|---|---|
| Microsoft Configuration Manager (déploiement de systèmes, OSD) | Grandes organisations avec une infrastructure locale | Pris en charge, payant, complexe ; son répondeur PXE fonctionne sans WDS |
| Windows Autopilot avec Intune | Organisations en Microsoft 365, postes neufs, télétravail | Pas de réimagerie : on transforme le Windows du fabricant (chapitre 6) |
| FOG Project | PME, écoles, laboratoires | Libre, serveur Linux, PXE et iPXE, multicast (chapitre 5) |
| Clonezilla | Petits parcs, clonage ponctuel | Libre, depuis une clé USB, ou en serveur pour le multicast |
| Installation automatisée depuis le média | Parcs variés | autounattend.xml sur une clé ou un partage, puis scripts (chapitre 3) |
Microsoft cite aussi le démarrage HTTP(S) des micrologiciels UEFI récents : le poste télécharge son chargeur en HTTP ou HTTPS, sans TFTP. C'est une évolution de la couche réseau, pas un outil de déploiement complet.
Dépanner un démarrage PXE
| Symptôme | Cause probable | Vérification |
|---|---|---|
| Le poste ne tente même pas le démarrage réseau | Pile réseau désactivée dans l'UEFI, ou démarrage réseau absent de l'ordre de démarrage | Réglages du micrologiciel, menu de démarrage ponctuel |
| « No valid offer received » ou délai dépassé au DHCP | Pas de DHCP dans le VLAN, relais absent, étendue pleine ou désactivée | show run interface Vlan10 sur le switch de cœur, baux libres de l'étendue |
| Une adresse est reçue, mais aucun fichier de démarrage | Options 66 ou 67 absentes ou fautives ; option 60 posée à tort | Get-DhcpServerv4OptionValue sur l'étendue |
| Délai dépassé en TFTP | Serveur TFTP arrêté, pare-feu entre les VLAN, mauvais nom de fichier | systemctl status tftpd-hpa sur le serveur FOG, journaux du pare-feu |
| « Secure Boot violation » | Chargeur non signé, ou certificat du serveur FOG (MOK) pas encore enrôlé sur ce poste | Option 67 sur le fichier signé, entrée Enroll Secure Boot Key du menu de FOG |
| Le chargeur démarre, puis l'environnement ne trouve pas le disque | Contrôleur en mode RAID ou pilote absent de l'environnement de déploiement | Mode AHCI du contrôleur SATA dans l'UEFI, ou pilotes ajoutés à Windows PE |
Exercices
Exercice 1 sur 4 Le démarrage PXE dans l'ordre Réussi À revoir
Remets dans l'ordre les étapes d'un démarrage PXE chez Sorbier : (a) le poste télécharge snponly-shimx64.efi en TFTP depuis 192.168.10.186 ; (b) srv-ad répond avec une adresse et les options 66 et 67 ; (c) iPXE télécharge en HTTP le noyau et l'environnement de FOG ; (d) le poste diffuse un DHCPDISCOVER avec l'option 60 PXEClient ; (e) le switch de cœur relaie la demande vers 192.168.10.177 ; (f) le poste confirme par un DHCPREQUEST et reçoit le DHCPACK.
Voir la réponseMasquer la réponse de l'exercice 1
(d) → (e) → (b) → (f) → (a) → (c). Le DHCP d'abord (découverte relayée, offre avec les options, demande et accusé de réception), puis le téléchargement du chargeur par TFTP auprès du serveur de l'option 66, puis le chargeur iPXE qui passe en HTTP pour la suite.
Tu avais trouvé ?
Exercice 2 sur 4 Préparer le DHCP pour FOG Réussi À revoir
Une autre PME, Granit BTP, a le même genre d'infrastructure que Sorbier : un DHCP Windows sur son contrôleur de domaine 10.20.99.10, un switch de cœur qui route ses VLAN, et un serveur FOG neuf en 10.20.99.20. Ses postes sont dans le VLAN 10, étendue 10.20.10.0/24, passerelle 10.20.10.254. Tous ses PC sont en UEFI 64 bits.
- Écris les commandes PowerShell à lancer sur le contrôleur de domaine pour que les postes démarrent sur FOG.
- Que faut-il vérifier sur le switch de cœur ?
- Pourquoi ne pas poser ces options au niveau du serveur DHCP, pour toutes les étendues d'un coup ?
Voir la réponseMasquer la réponse de l'exercice 2
- Sur l'étendue des postes :
Set-DhcpServerv4OptionValue -ScopeId 10.20.10.0 -OptionId 66 -Value "10.20.99.20" Set-DhcpServerv4OptionValue -ScopeId 10.20.10.0 -OptionId 67 -Value "secureboot/snponly-shimx64.efi" - Que l'interface du VLAN 10 porte bien
ip helper-address 10.20.99.10, sans quoi les postes n'obtiennent même pas d'adresse, et que le routage (ou le pare-feu) laisse passer TFTP, HTTP, HTTPS et NFS de10.20.10.0/24vers10.20.99.20. - Parce que les options du serveur s'appliqueraient à tous les VLAN : les téléphones, les caméras ou les terminaux qui démarrent en PXE pourraient tenter de charger l'environnement de FOG. Au niveau de l'étendue, seuls les postes visés sont concernés.
Tu avais trouvé ?
Exercice 3 sur 4 Diagnostiquer Réussi À revoir
Un poste neuf du VLAN 10 démarre sur le réseau, affiche une adresse 192.168.10.83, puis « PXE: No boot filename received » et redémarre. Les autres postes du VLAN obtiennent une adresse normalement.
- Quelle étape du PXE a réussi, laquelle a échoué ?
- Quelles sont les deux causes les plus probables, et comment les vérifier ?
Voir la réponseMasquer la réponse de l'exercice 3
- Le DHCP a réussi (le relais et l'étendue fonctionnent : le poste a une adresse). C'est l'étape 2 qui est incomplète : l'offre ne contenait pas de nom de fichier de démarrage, donc le poste ne peut pas passer au TFTP.
- Option 67 absente de l'étendue (ou posée sur une autre étendue, ou seulement dans une stratégie qui ne correspond pas à l'architecture du poste) :
Get-DhcpServerv4OptionValue -ScopeId 192.168.10.64etGet-DhcpServerv4Policy -ScopeId 192.168.10.64. Option 60PXEClientposée sur le serveur DHCP alors que WDS n'y est pas : le poste attend une réponse PXE séparée qui ne vient jamais. On la retire avecRemove-DhcpServerv4OptionValue -OptionId 60.
Tu avais trouvé ?
Exercice 4 sur 4 WDS en 2026 Réussi À revoir
Le gérant d'une PME cliente a lu un tutoriel de 2018 et veut installer WDS sur Windows Server 2025 pour déployer Windows 11 à partir du boot.wim de l'ISO. Que lui réponds-tu, en trois points ?
Voir la réponseMasquer la réponse de l'exercice 4
- Ce scénario est bloqué : depuis Windows 11, l'installation de bout en bout avec le
boot.wimdu média par WDS n'est plus possible, et Windows Server 2025 ne prend plus en charge ceboot.wim. - WDS lui-même sera déprécié dans la prochaine version de Windows Server (annonce de septembre 2026), et MDT, qui le complétait, est retiré. Construire un nouveau projet dessus, c'est investir dans une solution en fin de vie.
- Selon la taille et l'équipement de l'entreprise : FOG Project (libre) pour un parc local, Windows Autopilot si l'entreprise a des licences Intune, Configuration Manager pour une grande structure. WDS ne garde d'intérêt que comme serveur PXE pour une image de démarrage personnalisée, dans une infrastructure existante.
Tu avais trouvé ?