- Aperçu
- Convention de variables
- Étape 1 : Vérifier l’état réseau actuel
- Étape 2 : Passer de DHCP à IP statique
- Étape 3 : Définir les serveurs DNS
- Étape 4 : Définir la priorité en environnement multi-NIC
- Étape 5 : Vérifications de fonctionnement
- Étape 6 : Désactiver IPv6 (selon la politique)
- Étape 7 : Bonnes pratiques
- Activer/Désactiver un adaptateur réseau
- Supprimer l’IP statique et revenir au DHCP
- Conclusion
Aperçu
Cet article explique comment gérer de manière unifiée la configuration réseau de Windows Server avec PowerShell.
Nous abordons l’adresse IP statique, la configuration DNS, la priorité de routage et les points d’attention en environnement multi-NIC.
Convention de variables
| Variable | Exemple | Description |
|---|---|---|
<<INTERFACE_ALIAS>> |
Ethernet0 |
Nom de l’adaptateur réseau ciblé |
<<IP_ADDRESS>> |
192.168.10.100 |
Adresse IP fixe |
<<PREFIX_LENGTH>> |
24 |
Longueur de préfixe (ex. 24 pour 255.255.255.0) |
<<GATEWAY>> |
192.168.10.1 |
Passerelle par défaut |
<<DNS1>> |
192.168.10.10 |
Serveur DNS primaire |
<<DNS2>> |
8.8.8.8 |
Serveur DNS secondaire (optionnel) |
Étape 1 : Vérifier l’état réseau actuel
Listez les NIC et examinez la configuration IP.
# Lister les adaptateurs
Get-NetAdapter | Select-Object Name, Status, MacAddress, LinkSpeed
# Afficher la configuration IP
Get-NetIPAddress | Select-Object InterfaceAlias, IPAddress, PrefixLength, DefaultGateway, PrefixOrigin
| OriginType | Signification | Remarque |
|---|---|---|
| Manual | Adresse statique définie manuellement | Via PowerShell ou l’interface graphique |
| DHCP | Adresse attribuée automatiquement par le serveur DHCP | Activée avec Set-NetIPInterface -Dhcp Enabled |
| WellKnown | Adresse réservée système (link-local/APIPA) | Par ex. 169.254.x.x si DHCP est indisponible |
Étape 2 : Passer de DHCP à IP statique
Désactivez DHCP et définissez une IP fixe.
# Désactiver le DHCP
Set-NetIPInterface -InterfaceAlias "<<INTERFACE_ALIAS>>" -Dhcp Disabled
# Supprimer l’adresse fournie par DHCP (si présente)
Get-NetIPAddress -InterfaceAlias "<<INTERFACE_ALIAS>>" -AddressFamily IPv4 |
Where-Object { $_.PrefixOrigin -eq "Dhcp" } |
Remove-NetIPAddress -Confirm:$false
# Définir l’IP statique
New-NetIPAddress `
-InterfaceAlias "<<INTERFACE_ALIAS>>" `
-IPAddress "<<IP_ADDRESS>>" `
-PrefixLength <<PREFIX_LENGTH>> `
-DefaultGateway "<<GATEWAY>>"
Attention :
UtilisezRemove-NetIPAddressuniquement pour retirer une attribution DHCP.
Ne l’exécutez pas sur l’interface utilisée par votre session distante, sous peine de coupure.
Étape 3 : Définir les serveurs DNS
Spécifiez les serveurs DNS et vérifiez l’application.
# Configurer les adresses DNS
Set-DnsClientServerAddress `
-InterfaceAlias "<<INTERFACE_ALIAS>>" `
-ServerAddresses ("<<DNS1>>","<<DNS2>>")
# Vérifier la configuration
Get-DnsClientServerAddress -InterfaceAlias "<<INTERFACE_ALIAS>>"
Vider le cache DNS et tester la résolution :
Clear-DnsClientCache
Resolve-DnsName "www.microsoft.com"
Étape 4 : Définir la priorité en environnement multi-NIC
Sur les serveurs disposant de plusieurs réseaux, contrôlez la priorité de routage via InterfaceMetric.
Plus la valeur est petite, plus la priorité est élevée.
# Afficher les priorités actuelles
Get-NetIPInterface | Sort-Object -Property InterfaceMetric |
Select-Object InterfaceAlias, AddressFamily, InterfaceMetric
# Modifier la priorité (donner la priorité à l’interface d’administration)
Set-NetIPInterface -InterfaceAlias "<<INTERFACE_ALIAS>>" -InterfaceMetric 10
Valeurs recommandées :
- LAN d’administration :
10- LAN de sauvegarde :
20–50- Trafic cluster/iSCSI :
100et plus
Étape 5 : Vérifications de fonctionnement
# Atteignabilité de la passerelle
Test-Connection "<<GATEWAY>>" -Count 4
# Test de résolution de noms
Resolve-DnsName "www.microsoft.com"
Astuce :
Si la configuration DNS ne s’applique pas, redémarrez le service client DNS :net stop dnscache && net start dnscache
Étape 6 : Désactiver IPv6 (selon la politique)
Par défaut, IPv4 et IPv6 coexistent. Si votre environnement n’utilise pas IPv6, vous pouvez le désactiver pour éviter des routes/annonces et des variations de résolution non souhaitées.
# État du binding IPv6
Get-NetAdapterBinding `
-InterfaceAlias "<<INTERFACE_ALIAS>>" `
-ComponentID "ms_tcpip6"
# Désactiver IPv6
Disable-NetAdapterBinding `
-InterfaceAlias "<<INTERFACE_ALIAS>>" `
-ComponentID "ms_tcpip6" `
-PassThru
# Re-contrôle
Get-NetAdapterBinding `
-InterfaceAlias "<<INTERFACE_ALIAS>>" `
-ComponentID "ms_tcpip6"
Réactiver IPv6 :
Enable-NetAdapterBinding `
-InterfaceAlias "<<INTERFACE_ALIAS>>" `
-ComponentID "ms_tcpip6"
Étape 7 : Bonnes pratiques
- Figer les noms des NIC
Évitez les changements automatiques en attribuant un nom de gestion :Rename-NetAdapter -Name "<<INTERFACE_ALIAS>>" -NewName "LAN-Primary" - Supprimer les routes inutiles
Limitez les routes par défaut en double ou incorrectes :Get-NetRoute -AddressFamily IPv4 Remove-NetRoute -DestinationPrefix "0.0.0.0/0" -InterfaceAlias "BackupNIC" -Confirm:$false
Activer/Désactiver un adaptateur réseau
# Désactiver l’adaptateur
Disable-NetAdapter -Name "<<INTERFACE_ALIAS>>" -Confirm:$false
# Activer l’adaptateur
Enable-NetAdapter -Name "<<INTERFACE_ALIAS>>"
Supprimer l’IP statique et revenir au DHCP
Remove-NetIPAddress -InterfaceAlias "<<INTERFACE_ALIAS>>" -IPAddress "<<IP_ADDRESS>>" -Confirm:$false
Set-NetIPInterface -InterfaceAlias "<<INTERFACE_ALIAS>>" -Dhcp Enabled
Conclusion
Avec PowerShell, la configuration réseau de Windows Server devient précise, reproductible et automatisable.
Sur les hôtes multi-NIC, la priorité de routage et une configuration DNS explicite sont cruciales pour la stabilité.
Intégrez des scripts dès l’initialisation pour standardiser et accélérer les déploiements et reconstructions.
