Записки о RID-Master’е

Давеча с Олегом Крыловым вышел разговор про FSMO-роль RID Master, в связи с тем, что Олег решил начать читать ресурскит по Windows 2008 Active Directory.

С первым его вопросом о том, сколько относительных идентификаторов выделяет RID Master только что созданному контроллеру домена ответ ясен – стандартный выделяемый пул для новых контроллеров домена (и для неновых тоже, впрочем) – 500 штук.

Со вторым вопросом, о том, в какой момент контроллер домена начинает запрашивать очередную порцию идентификаторов ситуация оказалась немного сложнее. Ресурскит утверждает, что запрос очередной порции идентификаторов происходит после того, как в запасе у контроллера домена остаётся только 20% (100 штук по молчанию) идентификаторов от размера пула. Однако же, имеется статья в базе знаний, которая утверждает, что с Windows 2000(!) SP4 поведение немного поменялось – запрос происходит уже при количестве оставшихся идентификаторов 50% от размера пула (250 штук по умолчанию). База знаний источник более надёжный, чем ресурскит. Но давайте попробуем проверить.

Итак, у нас имеется контроллер домена на базе Windows 2008 Server. Уровень домена – Windows 2000 native.

Информацию по RID master можно получать через команду:

dcdiag /v /test:ridmanager

Наш первый контроллер домена является по совместительству RID Master’ом и уже выдал сам себе первую порцию идентификаторов (с 1100 по 1599):

Вводим второй контроллер домена, смотрим информацию по пулу идентификаторов:

Видно, что RID Master выделил пул индентификаторов с 1600 по 2099 (rIDAllocationPool). При этом, новых объектов этот контроллер домена пока ещё не создавал, поэтому следующий объект получит идентификатор 1600 (rIDNextRID). Теперь, с помощью следующего скрипта создадим 250 пользователей в специально сделанной под это организационной единице Test Users в корне нашего домена:

for /L %i in (1,1,250) do (dsadd user "cn=User%i,ou=Test Users,dc=test,dc=loc"
-pwd P@ssw0rd -upn "user%i@test.loc" -samid "User%i" -fn "Test%i" -ln "User%i"
-display "User%i, Test%i")

Смотрим информацию по пулу идентификаторов:

Видно, что RID Master уже выделил контроллеру домена очередную порцию идентификаторов (с 2100 по 2599), то есть процесс пошёл так, как и описано в статье из базы знаний.

10 thoughts on “Записки о RID-Master’е

  1. Сижу и думаю, какая причина меня заставила бы проверять такое, наверное здорово поспорили.

  2. Паша, не поверишь, это голый энтузиазм Стаса и ничего более. Я критиковал его намерение проверить статью базы знаний на самом первом этапе. Потому что, на мой взгляд, излишний скепсис вредит, ровно с тем же успехом можно проверять, например, тот факт, что Земля круглая, или что от приема цианидов люди умирают. Но Стас упрям 🙂

  3. Использовать на контроллере домена Windows Server 2008 скрипты на VBScript при наличии PowerShell – убожество, староверство и некрофилия 🙂

  4. Олега, на Windows 2008 (не R2) нет модуля для работы с Active Directory – поэтому пришлось использовать dsadd.

  5. Ну ладно. Не убожество. Но староверство и некрофилия! Есть модули QADModule от Quest Software за авторством Мити Сотникова. Для WS2008 Domain Controllers это просто “MUST HAVE”.
    P.S. Митя мне не платит за рекламу 🙂

  6. Староверство и некрофилия – согласен. Но ты же изучаешь ресурскит по Windows 2008 Active Directory – так что кто это у нас тут старовер? =)

    ActiveRoles Management Shell for AD must have в рабочей среде. В лабе мне было лениво их разворачивать =)

  7. А в базе знаний еще столько непроверенных статей!… 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *