Dans le cas d’un PRA Active Directory, si on positionne des contrôleurs “normalement” des contrôleurs de domaine sur le site de secours, on s’attend à ce que les systèmes d’exploitation Windows XP/2003 les utilisent lors du passage en “secours”. Et bien, c’est un peu plus compliqué que cela, …

Sous Windows XP/2003, le système d’exploitation va identifier une liste des contrôleurs de domaine potentiels lors du démarrage. De cette liste, il ne va en retenir qu’un seul (et il va garder sa tête celui-là). En plus, cette information ne sera mis à jour que dans deux cas :

  • Le système d’exploitation est redémarré

  • Que le contrôleur de domaine en cache ne réponde plus (Quickening)

S’il faut redémarrer un Datacenter pour que nos systèmes d’exploitation Windows 2003 puissent utiliser de nouveau un contrôleur de domaine, le temps de reprise va en être considérablement allongé. On peut aussi attendre qu’il le découvrent par lui même.

Pour le nombre de contrôleur de domaine mis en cache, c’est la faute à la fonction “DsGetDcName”. Avec un peu de recherches, on découvre qu’il est possible de forcer manuellement l’actualisation de ce cache avec la commande suivante :

nltest /dsgetdc:Nom du domaine DNS /force

Heureusement, cette problématique est maintenant résolue avec la KB939252. Elle s’applique aussi-bien à Windows XP que Windows Server 2003. Elle permet d’introduire une actualisation automatique du cache cache toutes les douze heures. Il est même possible de choisir sa propre périodicité d’actualisation avec la clé de registre DWORD suivante:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services

\Netlogon\Parameters\ForceRediscoveryInterval

Note : La valeur est exprimée en secondes.

http://blogcastrepository.com/blogs/benoits/archive/2009/03/30/la-kb-d-233-tail-pour-pra-active-directory.aspx