خوب در این مقاله در مورد پاک کردن یک دومین کنترولر کهDown یا Orphaned شده صحبت میکنیم که چه کارهایی باید انجام دهیم، اما ابتدا یک بازنگری کوتاه و سطحی انجام میدهیم.
خیلی از ما میبینم که در بسیاری از فروم ها همیشه شبیه این سوالات وجود دارد، یکی از دومین کنترولرها خراب شده و نمیشود آن را حذف کرد یا آن را حذف کردیم و میخواهیم یک دومین کنترولر جدید دقیقا با همان نام قدیم اضافه کنیم ولی نمیشود و پیامهای خطاError داریم و یا بعد از پاک کردن دومین کنترولر خراب در عملیاتReplication مکرر پیغام خطا Error دریافت میکنیم و غیره.
یکی از سوالات خوبی که شاید در زمان به وجود آمدن ایرادهای سخت در یک دومین کنترولر به ذهن یک ادمین میرسد این است که آیا برای صرفه جویی در زمان بهتر نیست دومین کنترولر را حذفDelete و دوباره یک دومین کنترولر جدید New-DC با همان نامSame-Named وارد محیط اکتیو دایرکتوری AD کرد. اگر بخواهیم این کار را با عملRestore مقایسه کنیم, بسیار آسان تر است اما باید به این نکته توجه کنیم کهApplications اضافی مانندExchange یا DNS یاDHCP یا WINS و غیره روی دومین کنترولر DC نبوده باشد، چون مجبور هستیم که آنها را دوباره اینستال و منتقل کنیم. برای همین گفته میشود که سرویسهایServices دیگر روی دومین کنترولرDC نباشد. به طور مثال حساب کنید سرورExchange روی دومین کنترولر DC باشد و شما باExchange به مشکل برخوردید، چه اتفاقی خواهد افتاد وقتی مجبور باشید بارها سرور را بوت Boot کنید، در هر زمان بوت Boot دیگر دومین کنترولر DC وجود ندارد، DNS وجود ندارد، DHCP وجود ندارد و غیره. برای همین جاهایی که به این مسائل اهمیت میدهند به طور مثال 2 دومین کنترولر DC بدون هیچ سرویس اضافی، 2 سرور DNS و غیره دارند که میتوان بر روی این سرورهای DNS ، سرورDHCP هم داشت. این یاد آوری کوچک برای آن است که در زمان بروز هر اتفاقی باید قبلا به آن فکر کرده باشیم و با بروز آن سرویسهای ما همچنان به کار ادامه دهند و در حداقل زمان همه چیز را به حالت نرمال برگردانیم، چون زمان حرف اول را میزند .
برای سرورهای WINS و DHCP اگرBackup داشته باشیم میتوانیم دوباره آنها را توسط عمل Migration بدون مشکلی راه اندازی کنیم، در غیر این صورت باید همه چیز را از اول (مثل روز اولی که تازه اینستال کردید) آغاز کنیم.
How to move a DHCP database from a computer that is running Windows NT Server 4.0, Windows 2000, or Windows Server 2003 to a computer that is running Windows Server 2003
How to migrate a WINS Database from Windows 2000-based WINS server to a Windows 2003-based WINS server
برای سرورDNS مشکلی نیست، البته در صورت اینکهZones به صورت Active Directory Integrated باشد که با اضافه کردن سرور جدید خودش به طور اتوماتیکAutomatic بر روی سرور ایجاد میشود و احتیاجی نیست دستیManual این کار را انجام دهید.
برای دیگر Applications بایدBackup داشته باشیم تا بتوانیم آنها را از Backup خارج کرده و روی سرور برگردانیم.
خوب تا اینجا به مواردی اشاره کردیم که باید به آنها توجه کنیم و برای زمان بروز اتفاق قبلا برنامه ریزی کرده باشیم. مراحل اصلی برای حذف کردن به صورت زیر است :
Metadata را پاک یا تمیز میکنیم.
دومین کنترولر قدیمی پاک شده را از کنسولActive Directory Sites and Services پاک میکنیم.
تمامی رکوردهایDNS مربوط به این دومین کنترولر را پاک میکنیم.
در صورتی که سرورWINS داشته باشیم، تمامی رکوردهایWINS مربوط به این دومین کنترولر را حذف میکنیم.
اگر ویندوز 2000 باشد، ازADSIEdit استفاده میکنیم تا این دومین کنترولرDC را از اکتیو دایرکتوری AD پاک کنیم.
عملیاتReplication اکتیو دایرکتوری AD را باForce انجام میدهیم.
How to remove completely orphaned Domain Controller
اگرIP آدرس DNS دومین کنترولر خراب را روی تنظیمات DNS کارت شبکه دومین کنترولر سالم ستSet کردید، پاک کنید.
قبل از حذف دومین کنترولر، مطمئن شوید یکی دومین کنترولرها موجود در حال کار گلوبال کاتالوگ Global Catalog - GC میباشد. در حقیقت در یکForest که دارای یک یا چند دومین میباشد، توصیه میشود که همه دومین کنترولرها، گلوبال کاتالوگ GC نیز باشند. اما در بعضی اوقات سبب تضاد بین رولInfrastructure Master - IM و گلوبال کاتالوگ GC میشود. این تضاد در صورتی که یک دومین باشد ایجاد نمیشود ولی اگر چند دومین باشد سبب میشود، بنا بر این توصیه میشود بر روی دومین کنترولری که صاحب رولInfrastructure Master - IM میباشد، روی آن گلوبال کاتالوگGC فعال نباشد.
برای پاک کردن یا تمییز کردن Metadata Cleanup در زیر برای ورژن های ویندوز توضیح میدهیم :
برای ویندوز 2000
ازADSIEdit استفاده میکنیم تا اکانت کامپیوترComputer Account و شیFRS Object را از اکتیو دایرکتوری AD پاک میکنیم.
برای پاک کردن اکانت کامپیوترComputer Account به روش زیر عمل میکنیم :
مثال :contoso.com
Click Start, click Run, type ADSIEdit.msc in the Open box, and then click OK Expand the Domain NC container Expand DC=contoso, DC=com Expand OU=Domain Controllers Right-click CN=Domain Controller Name, and then click Delete
اگر در زمان پاک کردن این پیغام خطا (DSA object cannot be deleted) را دریافت کردید مربوط به مقدارValue ست شده به UserAccountControl میباشد. برای اینکه این پیغام را در زمان پاک کردن دریافت نکنیم مقدار مربوط بهUserAccountControl را 4096 ست میکنیم.
How to remove data in Active Directory after an unsuccessful domain controller demotion
برای پاک کردن شی FRS Object به ترتیب زیر عمل میکنیم :
Click Start, click Run, type ADSIEdit.msc in the Open box, and then click OK Expand the Domain NC container Expand DC=contoso, DC=com Expand CN=System Expand CN=File Replication Service Expand CN=Domain System Volume Right-click Domain Controller (fail DC), and then click Delete
یادتان باشد همیشه باید اول اکانت کامپیوتر Computer Account پاک و سپس شی FRS Object پاک شود.
برای ویندوز 2003
در این ورژن از ویندوز میتوانیم از فرمان NTDSUTIL برای پاک کردن اکانت کامپیوتر Computer Account و شیFRS Object استفاده کنیم. در لینک های زیر قدم به قدم توضیح داده شده.
Clean up server metadata
Ntdsutil
برای ویندوز 2008/ 2008 R2
در این این ویندوزها برای پاک کردن اکانت کامپیوترComputer Account و شی FRS Object از دو طریق میشود عمل کنید. یکی همان استفاده از فرمان Ntdsutil میباشد که طریق استفاده مانند لینکهای بالا میباشد. دیگری که جدید به ویندوز 2008/ 2008 R2 اضافه شده استفاده از رابط گرافیکی کاربرGraphical User Interface - GUI میباشد. در لینک زیر استفاده از اینGUI به صورت قدم به قدم با عکس توضیح داده شده.
Clean Up Server Metadata
خوب راه دیگری هم وجود دارد که استفاده از اسکریپت Script است . اسکریپتی که در زیر لینک داده شده را میتوانید برای همه ویندوزهای سرور به غیر از ورژن NT 4.0 استفاده کنید. (اسکریپت توسط افرادTechnet - Scripting Guys نوشته شده و مطمئن است).
Remove Active Directory Domain Controller Metadata
در صورتی که یک یا همه رول هایFSMO روی دومین کنترولر خراب هست یا هستند، باید این رول یا رول هایFSMO را به دومین کنترولر در حال کار و سالم منتقل کنید. از لنک زیر میتوانید استفاده کنید.
Using Ntdsutil.exe to transfer or seize FSMO roles to a domain controller
اگر دومین کنترولری که خراب شده صاحب رولPDC بوده، شما احتیاج دارید یک سرور زمان معتبرAuthoritative Time Server راه اندازی کنید. از لینک های زیر برای این کار استفاده کنید .
How to configure an authoritative time server in Windows 2000
How to configure an authoritative time server in Windows Server
اگر رول PDC Emulator را Transfering یا Seizing میکنیم، باید سورس زمان Time Source را ریست Reset کنیم .
روی دومین کنترولری که صاحب رول PDC Emulator است، فرمان زیر را اجرا میکنیم (آدرسir.pool.ntp.org برای زمان ایران است) :
w32tm /config /update /manualpeerlist:ir.pool.ntp.org /syncfromflags:MANUAL /reliable:YES
روی دومین کنترولری که صاحب رول PDC Emulator بود، فرمان زیر را اجرا میکنیم :
w32tm /config /syncfromflags:domhier /update
بعد از اجرای این فرامین، فرمان های زیر را روی هر 2 دومین کنترولر انجام میدهیم :
Net Stop w32time
Net Start w32time
یادتان باشد روی فایروالی که اینترنت را به داخل هدایت میکند،UDP پورت 123 را باز کنید .
Asia — asia.pool.ntp.org
اکانت کامپیوتر (دومین کنترولر خراب) را با استفاده از کنسولActive Directory Sites and Services درSite پاک کنید.
اگر WINS دارید، برای پاک کردن رکوردهایWINS مربوط به دومین کنترولر خراب از دیتای WINS Database از لینکهای زیر استفاده کنید.
Deletion of WINS Database Records
Deleting and tombstoning records
برای پاک رکوردهایDNS مربوط دومین کنترولر خراب احتیاج داریم رکوردهایی مانندSRV, Host, LdapIPAddress, GcIPAddress را پاک کنیم .
از طریق کنسولDNS به قسمت Forward Lookup Zones -> contoso.com میرویم و تمام رکوردهای مربوط به دومین کنترولر خراب را در همه جا چک کرده و پاک میکنیم .
_sites _tcp _udp domaindnszones forestdnszones
از طریق کنسول DNS به قسمتForward Lookup Zones -> _msdcs.contoso.com میرویم و تمام رکوردهای مربوط به دومین کنترولر خراب را در همه جا چک کرده و پاک میکنیم.
dc domains gc pdc
از طریق کنسول DNS به قسمت Reverse Lookup Zones میرویم و تمام رکوردهای مربوط به دومین کنترولر خراب را در همه جا چک کرده و پاک میکنیم.
از طریق کنسولDNS بر روی سرور در حال کار کلیک راست کرد وProperties را انتخاب، سپس در تبForwarders tab نام سرور مربوط به دومین کنترولر خراب را پاک میکنیم.
از طریق کنسولDNS روی همهZone ها به ترتیب کلیک راست کرده و Properties را انتخاب، سپس در تب Name Servers tab نام سرور دومین کنترولر خراب را پاک میکنیم.
با استفاده از فرمان DNSLINT سرورDNS را چک میکنیم. میتوانید از لینکهای زیر استفاده کنید و یک ویدئو آموزشی نیز در آن است.
Dnslint Overview
Support WebCast: Microsoft Windows: Using the DNSLint Utility
Description of the DNSLint utility
How to use DNSLint to troubleshoot Active Directory replication issues
عملیات Replication اکتیو دایرکتوری را به طور مثال با استفاده از فرمان Repadmin.exe باForce انجام میدهیم. از لینکهای زیر میتوانید استفاده کنید.
Getting Over Replmon
Repadmin
Using Repadmin.exe to troubleshoot Active Directory replication
Initiating Replication Between Active Directory Direct Replication Partners
Troubleshooting replication
Patris_70 edited Revision 2. Comment: article updated