إصلاح ‘تعذر الاتصال بمركز تحكم نطاق Active Directory’

كل مسؤول لتكنولوجيا المعلومات الذي يدير أجهزة في بيئة Active Directory قد يكون قد واجه هذا الموقف. تحاول إضافة جهاز كمبيوتر إلى نطاق Active Directory (AD) وتحصل على رسالة الخطأ المخيفة “تعذر الاتصال بمراقب النطاق لمجال Active Directory“. في هذه المقالة ، تعرّف على الخطوات لتشخيص (وحل) هذه المشكلة للأبد.

A FREE read only tool that scans your AD and generates multiple interactive reports for you to measure the effectiveness of your password policies against a brute-force attack. Download Specops Password Auditor now!

An Active Directory Domain Controller Could not be Contacted

هذا الخطأ مرتبط بنظام اسم المجال (DNS). المشكلة الرئيسية هي أن الكمبيوتر فشل في العثور على سجل DNS SRV المناسب الذي يحتاجه للانضمام إلى نطاق AD.

I’ve put together a few steps for you to follow to fix this error and get your computer joined to your domain.

تأكد من استخدامك لخوادم DNS الصحيحة

قبل أن تتعمق في المشكلة ، تأكد أولاً من استخدام الخوادم DNS الصحيحة في المقام الأول.

تتمتع Active Directory و DNS بعلاقة خاصة. يقوم مراقبو النطاق بتسجيل سجلات محددة في خوادم DNS التي يعرفونها. تعيش هذه السجلات في منطقة _ldap._tcp.dc.msdcs.<domainname> وتساعد الأجهزة المنضمة إلى AD في العثور على الموارد مثل مراقبي النطاق. سجلات SRV لن تكون موجودة في خوادم DNS التي ليست متكاملة مع AD.

لحل هذه المشكلة ، يجب أن تستخدم إما:

  • خادم DNS متكامل مع AD
  • A DNS server that replicates records from an AD aware DNS server
  • A DNS server that has forwarding set up to query either an AD-integrated DNS server or a DNS server with replicated records

للتحقق من أن الخادم DNS الذي تستخدمه هو أحد الخوادم المذكورة أعلاه ، قم بتشغيل الأمر التالي في جلسة PowerShell على جهاز كمبيوتر متصل بالنطاق الموجود:

PS C:\> Get-DnsClientServerAddress

InterfaceAlias               Interface Address ServerAddresses
                             Index     Family
--------------               --------- ------- ---------------
Ethernet                             9 IPv4    {10.0.0.101}
Ethernet                             9 IPv6    {}
Loopback Pseudo-Interface 1          1 IPv4    {}
Loopback Pseudo-Interface 1          1 IPv6    {fec0:0:0:ffff::1, fec0:0:0:ffff::2, fec0:0:0:ffff::3}

الإجابات التي تحصل عليها تحت عمود ServerAddesses هي خوادم DNS التي يستخدمها هذا الكمبيوتر. إذا لم يكن لديك عميل نطاق آخر للتحقق منه ، فسيتعين عليك الاتصال بفريق الشبكة للحصول على هذه المعلومات.

يمكنك استخدام cmdlet Set-DnsClientServerAddress في PowerShell لتغيير إعدادات عميل DNS للكمبيوتر ، أو عبر مربع حوار خصائص IPv4 لبطاقة الشبكة للكمبيوتر. يتم الوصول إليها عن طريق الانتقال إلى لوحة التحكم -> الشبكة -> الإنترنت -> اتصالات الشبكة.

بمجرد الوصول إلى نافذة اتصالات الشبكة ، انقر بزر الماوس الأيمن فوق بطاقة الشبكة ، اختر الخصائص ، اختر Internet Protocol Version 4 (TCP/IPv4) ثم انقر على الخصائص

IPv4 properties dialog

إذا كانت الشبكة تستخدم بروتوكول تكوين المضيف الديناميكي (DHCP) ، تأكد من تحديد الخيارات الحصول على عنوان IP تلقائيًا و الحصول على عنوان خادم DNS تلقائيًا.

إذا لم تستخدم الشبكة DHCP ، فقم بتحديث قيم الخادم المفضل لنظام اسم النطاق (DNS) و الخادم البديل لنظام اسم النطاق (DNS) إلى القيم الصحيحة التي حصلت عليها سابقًا.

العثور على الخطأ الحقيقي

إذا كنت قد أكدت أن جهاز الكمبيوتر الخاص بك يحتوي على خوادم DNS الصحيحة ، فحان وقت الانتقال قليلاً أعمق.

عند محاولة الانضمام إلى جهاز كمبيوتر إلى نطاق ، يظهر خطأ “لا يمكن الاتصال بمراقب مجال Active Directory” ولكنه ليس رسالة الخطأ “الحقيقية”. ستحتاج إلى التحقيق قليلاً.

ستلاحظ في نافذة الخطأ زر “التفاصيل >>”. انقر على هذا الزر. سيتيح لك ذلك الوصول إلى معلومات أكثر تفصيلاً تساعدك في حل هذا الخطأ بشكل أفضل.

Expanded details view of the error dialog

يمكنك تحديد محتويات مربع النص لنسخها ولصقها في عارض النصوص، أو يمكنك العثور على نفس المعلومات في ملف C:\windows\debug\dcdiag.txt على هذا الجهاز. يتم إنشاء هذا الملف من قبل نظام التشغيل Windows عند حدوث الخطأ.

يحتوي نص الخطأ على بعض المعلومات الأساسية. لقد قمت بتمييز وترقيم وتعديل الخطأ الوارد في المثال أدناه:

  • اسم المجال الذي يعتقد الجهاز أنك طلبت منه الانضمام إليه (1)
  • رمز الخطأ (2)
  • استعلام DNS الذي تم إجراؤه (3)
  • خوادم DNS التي استعلمها الجهاز (إذا كان هناك) (4)

ملاحظة: يتم توجيه هذه المعلومات لمسؤول الشبكة. إذا لم تكن مسؤول الشبكة، فيرجى إبلاغ المسؤول بأنك تلقيت هذه المعلومات التي تم تسجيلها في الملف C:\windows\debug\dcdiag.txt.

حدث الخطأ التالي عند الاستعلام عن DNS لموقع الخدمة (SRV) سجل الموارد المستخدم للعثور على مراقب النطاق النشط (AD DC) للمجال “carisbrookelabs.local”(1):

كان الخطأ: “اسم DNS غير موجود.”
(رمز الخطأ 0x0000232B RCODE_NAME_ERROR) (2)

تم الاستعلام عن سجل SRV لـ _ldap._tcp.dc._msdcs.carisbrookelabs.local (3)

أسباب شائعة لحدوث هذا الخطأ تشمل ما يلي:

سجلات DNS SRV المطلوبة للعثور على AD DC للنطاق غير مسجلة في DNS. تتم تسجيل هذه السجلات تلقائيًا مع خادم DNS عند إضافة AD DC إلى النطاق. تتم تحديثها بواسطة AD DC عند فترات زمنية محددة. يتم تكوين هذا الكمبيوتر لاستخدام خوادم DNS بعناوين IP التالية:

8.8.4.4
8.8.8.8 (4)

إحدى هذه المناطق أو أكثر لا تتضمن تفويضًا لمنطقتها الفرعية: carisbrookelabs.local

local
. (المنطقة الجذرية)

0x0000267C DNS_ERROR_NO_DNS_SERVER

يشير هذا الخطأ إلى عدم العثور على خادم DNS حتى يتم محاولة الاستعلام. حتى لم يحصل على فرصة. وهذا يرجع عادةً إلى عدم توافر اتصال الشبكة إلى خادم DNS.

يرجى ملاحظة أنه يمكنك الانضمام إلى كمبيوتر بدون اتصال بالشبكة المعروف باسم “انضمام النطاق دون اتصال” ، ولكن هذا خارج نطاق هذه المقالة.

حل مشكلة اتصال الشبكة الخاصة بك

إذا رأيت هذه الرسالة الخطأ ، ستحتاج إلى بدء إجراء بعض عمليات تصحيح مشكلة الشبكة.

  1. تحقق من تمكين محول الشبكة الخاص بك ومن القدرة على الاتصال بموارد الشبكة الأخرى.
  2. تحقق من وجود عنوان IP وخوادم DNS مكونة.

يمكنك التحقق من عنوان IP وخوادم DNS عن طريق تشغيل ipconfig /all.

إذا كان لديك عنوان IP ويمكنك الوصول إلى موارد الشبكة الأخرى، ستحتاج إلى اختبار الاتصال بين الكمبيوتر وخادم DNS.

للقيام بذلك، يمكنك استخدام أمر ping وأمر Test-Connection في PowerShell. قم باختبار الاتصال بخادم DNS باستخدام أي من هذين الأداة. إذا سمحت حركة المرور ببروتوكول التحكم برسائل الإنترنت (ICMP) في الشبكة، يجب أن تحصل على استجابة. إذا حدث خطأ أو انتهت المهلة، فمن المحتمل أن يكون لديك مشكلة في الشبكة، مثل التوجيه. تحدث مع فريق الشبكة لحل المشكلة، ثم حاول الانضمام مرة أخرى.

تحقق من اتصال DNS

إذا كنت قد قمت بتأكيد أن اتصالك بالشبكة يعمل، فسيتعين عليك بعد ذلك التأكد من قدرة جهاز الكمبيوتر الخاص بك على الاتصال عبر TCP/53 بخادم DNS.

جرب استخدام أمر Resolve-DNSName في PowerShell مع FQDN للمجال الذي تحاول الانضمام إليه. يجب أن يعيد هذا سجلات خادم DNS واحد أو أكثر:

PS C:\> Resolve-DNSName carisbrookelabs.local


Name                                           Type   TTL   Section	IPAddress
----                                       	----   ---   -------	---------
carisbrookelabs.local                      	A  	600   Answer 	10.0.0.103
carisbrookelabs.local                      	A  	600   Answer 	10.0.0.102
carisbrookelabs.local                      	A  	600   Answer 	10.0.0.101

