Поиск по сайту
Интересуешься IT и системным администрированием? Подпишись на наш канал, где мы делимся инсайдами, новостями и практическими советами! Прокачай свои навыки вместе с нами!
Как проверить роли FSMO в Active Directory
После установки роли Active Directory Domain Services на контроллер домена, этому серверу автоматически назначаются роли FSMO (Flexible Single Master Operations). Эти роли отвечают за уникальные и критичные операции в домене и лесу, такие как создание объектов, обработка изменений схемы и синхронизация времени.
В ситуациях, когда в инфраструктуре используется несколько контроллеров домена или несколько доменов в лесу, важно знать, какой сервер в данный момент является владельцем каждой из FSMO-ролей. Это необходимо для диагностики, планирования миграций, повышения отказоустойчивости и переноса ролей при сбоях.
В этой статье мы разберём несколько способов проверить, какой контроллер домена владеет ролями FSMO — через GUI, командную строку и PowerShell.
Онлайн-курс: Zabbix 6. Мониторинг IT инфраструктуры предприятия.
Курс предлагает глубокое изучение Zabbix 6 и охватывает все ключевые аспекты: от установки и конфигурации до продвинутого мониторинга и автоматизации. Курс подходит как для начинающих, так и для опытных администраторов.
Содержание:
Сколько существует ролей FSMO и за что каждая из них отвечает
В каждом домене должно быть не менее двух полноценно работающих контроллеров домена. Это требование связано с обеспечением отказоустойчивости.
Всего пять ролей FSMO. Две — уровня леса (в единственном экземпляре на весь лес), три — уровня домена (по одной на каждый домен):
- Schema Master (1 на лес)
- Domain Naming Master (1 на лес)
- RID Master (1 на домен)
- PDC Emulator (1 на домен)
- Infrastructure Master (1 на домен)
Рассмотрим, что делает каждая роль, зачем она нужна, что произойдёт при её недоступности и где её обычно размещают.
- Schema Master (мастер схемы) — лес
За что отвечает: единственная точка изменения схемы AD (классы и атрибуты объектов). Нужен при установке новых ролей/продуктов, расширяющих схему (Exchange, SCCM и т.п.).
Если роль недоступна: ежедневная работа каталога не пострадает. Нельзя вносить изменения в схему и устанавливать продукты, требующие расширения схемы.
Где размещать: на надёжном DC в корневом домене леса. Меняют крайне редко, включают строгий контроль администраторов схемы.
- Domain Naming Master (мастер именования доменов) — лес
За что отвечает: добавление/удаление доменов в лесу и создание внешних ссылок (application partitions/cross-refs).
Если роль недоступна: нельзя создавать/удалять домены; повседневная работа пользователей не страдает.
Где размещать: обычно рядом со Schema Master в корневом домене. Активна эпизодически.
- RID Master (мастер RID) — домен
За что отвечает: выдаёт другим DC в домене пулы RID (Relative ID), из которых формируются SID новых объектов (пользователей, групп, компьютеров).
Если роль недоступна: существующие пулы у DC ещё позволят создавать объекты. Когда пулы закончатся — создание новых объектов остановится.
Где размещать: на стабильном, хорошо реплицирующемся DC. В доменах с интенсивным созданием объектов — уделить особое внимание мониторингу.
- PDC Emulator (эмулятор PDC) — домен
За что отвечает (много функций):
- Авторитетное время для домена (выше — для леса: корневой PDC синхронизируется с внешним NTP).
- Обработка сбросов/изменений паролей и сверка при ошибках входа (“последний известный пароль”).
- Центр блокировок учётных записей (account lockout).
- Приоритетная репликация некоторых изменений.
- Исторически — точка редактирования GPO (сейчас не критично, но по умолчанию многие утилиты бьются к PDC).
Если роль недоступна: возможны проблемы со входом (особенно сразу после смены пароля), рассинхронизация времени, задержки применения политик, некорректная обработка блокировок.
Где размещать: самый надёжный и производительный DC, лучше расположенный близко к администраторам/основным системам. Обязательно корректная NTP-схема.
- Infrastructure Master (мастер инфраструктуры) — домен
За что отвечает: обновляет ссылки на объекты других доменов (преобразует SID-ссылки в DN и наоборот), чтобы членство групп и ссылки всегда указывали на актуальные имена/идентификаторы.
Если роль недоступна: кросс-доменные ссылки/членства могут устаревать (видимость старых имён), но критической остановки нет.
Где размещать: классическое правило — не на глобальном каталоге (GC) в много-доменном лесу, иначе роль “не увидит” различий и не будет корректно обновлять ссылки. Исключения:
- если все DC в домене — GC, размещать где угодно;
- в однодоменном лесу ограничение не актуально.
Проверка ролей FSMO через командную строку (CMD)
Чтобы узнать, какие контроллеры домена владеют ролями FSMO, выполните команду:
netdom query FSMO
Эту команду можно выполнить как в Command Prompt, так и в PowerShell, чтобы узнать, какие контроллеры домена владеют ролями FSMO.
PS C:\> netdom query FSMO
Schema master DC01-2019.exoip.local
Domain naming master DC01-2019.exoip.local
PDC DC01-2019.exoip.local
RID pool manager DC01-2019.exoip.local
Infrastructure master DC01-2019.exoip.local
The command completed successfully.
Проверка ролей FSMO через PowerShell
Определить владельцев ролей FSMO можно с помощью PowerShell. Для этого используются две команды.
Получить роли Schema Master и Domain Naming Master:
Get-ADForest | fl SchemaMaster,DomainNamingMaster
Пример вывода:
SchemaMaster : DC01-2019.exoip.local
DomainNamingMaster : DC01-2019.exoip.local
Получить роли RID Master, PDC Emulator и Infrastructure Master:
Get-ADDomain | fl RIDMaster,PDCEmulator,InfrastructureMaster
Пример вывода:
RIDMaster : DC01-2019.exoip.local
PDCEmulator : DC01-2019.exoip.local
InfrastructureMaster : DC01-2019.exoip.local
Если нужно вывести все роли FSMO в одном результате, используйте скрипт:
$forestInfo = Get-ADForest | Select-Object SchemaMaster, DomainNamingMaster
$domainInfo = Get-ADDomain | Select-Object RIDMaster, PDCEmulator, InfrastructureMaster
$AllFSMO = [PSCustomObject]@{
SchemaMaster = $forestInfo.SchemaMaster
DomainNamingMaster = $forestInfo.DomainNamingMaster
RIDMaster = $domainInfo.RIDMaster
PDCEmulator = $domainInfo.PDCEmulator
InfrastructureMaster = $domainInfo.InfrastructureMaster
}
$AllFSMO | Format-List
Получение ролей FSMO с помощью PowerShell-скрипта
Удобный способ просмотреть роли FSMO — запустить скрипт Get-ADInfo.ps1
C:\scripts\.\Get-ADInfo.ps1
Этот скрипт отображает роли FSMO и дополнительную информацию о состоянии Active Directory.
Active Directory Info
Computers = 5
Workstions = 1
Servers = 4
Users = 74
Groups = 88
Active Directory Forest Name = exoip.local
Active Directory Forest Mode = Windows2016Forest
Active Directory Domain Mode = Windows2016Domain
Active Directory Schema Version is 88 which corresponds to Windows Server 2019/Windows Server 2022
FSMO Role Owners
Schema Master = DC01-2019.exoip.local
Domain Naming Master = DC01-2019.exoip.local
RID Master = DC01-2019.exoip.local
PDC Emulator = DC01-2019.exoip.local
Infrastructure Master = DC01-2019.exoip.local
Проверка ролей FSMO через графический интерфейс (GUI)
Чтобы просмотреть роли FSMO через графическую консоль, выполните следующие действия:
- Запустите Command Prompt от имени администратора.
- Введите команду: regsvr32 schmmgmt.dll и нажмите Enter.
- Появится сообщение: DllRegisterServer in schmmgmt.dll succeeded. Нажмите OK.
Примечание: Сначала необходимо зарегистрировать оснастку управления схемой Active Directory, чтобы она появилась в списке доступных оснасток MMC.
Нажмите кнопку Start, введите Run в строку поиска и откройте приложение Run.
Введите mmc.exe и нажмите OK.
Нажмите File и выберите Add/Remove Snap-in.
Выберите Active Directory Schema, нажмите Add, затем нажмите OK.
Щёлкните по Active Directory Schema, чтобы загрузить конфигурацию.
Затем нажмите правой кнопкой мыши на Active Directory Schema и выберите Operations Master.
Отобразится контроллер домена, который в данный момент является владельцем роли Schema Master.
Запустите Active Directory Domains and Trusts.
Щёлкните правой кнопкой мыши по Active Directory Domains and Trusts и выберите Operations Master.
Отобразится контроллер домена, который в данный момент является владельцем роли Domain Naming Master.
Запустите Active Directory Users and Computers.
Щёлкните правой кнопкой мыши по домену и выберите Operations Master.
Выберите каждую вкладку, чтобы увидеть, какой контроллер домена владеет соответствующей FSMO-ролью:
- RID Master
- PDC Emulator
- Infrastructure Master
На этом всё!
Заключение
Теперь вы знаете, как определить, какой контроллер домена владеет ролями FSMO — через PowerShell или графические консоли MMC. Эта информация важна при диагностике проблем, планировании обслуживания и работе с безопасностью, поскольку некоторые роли (например, PDC Emulator) напрямую влияют на аутентификацию, время и работу паролей.
Рекомендуется периодически проверять расположение ролей и убедиться, что контроллеры, на которых они размещены, стабильно работают и корректно реплицируются. Это поможет поддерживать доменную инфраструктуру предсказуемой и отказоустойчивой.
Вам понравилась эта статья? Тогда вам, скорее всего, будет интересна другая полезная статья Как добавить дополнительный контроллер домена в существующий домен.
Интересуешься IT и системным администрированием? Подпишись на SysAdminHub в Телеграмм или Макс, чтобы узнавать обо всем первым!
Статья была полезна? Поддержи автора, и благодаря твоей помощи новые материалы будут выходить еще чаще:
