איך לבדוק מי מחזיק בתפקידי FSMO ב-Active Directory

לפני שמורידים Domain Controller מהרשת, משדרגים אותו או מחליפים אותו בשרת חדש, צריך לדעת אם הוא מחזיק באחד מתפקידי FSMO. במדריך הזה אראה שתי דרכים לבדוק את זה: עם הפקודה netdom ועם PowerShell.

מה זה תפקידי FSMO

את רוב השינויים ב-Active Directory אפשר לבצע על כל Domain Controller, והם משוכפלים משם לשאר השרתים. בחלק מהשינויים הסיכון להתנגשות גבוה מדי, ולכן רק שרת אחד מורשה לבצע אותם. השרת הזה מחזיק בתפקיד מסוג Flexible Single Master Operation, או בקיצור FSMO.

יש חמישה תפקידים. שניים מהם קיימים פעם אחת בכל ה-Forest, ושלושה קיימים פעם אחת בכל Domain:

תפקידרמהמה הוא עושה
Schema MasterForestהשרת היחיד שמעדכן את ה-Schema של הספרייה
Domain Naming MasterForestהשרת היחיד שמוסיף או מסיר Domain ב-Forest
RID MasterDomainמחלק מאגרי RID לשאר השרתים, כדי שלכל משתמש וקבוצה יהיה SID ייחודי
PDC EmulatorDomainמקור הזמן של ה-Domain. שינויי סיסמה מגיעים אליו בעדיפות, ונעילת חשבונות מטופלת אצלו
Infrastructure MasterDomainמעדכן את ה-SID וה-DN של אובייקטים שמופיעים בהפניות מ-Domain אחר
תרשים: שני תפקידי FSMO ברמת ה-Forest ושלושה תפקידים ברמת כל Domain
איפה יושב כל אחד מחמשת תפקידי FSMO

לפני שמתחילים

הפקודה netdom רצה רק מ-Command Prompt שנפתח עם הרשאות מנהל (Run as administrator). היא זמינה על שרת עם התפקיד AD DS, או על מחשב שהותקנו בו כלי AD DS מתוך RSAT.

הפקודות של PowerShell מגיעות מהמודול ActiveDirectory. אם Get-ADDomain לא מוכרת אצלך, המודול עוד לא מותקן במחשב.

איך בודקים מי מחזיק בתפקידים

שלב 1: בדיקה מהירה עם netdom

תפתח Command Prompt כמנהל ותריץ:

netdom query fsmo

הפקודה פונה ל-Domain שהמחשב חבר אליו ומחזירה את רשימת בעלי התפקידים הנוכחיים. כדי לבדוק Domain אחר, מוסיפים לה את שם ה-Domain:

netdom query /domain:contoso.local fsmo

במקום contoso.local תכתוב את שם ה-Domain שלך.

שלב 2: בדיקה עם PowerShell

ב-PowerShell התפקידים מפוצלים בין שני אובייקטים. את שני התפקידים של ה-Forest מקבלים מ-Get-ADForest:

Get-ADForest | Select-Object SchemaMaster, DomainNamingMaster

ואת שלושת התפקידים של ה-Domain מקבלים מ-Get-ADDomain:

Get-ADDomain | Select-Object PDCEmulator, RIDMaster, InfrastructureMaster

בלי פרמטרים, שתי הפקודות עובדות על ה-Forest וה-Domain של המשתמש המחובר. היתרון כאן הוא שהתוצאה היא אובייקט, אז אפשר לשמור אותה או להשוות אותה בתוך סקריפט. עוד דוגמה לעבודה עם PowerShell מול הדומיין יש במדריך על יצירת משתמשים ב-Active Directory עם סקריפט PowerShell.

שלב 3: בדיקת התוצאה

בכל שורה בפלט יופיע השם המלא של השרת שמחזיק בתפקיד. ב-Domain קטן זה יכול להיות אותו שרת בכל חמש השורות, וזה תקין.

תוודא ששתי הדרכים מראות את אותם שרתים. אם יש הבדל, או שמופיע שרת שכבר לא קיים, עדיף לבדוק את השכפול בין ה-Domain Controllers לפני שמשנים משהו.

מתי חשוב לדעת איפה התפקידים

לפני הורדה או החלפה של Domain Controller. אם השרת מחזיק בתפקיד, מעבירים את התפקיד ל-Domain Controller אחר לפני שמורידים אותו. אפשר להעביר כל תפקיד לכל Domain Controller בארגון.

בבעיות של שעון. ה-PDC Emulator של ה-Domain הראשי ב-Forest הוא מקור הזמן של כל הארגון, ולכן הוא השרת שצריך לקבל זמן ממקור חיצוני. שירות הזמן של Windows נדרש גם ל-Kerberos, כך ששעון לא מדויק כאן משפיע על כל הדומיין.

בנעילות חשבון. נעילת חשבון מטופלת ב-PDC Emulator, ושינויי סיסמה משוכפלים אליו לפני שאר השרתים. כשמחפשים למה משתמש ננעל, מתחילים ממנו.

כשמתכננים Global Catalog. אם לא כל השרתים ב-Domain הם Global Catalog, עדיף שה-Infrastructure Master לא ישב על שרת שהוא Global Catalog. כשה-Recycle Bin של Active Directory מופעל, לתפקיד הזה כבר אין משימות, ואין משמעות לאיזה שרת מחזיק בו.

התיעוד הרשמי של Microsoft: תפקידי FSMO ב-Active Directory ו-הפקודה netdom query.

אם עוד לא הקמת Domain Controller, אפשר להתחיל מהמדריך להתקנת Domain Controller ב-Windows Server ולהריץ את הבדיקה הזאת מיד בסוף ההתקנה.

מאמרים קשורים במסילתי

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *