<p>La réponse est que la première fois qu’un client s’authentifie auprès d’Active Directory, il ne sait pas dans quel site il se trouve.</p>
<p>Lors de la première jonction au domaine, le client effectue des requêtes DNS et LDAP générales et obtient une liste de tous les contrôleurs de domaine du domaine, et il parcourt la liste en essayant des liaisons LDAP, et le premier DC auquel il se lie avec succès est le premier DC auprès duquel il s’authentifie.</p>
<p>Après que le client a rejoint le domaine, Active Directory informe le client du site auquel il appartient. Active Directory le sait parce que l’administrateur a placé le sous-réseau IP du client dans Sites et services AD et l’a associé à un site.</p>
<p>Active Directory indique au client quel est son site AD, et le client stocke cette information dans son propre registre dans la valeur <code>HKLM\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters\DynamicSiteName</code>. Ainsi, la prochaine fois que le client démarre, il sait quelle requête DNS spécifique au site effectuer pour n’obtenir que les DC qui sont dans ce site.</p>
<p>Bien entendu, le <a href="http://support.microsoft.com/kb/247811">comportement complet est documenté dans la KB247811</a>, mais si vous voulez le voir par vous-même, vous pourriez lancer Wireshark ou NetMon et faire une capture de paquets, puis joindre un domaine pendant que la capture est en cours. Vous verrez la séquence exacte des requêtes DNS et des liaisons LDAP. Les requêtes DNS et liaisons LDAP suivantes sont effectuées vers les sous-zones spécifiques au site car le client a été informé par AD du site auquel il appartient.</p>
<p>Le service Netlogon actualisera périodiquement ses informations de site AD, donc si vous vous déplacez vers un autre réseau, votre client obtiendra automatiquement son nouveau site. Cela peut être ajusté dans la valeur de registre <code>HKLM\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters\SiteNameTimeout</code>. (<a href="http://technet.microsoft.com/en-us/library/cc958488.aspx">Lien</a>)</p>