Si votre serveur Windows 2008 exécute les services du serveur DNS et utilise les indices de racine pour résoudre le nom d’hôte Internet, il peut ne pas résoudre les requêtes pour les noms d’hôte dans certains domaines de premier niveau. Lorsque cela se produit, le problème persiste jusqu’à ce que le cache du serveur DNS soit vidé ou que le service du serveur DNS soit redémarré.
Lorsque le problème se produit, une commande NSLOOKUP émise pour un nom affecté renvoie l’erreur « server failed ». Un suivi du réseau montrera que le serveur DNS n’envoie aucun trafic vers Internet pour une telle requête. En outre, aucun événement lié à un problème n’est signalé dans le journal des événements DNS.
Il est intéressant de noter que le serveur DNS ne présente pas ce comportement si le serveur DNS est configuré pour utiliser les forwarders pour la résolution de noms Internet au lieu des root hints.
Pour résoudre ce problème, vous pouvez configurer vos serveurs DNS pour qu’ils fassent suivre les serveurs DNS de votre FAI. Lorsque les serveurs DNS 2008 sont configurés en tant que transitaires, ce problème ne se pose pas.
Pour résoudre le problème et continuer à utiliser les indications de la racine, modifiez la valeur du registre MaxCacheTTL pour qu’elle soit égale ou supérieure à 2 jours. Modifiez le registre à vos risques et périls.
Lancez l'éditeur de registre (regedit.exe). Localisez la clé de registre suivante : HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters. Dans le menu Edition, cliquez sur Nouveau, sur Valeur DWORD (32 bits), puis ajoutez la valeur suivante : Valeur : MaxCacheTTL Type de données : DWORD Valeur des données : 0x2A300 (172800 secondes en décimal, ou 2 jours)
Donnez la valeur 0x0 à MaxCacheTTL si vous ne voulez pas que le serveur DNS mette en cache les requêtes récursives.