Active Directory एक विश्वसनीय, लेकिन जटिल और महत्वपूर्ण सर्विस है, और पूरे एंटरप्राइज नेटवर्क की संचालन क्षमता इस पर निर्भर करती है। एक सिस्टम एडमिनिस्ट्रेटर को लगातार जांचना चाहिए कि Active Directory सही ढंग से काम कर रहा है। इस लेख में, हम आपके Active Directory डोमेन, डोमेन कंट्रोलर्स, और रेप्लिकेशन के स्वास्थ्य की जांच और निदान करने के मुख्य तरीकों पर जाएंगे।
Dcdiag का उपयोग करके AD डोमेन कंट्रोलर स्वास्थ्य कैसे जांचें?
Dcdiag AD डोमेन कंट्रोलर स्वास्थ्य की जांच के लिए एक बुनियादी बिल्ट-इन टूल है। AD डोमेन कंट्रोलर की स्थिति को जल्दी से जांचने के लिए, नीचे दी गई कमांड का उपयोग करें:
dcdiag /s:DC01
कमांड निर्दिष्ट डोमेन कंट्रोलर के खिलाफ विभिन्न टेस्ट चलाती है और प्रत्येक टेस्ट के लिए स्थिति लौटाती है (Passed/Failed)।
विशिष्ट टेस्ट्स:
- Connectivity – जांचता है कि DC DNS में रजिस्टर्ड है, टेस्ट LDAP और RPC कनेक्शन स्थापित करता है;
- Advertising – DC पर प्रकाशित भूमिकाओं और सर्विसेज की जांच करता है;
- FRSEvent – फाइल रेप्लिकेशन सर्विस की त्रुटियों की जांच करता है (SYSVOL रेप्लिकेशन त्रुटियां);
- FSMOCheck – जांचता है कि DC KDC, PDC, और ग्लोबल कैटलॉग सर्वर से कनेक्ट कर सकता है;
- MachineAccount — जांचता है कि DC अकाउंट AD में सही ढंग से रजिस्टर्ड है और डोमेन ट्रस्ट रिलेशनशिप सही है;
- NetLogons – रेप्लिकेशन को आगे बढ़ने देने के लिए लॉगऑन विशेषाधिकारों की जांच करता है;
- Replications – डोमेन कंट्रोलर्स के बीच रेप्लिकेशन की स्थिति और त्रुटियों की जांच करता है;
- KnowsOfRoleHolders – FSMO भूमिकाओं वाले डोमेन कंट्रोलर्स की उपलब्धता की जांच करता है;
- Services – डोमेन कंट्रोलर्स पर सर्विसेज चल रही हैं या नहीं जांचता है;
- Systemlog – DC लॉग्स में त्रुटियों की जांच करता है;
- आदि।

आप सभी उपलब्ध dcdiag टेस्ट्स का पूरा विवरण यहां पा सकते हैं।
डिफ़ॉल्ट टेस्ट्स के अलावा, आप अतिरिक्त डोमेन कंट्रोलर जांच चला सकते हैं:
- Topology – जांचता है कि KCC ने सभी DCs के लिए पूरी टोपोलॉजी जनरेट की है
- CheckSecurityError
- CutoffServers – एक ऐसा DC ढूंढता है जो रेप्लिकेट नहीं हुआ क्योंकि इसका पार्टनर अनुपलब्ध है
- DNS – 6 DNS जांच उपलब्ध हैं (
/DnsBasic,/DnsForwarders,/DnsDelegation,/DnsDymanicUpdate,/DnsRecordRegistration,/DnsResolveExtName) - OutboundSecureChannels
- VerifyReplicas – जांचता है कि एप्लिकेशन पार्टीशन्स सही ढंग से रेप्लिकेटेड हैं
- VerifyEnterpriseReferences
उदाहरण के लिए, सभी डोमेन कंट्रोलर्स पर DNS सही ढंग से काम कर रहा है या नहीं जांचने के लिए, निम्न कमांड का उपयोग करें:
dcdiag.exe /s:DC01 /test:dns /e /v

इसके परिणामस्वरूप एक सारांश तालिका दिखाई देगी जो सभी DCs पर DNS नाम रिजॉल्व करने के टेस्ट परिणाम दिखाती है (यदि यह ठीक है, तो आपको हर सेल में Pass दिखाई देगा)। यदि आप Fail देखते हैं, तो आपको इस टेस्ट को निर्दिष्ट DC के खिलाफ चलाने की आवश्यकता है:
dcdiag.exe /s:DC01 /test:dns /DnsForwarders /v
डोमेन कंट्रोलर टेस्ट परिणामों से अधिक जानकारी प्राप्त करने और इसे टेक्स्ट फाइल में सेव करने के लिए, इस कमांड का उपयोग करें:
dcdiag /s:DC01 /v >> c:\ps\dc01_dcdiag_test.log

निम्न PowerShell कमांड केवल किए गए dcdiag टेस्ट्स पर सारांश जानकारी प्रदर्शित करती है:
Dcdiag /s:DC01 | select-string -pattern '\. (.*) \b(passed|failed)\b test (.*)'

सभी डोमेन कंट्रोलर्स की स्थिति प्राप्त करने के लिए, उपयोग करें:
dcdiag.exe /s:woshub.com /a
यदि आप केवल पाई गई त्रुटियों को प्रदर्शित करना चाहते हैं, तो /q विकल्प का उपयोग करें:
dcdiag.exe /s:dc01 /q

