Q. Comment forcer un client à valider son logon sur un contrôleur de domaine spécifique ?
R. Avant de répondre, il est nécessaire de bien comprendre ce qui se passe quand on se "logge".
Quand une requête de logon est faite sur un domaine, la station de travail envoie une requête de recherche d'un contrôleur de domaine pour le domaine choisi. Le nom de domaine est un nom NetBIOS, à 16 caractères, dont le 16ème est utilisé par les services réseaux de Microsoft pour identifier le type NetBIOS.
Le type, pour un contrôleur de domaine, est <1C>. Donc, le nom NetBIOS pour un contrôleur de domaine pour le domaine "TOTO" doit être "TOTO <1C>". Le type NetBIOS étant le 16ème caractère, il faut compléter le nom du domaine jusqu'à ce qu'il ait 15 caractères.
Si le client est configuré pour le WINS, alors une requête pour la résolution de "<nom de domaine> <1C>" sera envoyée au serveur WINS, comme défini dans les propriétés TCP/IP du poste client. Le serveur WINS retournera alors jusqu'à 25 adresses IP, correspondantes aux contrôleurs de domaine pour le domaine demandé, un \mailslot\net\ntlogon est broadcasté sur le réseau local et, si la station de travail reçoit une réponse, elle pourra alors tenter de se connecter au contrôleur de domaine local.
Si le WINS n'est pas configuré, il est possible de spécifier manuellement, dans le fichier LMHOSTS sur les stations de travail, le Contrôleur de Domaine. Ce fichier est situé dans le répertoire %systemroot%\system32\drivers\etc.
Voici un exemple de ligne pouvant figurer dans un fichier LMHOSTS :
200.200.200.50 mindfields #PRE #DOM:toto #contrôleur de domaine toto
La ligne ci-dessus affecte l'adresse IP 200.200.200.50 au nom Mindfields, qui est le contrôleur de domaine pour Toto, et indique à la machine que cette entrée doit être pré-chargée dans le cache.
Pour vérifier le nom NetBIOS dans le cache, vous pouvez utiliser la commande nbtstat -c, qui vous montre toutes les entrées, y compris leur type. Si le WINS n'est pas configuré, et s'il n'y a pas d'entrées dans le fichier LMHOSTS, alors la station de travail enverra une série de 3 broadcasts. Dans le cas où aucune réponse n'est reçue, et que le WINS est configuré pour utiliser le DNS pour la résolution WINS, une requête sera envoyé au serveur DNS, et, finalement, le fichier HOSTS sera vérifié. Si rien de ceci n'aboutit, l'erreur suivante apparaîtra : "Aucun contrôleur de domaine n'était disponible pour valider votre mot de passe".
Pour forcer un client à utiliser un Contrôleur de Domaine spécifique, exécutez la procédure suivante :
La machine est maintenant configurée correctement. Si aucun Contrôleur de Domaine n'a été trouvé sur le serveur WINS, ou si le WINS n'est pas utilisé, la machine cherchera dans le fichier LMHOSTS. La prochaine étape est de modifier ce fichier :
Le Service Pack 4 inclue un nouvel utilitaire, SETPRFDC.EXE, qui dirige le client client vers une liste prédéfinie de Contrôleurs de Domaine, via un canal crypté (SSL).
La syntaxe est :
C:\> SETPRFDC <om Domaine> <CD1, CD2, ....., CDn>
SETPRFDC va essayer chaque Contrôleur de Domaine de la liste dans l'ordre, jusqu'à ce qu'un canal crypté soit établi. Si le CD1 ne répond pas, CD2 est essayé, et ainsi de suite. La première fois que vous lancez SETPRFDC sur une machine WinNT 4.0, SP4 minimum, la liste est mémorisée jusqu'à ce que vous la changiez. Vous pouvez lancer SETPRFDC par batch, via le scheduler, ou même dans un script de logon (pour les futurs logons). N'oubliez pas de supprimer les entrées LMHOSTS que vous aviez déjà.
Un commentaire , une précision ? Ecrivez
nous.