Bagaimana saya bisa mengetahui nama / alamat IP pengontrol domain AD di jaringan saya?
Bagaimana saya bisa mengetahui nama / alamat IP pengontrol domain AD di jaringan saya?
Jawaban:
Di komputer mana pun, yang memiliki DNS yang dikonfigurasi untuk menggunakan server DNS AD lakukan:
Mulai -> Jalankan -> nslookup
set type=all
_ldap._tcp.dc._msdcs.DOMAIN_NAME
Ganti DOMAIN_NAME dengan nama domain sebenarnya, misalnya example.com . Baca lebih lanjut di sini .
_ldap._tcp.dc._msdcs.UnKnown
. Apa artinya UnKnown ?
Untuk komputer yang merupakan anggota domain, Environment Variable LOGONSERVER berisi nama DC yang mengautentikasi pengguna saat ini. Ini jelas tidak akan menjadi semua DC di lingkungan multi-DC tetapi jika semua yang Anda inginkan adalah cara cepat untuk menemukan nama Pengontrol Domain, maka dari shell perintah:
set l <enter>
Akan mengembalikan semua variabel Lingkungan yang dimulai dengan "L" termasuk nama DC.
Opsi yang tidak disebutkan, super mudah, dan cepat adalah menjalankan ini dari command prompt:
nltest /dclist:domainname
Cukup ganti 'domainname' dengan domain Anda
Anda juga dapat menjalankan beberapa opsi lain untuk mencari tahu lebih lanjut:
/dcname:domainname
mendapatkan nama PDC untuk domain
/dsgetdc:domainname
memiliki bendera untuk informasi lainnya
Coba nltest /?
pada prompt Anda untuk mendapatkan lebih banyak opsi! :)
C:\> nltest /dclist:domainname Cannot find DC to get DC list from.Status = 1355 0x54b ERROR_NO_SUCH_DOMAIN The command completed successfully
Apa artinya?
Ini akan mengembalikan Domain Controller terdekat Anda di Powershell:
Import-Module ActiveDirectory
(Get-ADDomainController -DomainName <Domain FQDN> -Discover -NextClosestSite).HostName
Dari prompt perintah, jalankan gpresult
. Kamu akan mendapatkan:
Berikut ini contoh output dari runninggpresult
. Anda juga dapat menentukan gpresult /z
untuk mendapatkan informasi lebih rinci.
gpresult /Z
menghasilkan BANYAK data. Terima kasih.
DNS dan DHCP adalah cara terbaik untuk memeriksa karena mungkin ada mesin Unix / Linux di jaringan yang dikelola oleh pengontrol domain AD atau bertindak sebagai pengontrol domain.
Plus, mempertimbangkan direktori aktif tidak lebih dari versi Microsoft Kerberos, LDAP, dhcp dan dns. Akan lebih baik untuk memahami dan men-debug hal-hal di lapisan bawah daripada lapisan 7+. Ini karena sistem operasi akan membentuk permintaan yang sama dan RFC yang digarisbawahi untuk masing-masing protokol sebenarnya beroperasi pada tingkat OSI bukan pada tingkat "sisipkan alat favorit di sini".
Satu dapat melangkah lebih jauh dan query dhcp untuk pilihan 6, 15, dan 44 untuk mendapatkan nama domain , server nama domain , dan Wins / NetBIOS name server .
Kemudian gunakan dns untuk memeriksa _kerberos._tcp, _kpasswd._tcp, _LDAP._TCP.dc._msdcs, dan _ldap._tcp catatan SRV:
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
Ini dipecah menjadi tiga area, dua adalah protokol yang didukung catatan DNS-SD:
_kerberos._tcp
dan _kpasswd._tcp
(juga di bawah UNIX / Linux / OSX + beberapa jaringan windows _kadmin._tcp
) untuk kerberos_ldap._tcp
adalah untuk ldap (openldap, opendc, direktori sun / oracle, ms ad)
_LDAP._TCP.dc._msdcs
adalah ekstensi hanya Microsoft untuk ldap untuk memetakan pengontrol domain.Simpan sebagai GetDcNames.cmd
:
nslookup -type=any %userdnsdomain%.
Jalankan sebagai: GetDcNames.cmd
.
(Catatan: Trailing dot di "% userdnsdomain%." Sengaja. Menghentikan nslookup lokal Anda menggunakan string jalur pencarian DNS apa pun.)
Saya menyiapkan file batch cepat dan kotor, sehingga saya tidak perlu mengingat nama domain DNS dan / atau harus mengetik semuanya. (Daftar mungkin tidak lengkap.)
Bekerja dari mesin yang bergabung dengan domain. Jika mesin Anda tidak bergabung dengan domain, maka Anda harus secara manual mengatur USERDNSDOMAIN sesuai keinginan Anda.
Simpan sebagai 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%.
Jalankan sebagai TestAdDnsRecords.cmd | more
. Ada banyak output teks.