मेरे उदाहरण में, टूल ने कुछ रेप्लिकेशन त्रुटियों का पता लगाया है:
There are warning or error events within the last 24 hours after the SYSVOL has been shared. Failing SYSVOL replication problems may cause Group Policy problems. ......................... DC01 failed test DFSREvent
DC अकाउंट के लिए सर्विस प्रिंसिपल नेम त्रुटियों को ऑटोमैटिकली ठीक करने के लिए dcdiag बनाने के लिए, /fix विकल्प का उपयोग करें:
dcdiag.exe /s:dc01 /fix
DC के बीच Active Directory रेप्लिकेशन त्रुटियों की जांच
बिल्ट-इन repadmin टूल का उपयोग Active Directory डोमेन में रेप्लिकेशन जांचने के लिए किया जाता है।
AD रेप्लिकेशन जांचने के लिए यहां बुनियादी कमांड है:
repadmin /replsum

टूल ने सभी DCs के बीच वर्तमान रेप्लिकेशन स्थिति लौटाई है। आदर्श रूप से, largest delta मान 1 घंटे से कम होना चाहिए (AD टोपोलॉजी और इंटरसाइट रेप्लिकेशन फ्रीक्वेंसी सेटिंग्स पर निर्भर करता है), और त्रुटियों की संख्या = 0। मेरे उदाहरण में, आप देख सकते हैं कि नवीनतम रेप्लिकेशन में से एक में 14 दिन लगे, लेकिन अब यह ठीक है।
डोमेन में सभी DCs के लिए रेप्लिकेशन जांचने के लिए:
repadmin /replsum *
इंटरसाइट रेप्लिकेशन टेस्ट करने के लिए:
repadmin /showism
रेप्लिकेशन टोपोलॉजी और त्रुटियों (यदि कोई हो) देखने के लिए, यह कमांड चलाएं:
repadmin /showrepl
कमांड DCs की जांच करेगी और प्रत्येक डायरेक्टरी पार्टीशन (last attempt xxxx was successful) के लिए अंतिम सफल रेप्लिकेशन का समय और तारीख लौटाएगी।

अतिरिक्त रेप्लिकेशन जानकारी प्रदर्शित करने के लिए, इस कमांड का उपयोग करें:
repadmin /showrepl *
/rodcpwdrepl विकल्प का उपयोग राइटेबल डोमेन कंट्रोलर से रीड-ओनली डोमेन कंट्रोलर (RODC) पर पासवर्ड रेप्लिकेशन चलाने के लिए किया जाता है।
/replicate विकल्प निर्दिष्ट डायरेक्टरी पार्टीशन की रेप्लिकेशन को विशिष्ट DC पर तुरंत शुरू करता है।
निर्दिष्ट DC को इसके सभी रेप्लिकेशन पार्टनर्स के साथ सिंक्रोनाइज़ करने के लिए, नीचे दी गई कमांड का उपयोग करें:
replmon /syncall <nameDC>
रेप्लिकेशन क्यू देखने के लिए:
repadmin /queue
आदर्श रूप से, रेप्लिकेशन क्यू खाली होनी चाहिए।

वर्तमान डोमेन कंट्रोलर का नवीनतम बैकअप कब बनाया गया था, जांचें:
Repadmin /showbackup *
आप PowerShell का उपयोग करके रेप्लिकेशन स्थिति भी जांच सकते हैं। उदाहरण के लिए, निम्न कमांड Out-GridView टेबल में पाई गई सभी रेप्लिकेशन त्रुटियों को प्रदर्शित करेगी:
Get-ADReplicationPartnerMetadata -Target * -Partition * | Select-Object Server,Partition,Partner,ConsecutiveReplicationFailures,LastReplicationSuccess,LastRepicationResult | Out-GridView

मैंने अपने GitHub रिपॉजिटरी में एक PowerShell स्क्रिप्ट अपलोड की है जिसका उपयोग मैं अक्सर AD में रेप्लिकेशन स्थिति जांचने के लिए करता हूं। स्क्रिप्ट एक HTML फाइल जनरेट करती है और Send-MailMessage cmdlet का उपयोग करके इसे ईमेल द्वारा भेज सकती है।
https://github.com/maxbakhub/winposh/blob/main/ADHealthCheck.ps1

आप Get-Service cmdlet का उपयोग करके डोमेन कंट्रोलर पर ADDS बुनियादी सर्विसेज की स्थिति भी जांच सकते हैं:
- Active Directory Domain Services (
ntds) - Active Directory Web Services (
adws) — AD PowerShell मॉड्यूल के सभी cmdlets इस सर्विस से कनेक्ट होते हैं - DNS (
dnscacheऔरdns) - Kerberos Key Distribution Center (
kdc) - Windows Time Service (
w32time) - NetLogon (
netlogon)
Get-Service -name ntds,adws,dns,dnscache,kdc,w32time,netlogon -ComputerName dc01

तो, इस लेख में, हमने बुनियादी टूल्स, कमांड्स, और PowerShell स्क्रिप्ट्स दिखाई हैं जिनका उपयोग आप अपने Active Directory डोमेन के स्वास्थ्य का निदान करने के लिए कर सकते हैं। आप इनका उपयोग सभी समर्थित Windows Server संस्करणों में कर सकते हैं, जिसमें Server Core मोड में चलने वाले डोमेन कंट्रोलर्स शामिल हैं।