إذا حدث خطأ، فيجدر التحقق مما إذا كان هناك أي شيء يحجب حركة المرور عبر IP على البوابة 53 (البوابة المستخدمة لحركة المرور DNS) بين جهازك وخوادم DNS.

يمكنك إجراء فحص بسيط للاتصال على البورت 53 باستخدام أمر Test-NetConnection (لا يجب الخلط بينه وبين أمر Test-Connection):

PS C:\> Test-NetConnection -Port 53 -ComputerName <DNSSERVERHERE>
True

ستحصل على استجابة True إذا نجح الاتصال، أو False إذا فشل. يمكن أن يكون الفشل بسبب جدار حماية الشبكة أو الخادم على خادم DNS.

0x0000232B RCODE_NAME_ERROR

تعني هذه الرسالة أنه تمكن من العثور على خادم DNS ولكن لم يتم العثور على سجل SRV. هذا الخطأ يحتاج إلى مزيد من عمليات الاستكشاف.

تأكد من استخدام الاسم الكامل للنطاق

على الرغم من بساطته، تحقق من أن الاسم الذي كتبته يتطابق مع الاسم الكامل للنطاق (FQDN) للنطاق الذي تحاول الانضمام إليه. يجب أن يكون هذا الاسم هو اسم النطاق فقط، وليس اسم الخادم. على سبيل المثال، استخدم carisbrookelabs.local وليس WIN-3467RQTHJH5.carisbrookelabs.local.

إذا كنت غير متأكد، قم بالتحقق من اسم النطاق لعميل النطاق الحالي. يمكنك العثور على اسم النطاق المناسب عن طريق تشغيل هذا الأمر في PowerShell على عميل النطاق الحالي.

PS51> (Get-CimInstance Win32_ComputerSystem).Domain
carisbrookelabs.local

إذا حاولت استخدام الاسم NETBIOS (contoso) بدلاً من الاسم الكامل للنطاق (contoso.local)، فقد يتمكن الكمبيوتر ربما من العثور على النطاق ولكن Windows سيعامل الاسم على أنه FQDN على أي حال.

إذا قمت بكتابة اسم NETBIOS وليس لديك بنية تحتية WINS في المكان ، فستحصل على الخطأ الذي نحاول إصلاحه. استخدم دائمًا FQDN بدلاً من اسم NETBIOS.

Typing an FQDN in the Computer/Domain Changes dialog

تحقق من سجلات DNS

لهذه الخطوة ، ستستخدم مرة أخرى أمر Resolve-DNSName. هذه المرة باستخدام السجل DNS المحدد الذي لم يتم استرداده عندما حاولت الانضمام إلى النطاق. انسخه والصقه من ملف dcdiag.txt المذكور في المقدمة ، أو نسخة من نص الخطأ الذي قمت بأخذه سابقًا. سيتجنب ذلك أي أخطاء في الكتابة مع الشرطات والشرطات السفلية.

يجب أن يكون شكل الأمر الخاص بك مشابهًا لهذا:

PS C:\> Resolve-DNSName _ldap._tcp.dc._msdcs.carisbrookelabs.local


Name                    	Type TTL   Section	PrimaryServer           	NameAdministrator       	SerialNumber
----                    	---- ---   -------	-------------           	-----------------       	------------
_msdcs.carisbrookelabs.loca SOA  3600  Authority  WIN-3467RQTHJH5.carisbrooke hostmaster.carisbrookelabs. 419
l                                             	labs.local              	local

استخدم أداة Specops Password Auditor المجانية لفحص Active Directory الخاص بك وتحديد الثغرات المتعلقة بكلمات المرور ، بما في ذلك أكثر من 930 مليون كلمة مرور تعرضت للاختراق. قم بالتنزيل اليوم!

إذا كنت تحصل على استجابة “اسم DNS غير موجود” كرد على هذا الأمر ، فإن مشكلتك تتعلق بـ DNS.

  • تأكد من استخدام الخادم الصحيح لـ DNS
  • تأكد من أن السجلات ذات الصلة لم يتم حذفها

إذا حصلت على استجابة إيجابية لـ Resolve-DNSName _msdcs.<domainname> ولكن حصلت على اسم DNS غير موجود من Resolve-DNSName _ldap._tcp.dc._msdcs.<domainname>، فإن السجلات مفقودة.

سجّل سجلات DNS لمراقب النطاق الخاص بك باستخدام الأمر ipconfig /registerdns على كل مراقب النطاق. قد يستغرق بضع دقائق لظهور السجلات.

بمجرد تأكيد وجود سجل DNS المطلوب باستخدام Resolve-DNSName، يجب أن تكون جاهزًا للمتابعة.

الملخص

في هذه المقالة، تعلمت بعض الخطوات التي يمكنك محاولتها عند حل مشكلة “تعذر الاتصال بمراقب نطاق Active Directory”. من المستحيل تغطية كل سيناريو في مقالة مثل هذه، ولكن آمل أن يعمل العملية بالنسبة لك ويضعك على الطريق الصحيح!

قراءة أكثر

Source:
https://adamtheautomator.com/an-active-directory-domain-controller-could-not-be-contacted/