Dcdiag ile DNS’i Kontrol Etmek

Check DNS Configuration with DCDiag

dcdiag /test:dns /v komutu, Active Directory Domain Controller (DC) üzerinde bulunan  DNS yapılandırmasını test etmek için kullanılır.

dcdiag → Domain Controller teşhis aracı (Diagnostic Tool)

/test:dns → DNS testini çalıştırır, DNS bileşenlerini inceler.

/v → Ayrıntılı (verbose) çıktı sağlar, daha fazla bilgi gösterir.

Bu komutun her bölümü, şu anlama gelir:

Dcdiag /test:dns /v

dcdiag /test:dns /v Çıktısının Analizi

Bu komutu çalıştırdığında aşağıdaki gibi bir çıktı alırsın:

1. Genel DNS Durumu Kontrolleri

DC’nin DNS hizmetinin düzgün çalıştığını gösterir.

PASS veya FAIL olarak raporlar.

Testing server: Default-First-Site-Name\DC01
         Starting test: Connectivity
         PASS – All tests passed successfully.

Bu, DNS servisiyle ilgili bağlantı testinin başarılı olduğunu gösterir.

2. Forwarders ve Root Hints Testi

DNS sunucusunun Forwarders (İleri yönlendiriciler) ve Root Hints (Kök ipuçları) ile iletişimini kontrol eder.

Örnek Hata:

makefile

Forwarder: 8.8.8.8 (unreachable)

Çözüm: DNS Forwarder IP’sinin doğru olup olmadığını kontrol et.

3. SOA (Start of Authority) ve NS (Name Server) Testleri

SOA (Start of Authority) kaydı olup olmadığını kontrol eder.

Name Server (NS) kayıtlarını doğrular.

Örnek:

SOA record test: PASS

Eğer FAIL alıyorsan, DNS kayıtlarını gözden geçirmelisin.

4. SRV Kayıtlarını Kontrol Etme

AD’nin düzgün çalışması için SRV kayıtları gereklidir.

Eğer eksikse, DC replikasyon veya Kerberos/LDAP bağlantılarında sorun olabilir.

Örnek Hata:

Warning: No SRV record found for _ldap._tcp.dc._msdcs.domain.com

Çözüm: SRV kayıtlarını elle ekleyebilir veya ipconfig /registerdns çalıştırarak yeniden kaydetmeyi deneyebilirsin.

5. AD DNS Delegation Testi

AD içindeki DNS delegasyonunu test eder.

Eğer AD’de yanlış yapılandırılmış bir DNS bölgesi varsa, uyarı verir.

Örnek Hata:

DNS delegation for domain.com is missing or incorrect

Çözüm: AD içindeki DNS bölgesi ayarlarını gözden geçir.

DNS Sorunlarını Gidermek İçin Kullanışlı Komutlar

Eğer dcdiag /test:dns /v komutunda hatalar alırsan şu komutları deneyebilirsin:

DNS Servisini Yeniden Başlat

Restart-Service DNS

DNS Kayıtlarını Yeniden Kaydet

ipconfig /flushdns
ipconfig /registerdns
net stop netlogon
net start netlogon

DNS Yapısını Doğrula

nslookup -type=SRV _ldap._tcp.dc._msdcs.domain.com

AD Replikasyonunu Kontrol Et

repadmin /showrepl

Ayrıca DNS Healt Check için aşağıdaki komutları kullanabilirsiniz.

Check TypePowerShell / CMD Command
DNS Server Diagnosticsdcdiag /test:dns /v
Check ForwardersGet-DnsServerForwarder
Check Name Resolutionnslookup example.com
Check Zone TransfersGet-DnsServerZoneTransferPolicy
Check Replicationrepadmin /showrepl
Check Root HintsGet-DnsServerRootHint
Test Full DNS HealthTest-DnsServerDiagnostics -ComputerName “Your-DNS-Server”