Yanıtlar:
Herhangi bir bilgisayarda, AD'nin DNS sunucusunu kullanacak şekilde yapılandırılmış bir DNS vardır:
Başlat -> Çalıştır -> nslookup
set type=all
_ldap._tcp.dc._msdcs.DOMAIN_NAME
DOMAIN_NAME alanını asıl alan adıyla değiştirin , örneğin example.com . Daha fazlasını buradan okuyun .
_ldap._tcp.dc._msdcs.UnKnown
. Ne geliyor Bilinmeyen demek?
Bir etki alanının üyesi olan bir bilgisayar için Ortam Değişkeni LOGONSERVER, geçerli kullanıcının kimliğini doğrulayan DC adını içerir. Bu açık bir şekilde bir çok DC ortamındaki tüm DC'ler olmayacak, ancak tek istediğiniz bir etki alanı denetleyicisinin adını bir komut kabuğundan bulmanın hızlı bir yoluysa:
set l <enter>
Bir DC'nin adı da dahil olmak üzere "L" ile başlayan tüm Ortam değişkenlerini döndürür.
Bahsedilen, süper kolay ve hızlı bir seçenek bunu komut isteminden çalıştırmaktır:
nltest /dclist:domainname
'Domainname' yerine alan adınızla değiştirin.
Daha fazla bilgi edinmek için başka seçenekler de çalıştırabilirsiniz:
/dcname:domainname
etki alanı için PDC adını alır
/dsgetdc:domainname
Diğer bilgiler için bayraklara sahiptir
Daha nltest /?
fazla seçenek almak için istemi deneyin ! :)
C:\> nltest /dclist:domainname Cannot find DC to get DC list from.Status = 1355 0x54b ERROR_NO_SUCH_DOMAIN The command completed successfully
Bu ne anlama geliyor?
Bu, Powershell'deki en yakın Etki Alanı Denetleyicinizi döndürecektir:
Import-Module ActiveDirectory
(Get-ADDomainController -DomainName <Domain FQDN> -Discover -NextClosestSite).HostName
Komut isteminden, çalıştırın gpresult
. Alacaksın:
İşte çalışan örnek çıktıgpresult
. gpresult /z
Daha ayrıntılı bilgi almak için de belirtebilirsiniz .
gpresult /Z
LOT veri çıktısı. Teşekkürler.
DNS ve DHCP, AD etki alanı denetleyicisi tarafından yönetilen veya etki alanı denetleyicisi olarak işlev gören ağda Unix / Linux makineleri olabileceğinden, denetlemenin en iyi yoludur.
Ayrıca, aktif dizin dikkate alındığında Microsoft'un Kerberos, LDAP, dhcp ve dns sürümlerinden başka bir şey yoktur. Alt katmanlardaki şeyleri katman 7 + 'dan daha iyi anlamak ve hata ayıklamak daha iyi olacaktır. Bunun nedeni, işletim sisteminin aynı istekleri önceden yapması ve her protokol için altta yatan RFC'nin aslında "buraya en sevdiğiniz aracı ekle" düzeyinde değil, bir OSI düzeyinde çalışmasıdır.
Bir adım daha ileri gidebilir ve etki alanı adını , etki alanı adı sunucusunu ve Wins / NetBIOS ad sunucusunu almak için dhcp'yi 6, 15 ve 44 seçenekleri için sorgulayabilirsiniz .
Ardından _kerberos._tcp, _kpasswd._tcp, _LDAP._TCP.dc._msdcs ve _ldap._tcp SRV kayıtlarını kontrol etmek için dns kullanın:
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
Bu üç alana ayrılır, ikisi protokol destekli DNS-SD kayıtlarıdır:
_kerberos._tcp
ve _kpasswd._tcp
(ayrıca UNIX / Linux / OSX + altında bazı Windows ağlarında vardır _kadmin._tcp
) kerberoslar içindir._ldap._tcp
ldap içindir (openldap, opendc, sun / oracle dizini, ms ad)
_LDAP._TCP.dc._msdcs
, etki alanı denetleyicisini eşlemek için ldap için yalnızca Microsoft uzantısıdır.Farklı kaydet GetDcNames.cmd
:
nslookup -type=any %userdnsdomain%.
Olarak çalıştırın: GetDcNames.cmd
.
(Not: "% userdnsdomain%." İçindeki son nokta kasıtlı olarak çalışıyor. Yerel nslookup cihazınızın herhangi bir DNS arama yolu dizesini kullanmasını engeller.)
DNS etki alanı adlarını hatırlamama gerek kalmadan ve / veya hepsini yazmak zorunda kalmamam için hızlı ve kirli bir toplu iş dosyası hazırladım. (Liste tam olmayabilir.)
Etki alanına katılan makinelerden çalışır. Makineniz etki alanına katılmamışsa, USERDNSDOMAIN öğesini istediğiniz şekilde el ile ayarlamanız gerekir.
Farklı kaydet 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%.
Olarak çalıştır TestAdDnsRecords.cmd | more
. Çok fazla metin çıktısı var.