Question Rechercher le nom du contrôleur de domaine Active Directory


Comment puis-je connaître le nom / l'adresse IP du contrôleur de domaine AD sur mon réseau?


110
2017-10-25 14:02


origine


DNS devrait être là exactement à cette fin. support.microsoft.com/kb/816587/en-us  petri.co.il/active_directory_srv_records.htm - Massimo
Très court et doux réponse à partir d'un fil connexe sur SO - RBT


Réponses:


Sur tout ordinateur sur lequel DNS est configuré pour utiliser le serveur DNS d'AD, procédez comme suit:

  • Démarrer -> Exécuter -> nslookup 

    set type=all
    _ldap._tcp.dc._msdcs.DOMAIN_NAME
    

Remplacer NOM DE DOMAINE avec le nom de domaine actuel, par exemple exemple.com. Lire la suite ici.


132
2017-10-25 14:31



Dans la réponse ci-dessus, entrer set type = all (dans nslookup) vous permet de voir les enregistrements DNS SRV. Vous pourriez aussi avoir tapé "set type = SRV", les enregistrements SRV sont la façon dont AD s’annonce sur le réseau. - Les
J'ai couru ça et j'ai _ldap._tcp.dc._msdcs.UnKnown. Qu'est-ce que Inconnu signifier? - jp2code


Pour un ordinateur membre d'un domaine, la variable d'environnement LOGONSERVER contient le nom du contrôleur de domaine ayant authentifié l'utilisateur actuel. Cela ne va évidemment pas concerner tous les contrôleurs de domaine dans un environnement multi-contrôleurs, mais si tout ce que vous voulez, c'est un moyen rapide de trouver le nom d'un contrôleur de domaine, puis à partir d'un interpréteur de commande:

set l <enter>

Renvoie toutes les variables d'environnement commençant par "L", y compris le nom d'un contrôleur de domaine.


59
2017-10-25 15:00



+1 pour la simplicité. Après avoir obtenu le nom du contrôleur de domaine, envoyez-lui une requête ping pour obtenir l'adresse IP. - Bigbio2002
oui, mais si vous avez une connexion VPN au réseau qui vous intéresse, LOGONSERVER ne vous le donnera pas. La réponse acceptée vous donnera le bon serveur dans tous les cas auxquels je peux penser. - Les
Ce n'est pas parfait, mais il est parfois important de savoir comment faire quelque chose d'assez bien assez rapidement. Il échoue également pour les ouvertures de session locales mais je ne l'ai jamais vérifié via VPN, c'est bon à savoir, merci. - Helvick


Une option peu mentionnée, très facile et rapide consiste à exécuter cette opération à partir d'une invite de commande:

nltest /dclist:domainname

Il suffit de remplacer 'domainname' par votre domaine

Vous pouvez également exécuter d'autres options pour en savoir plus:

/dcname:domainname obtient le nom du PDC pour le domaine /dsgetdc:domainname a des drapeaux pour d'autres informations

Essayer nltest /? dans votre invite pour obtenir plus d'options! :)


25
2017-09-02 20:59



C:\> nltest /dclist:domainname Cannot find DC to get DC list from.Status = 1355 0x54b ERROR_NO_SUCH_DOMAIN The command completed successfully   Qu'est-ce que ça veut dire? - jp2code
Remplacez le nom de domaine par le nom de votre domaine - Abraxas
Oh. C'est ce que je pensais que cela allait me trouver. - jp2code


Cela retournera votre contrôleur de domaine le plus proche dans Powershell:

Import-Module ActiveDirectory
(Get-ADDomainController -DomainName <Domain FQDN> -Discover -NextClosestSite).HostName

19
2018-01-08 22:46





À partir d'une invite de commande, exécutez gpresult. Tu auras:

  • Informations générales sur le poste de travail et le domaine
  • Pour les deux ordinateur et le utilisateur:
    • Nom distinctif dans AD et à quel pays la politique a été appliquée à partir de
    • Objets de stratégie de groupe appliqués
    • Liste des groupes de sécurité membres de

Voici exemple de sortie de course gpresult. Vous pouvez également spécifier gpresult /z pour obtenir des informations plus détaillées.


17
2018-01-04 02:53



Sensationnel, gpresult /Z génère beaucoup de données. Merci. - friederbluemle


DNS et DHCP sont le meilleur moyen de vérifier car il peut y avoir des machines Unix / Linux sur le réseau gérées par le contrôleur de domaine AD ou agissant en tant que contrôleur de domaine.

De plus, considérer Active Directory n’est rien d’autre que la version de Kerberos, LDAP, DHCP et DNS de Microsoft. Il serait préférable de comprendre et de déboguer les choses des couches inférieures que de la couche 7+. Cela est dû au fait que le système d’exploitation répondrait à ces mêmes demandes et que le RFC souligné de chaque protocole fonctionne en réalité au niveau OSI et non au niveau "insérer l’outil favori ici".

On peut aller plus loin et interroger le dhcp pour les options 6, 15 et 44 afin d’obtenir le nom de domaine, serveur de nom de domaine, et Victoires / serveur de noms NetBIOS.

Puis, utilisez dns pour vérifier les enregistrements SR_kerberos._tcp, _kpasswd._tcp, _LDAP._TCP.dc._msdcs et _ldap._tcp:

nslookup -type=srv _kerberos._tcp.EXMAPLE.COM
nslookup -type=srv _kpasswd._tcp.EXAMPLE.COM
nslookup -type=srv _ldap._tcp.EXAMPLE.COM
nslookup -type=srv _ldap._tcp.dc._msdcs.EXAMPLE.COM

.EXAMPLE.COM ::= value returned from dhcp option-1

Cela se décompose en trois zones, dont deux sont des enregistrements DNS-SD supportés par protocole:

  • _kerberos._tcp et _kpasswd._tcp (également sous UNIX / Linux / OSX + certains réseaux Windows a _kadmin._tcp) sont pour kerberos
  • _ldap._tcp est pour ldap (openldap, opendc, répertoire sun / oracle, annonce ms) _LDAP._TCP.dc._msdcs est la seule extension Microsoft à LDAP pour mapper le contrôleur de domaine.

7
2017-09-01 16:17





CMD brut

Il suffit de trouver les noms DC

Enregistrer sous GetDcNames.cmd:

nslookup -type=any %userdnsdomain%.

Courir comme: GetDcNames.cmd.

(Remarque: le point de fin dans "% userdnsdomain%." Est intentionnel. Il empêche votre nslookup local d'utiliser des chaînes de chemin de recherche DNS.)

Trouvez d'autres domaines DNS liés à AD

J'ai préparé un fichier de commandes rapide et sale, de sorte que je n'ai pas à me souvenir des noms de domaine DNS et / ou à tous les taper. (La liste peut ne pas être complète.)

Fonctionne depuis des machines jointes à un domaine. Si votre ordinateur n'est pas associé à un domaine, vous devez définir manuellement USERDNSDOMAIN sur votre choix.

Enregistrer sous TestAdDnsRecords.cmd:

@setlocal
@REM Test AD DNS domains for presence.
@REM For details see: http://serverfault.com/a/811622/253701

nslookup -type=srv _kerberos._tcp.%userdnsdomain%.
nslookup -type=srv _kerberos._udp.%userdnsdomain%.
@echo .

nslookup -type=srv _kpasswd._tcp.%userdnsdomain%.
nslookup -type=srv _kpasswd._udp.%userdnsdomain%.
@echo .

nslookup -type=srv _ldap._tcp.%userdnsdomain%.
@echo .

nslookup -type=srv _ldap._tcp.dc._msdcs.%userdnsdomain%.
@echo .

nslookup -type=srv _ldap._tcp.pdc._msdcs.%userdnsdomain%.
@echo .

@REM Those next few lines here are forest specific:
@REM Change the next line your current domain is not also the forest root.
@SET "DNSFORESTNAME=%USERDNSDOMAIN%"

nslookup -type=srv _ldap._tcp.gc._msdcs.%DNSFORESTNAME%.
@echo .

nslookup -type=srv _gc._tcp.%DNSFORESTNAME%.

Courir comme TestAdDnsRecords.cmd | more. Il y a beaucoup de sortie de texte.

Sources


0
2017-10-27 10:01