10 novembre 2026
Logo Windows

Configurer un serveur DNS secondaire sur Windows Server 2022 avec PowerShell

Configurer un serveur DNS secondaire sur Windows Server 2022 avec PowerShellwindows
Photo: Brett Sayles / Pexels
🖥️ Illustration
PowerShell – DNS secondaire
PS C:\> Install-WindowsFeature -Name DNS -IncludeManagementTools
Success Restart Needed Exit Code Feature Result
——- ————— ——— ————–
True False Success {DNS}

PS C:\> Add-DnsServerSecondaryZone -Name contoso.local -MasterServers 10.0.0.10 -ZoneFile C:\Windows\System32\dns\contoso.local.dns
PS C:\> Get-DnsServerZone -Name contoso.local
ZoneName : contoso.local
ZoneType : Secondary
MasterServers : {10.0.0.10}
DataFile : C:\Windows\System32\dns\contoso.local.dns

PS C:\> Resolve-DnsName -Name dc1.contoso.local -Server 10.0.0.20
Name Type TTL Section IPAddress
—- —- — ——- ———
dc1.contoso.local A 3600 Answer 10.0.0.5

Contexte

Dans un environnement Active Directory, disposer d’un serveur DNS secondaire permet d’assurer la continuité de service en cas de panne du serveur DNS principal. Cette configuration garantit que les résolutions de noms continuent de fonctionner, réduisant ainsi les temps d’indisponibilité pour les utilisateurs et les services critiques.

DNS secondaire PowerShellwindows
Photo: panumas nikhomkhai / Pexels

Quand l’utiliser ?

  • Vous avez déjà un serveur DNS primaire et vous souhaitez ajouter de la redondance.
  • Votre infrastructure s’étend sur plusieurs sites géographiques.
  • Vous devez respecter les exigences de haute disponibilité (HA) pour les services AD.

🔹 Étapes de configuration

  1. Préparer le serveur secondaire

    # Installer le rôle DNS si ce n’est pas déjà fait
    Install-WindowsFeature -Name DNS -IncludeManagementTools
    
    # Vérifier que le service DNS est démarré
    Start-Service DNS
    Get-Service DNS
    
  2. Créer la zone DNS secondaire

    # Variables d’exemple
    $PrimaryDNSServer = "10.0.0.10"
    $ZoneName = "contoso.local"
    
    # Créer la zone secondaire
    Add-DnsServerSecondaryZone -Name $ZoneName -MasterServers $PrimaryDNSServer -ZoneFile "$env:SystemRoot\System32\dns\contoso.local.dns"
    
  3. Configurer le transfert de zone (sur le serveur primaire)

    # Sur le serveur DNS principal (exécuté en remote PowerShell ou local)
    $SecondaryDNSServer = "10.0.0.20"
    
    Add-DnsServerZoneTransferPolicy -Name "AllowSecondary" -PrimaryServers $PrimaryDNSServer -SecondaryServers $SecondaryDNSServer -Action Allow
    
    # Appliquer la politique à la zone
    Set-DnsServerZoneTransferPolicy -ZoneName $ZoneName -Policy "AllowSecondary"
    
  4. Vérifier la réplication de la zone

    # Sur le serveur secondaire
    Get-DnsServerZone -Name $ZoneName
    
    # Forcer un rafraîchissement
    Invoke-DnsServerZoneTransfer -Name $ZoneName -ComputerName $PrimaryDNSServer
    
  5. Tester la résolution DNS

    # Depuis un client ou le serveur secondaire
    Resolve-DnsName -Name "dc1.contoso.local" -Server 10.0.0.20
    

🔹 Méthode alternative

Si PowerShell n’est pas votre préférence, vous pouvez créer la zone secondaire via l’interface graphique MMC DNS : clic droit sur Forward Lookup Zones → New Zone → Secondary Zone et indiquez l’adresse IP du serveur primaire.

⚠️ Bonnes pratiques de sécurité

  • Restreindre le trafic DNS aux seuls serveurs autorisés via Windows Firewall (règle inbound UDP/TCP 53).
  • Utiliser des ACL DNS pour empêcher les mises à jour non autorisées (Set-DnsServerZoneTransferPolicy avec -Action Deny pour les IP non approuvées).
  • Activer le chiffrement DNS (DNS over TLS) si vos clients le supportent.
  • Surveiller les logs DNS (Event Viewer > DNS‑Server) et mettre en place des alertes sur les échecs de transfert.

✅ Conclusion

En suivant ces étapes, vous avez mis en place un serveur DNS secondaire robuste, améliorant la résilience de votre infrastructure AD. N’oubliez pas de documenter les adresses IP, les zones et les politiques de transfert afin de faciliter la maintenance future.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *