【Active Directory】 操作マスター(FSMO)の移動と動作確認

Active Directoryは、複数台のサーバをすべてマスター(マルチマスター)とし稼働させ、お互いでユーザ情報などをレプリケーションすることで、可用性を保ちます。ただし、マルチマスターでは、動作が難しく、フォレストやドメインで1台しか、存在することができない操作があります。この操作を担うサーバを操作マスターといいます。操作マスタは、FSMO(Flexible Single Master Operation:フィズモ)とも呼ばれます。

スポンサーリンク

操作マスター(FSMO)

操作マスターには、5つの種類があります。

スキーママスター

フォレスト単位で1台存在します。スキーマとは、ActiveDirectoryのデータの属性を定義したものです。

ユーザを作成したときに、例えば、プロパティで表示される電話番号や電子メールなどが、属性です。スキーマを拡張したい場合、スキーママスタへ変更内容を送信し、スキーママスタがフォレスト内で整合性を保ちます。スキーママスタが存在しない場合、スキーマの拡張ができません。

ドメイン名前付けマスター

フォレスト単位で1台存在します。フォレストにドメインが追加・削除される場合、ドメイン名前付きマスターへその追加・削除内容が通知され、フォレスト内のドメインの整合性を保ちます。ドメイン名前付きマスターが存在しない場合、ドメインの追加・削除ができません。

PDCエミュレーター

ドメイン単位で1台存在します。ドメインコントローラ上でパスワードが変更されると、その変更内容はPDCエミュレータに通知されます。

他のドメインコントローラでパスワード変更がまだ同期されておらず、そのドメインコントローラで、パスワードが異なるユーザサインインがあった場合、PDCエミュレータにパスワードが再度、問い合わせされます。また、ドメイン内の時刻同期サービスも提供します。

PDCエミュレータが存在しない場合、パスワード変更による反映が遅れる可能性があります。ただし、時間が経過すると、ドメインコントローラ間でパスワード同期されます。また、時刻同期サービスも停止します。長期間、PDCエミュレータが存在しない場合は、ドメイン内の時刻にずれが発生し、Kerberos認証に影響がでる可能性があります。

RIDマスター

ドメイン単位で1台存在します。ユーザを登録する際に、SID(セキュリティID)と呼ばれる値を割り当てられ、ユーザを一意に識別できるようになります。

SIDは、ドメインIDと相対識別子(Relative ID:RID)から構成されます。ドメインIDは、ドメインと同一の値であり、RIDをユニークにすることで、ドメイン内でSIDが重複しないようにします。RIDマスターは、各ドメインコントローラにRIDの割り当て範囲(プール)を割り当て、RIDが重複しないようにします。

ドメインコントローラは、RIDマスターに割り当てられたRIDをすべて使い切ると、新たなRIDプールをRIDマスターから割り当てられます。あるドメインコントローラで、RIDプールが使い切られた状態で、RIDマスターと通信ができないと、ユーザ追加などの新たにSIDを割り当てることができなくなります。また、RIDマスターは、ドメインコントローラにRIDプールを500単位ずつ割り当てられます。

インフラストラクチャマスター

ドメイン単位で1台存在します。複数ドメイン環境で、ドメインAのユーザをドメインBのグループへ所属させたあと、ドメインAのユーザ名を変更しても、別ドメインであるドメインBのグループのメンバーの名前は変更されません。この際、インフラストラクチャマスターがドメインコントローラ(グローバルカタログ)からユーザ情報を取得し、自身との情報の差異を更新します。

スポンサーリンク

操作マスターの確認

現在の操作マスターを確認するには、任意のADサーバ上で、コマンドプロンプトを管理者として実行し、netdom query fsmo と入力します。

下記は、すべての操作マスターがAD-1.hirotanoblog.localである場合の出力例です。

スポンサーリンク

操作マスターの転送

ActiveDirectoryの移行やハードウェア障害などで、操作マスター(FSMO)を他のADに移動させる場合があります。

移動はGUIでもできますが、今回はPowerShell(Move-ADDirectoryServerOperationMasterRole)を使用した手順を確認します。

Move-ADDirectoryServerOperationMasterRole –Identity “移動先AD” -OperationMasterRole “操作マスターの役割名”

“操作マスターの役割名”は、役割と数字が紐づけされており、コマンドでは、数字を指定します。

0 :PDCエミュレーター
1 :RIDマスター
2 :インフラストラクチャマスター
3 :スキーママスター
4 :ドメイン名前付けマスター

ドメイン hirotanoblog.local AD-1/AD-2のドメインコントローラがある構成で、現在操作マスターであるAD-1からAD-2へ役割を移動してみます。

AD-2でPowerchellを管理者として実行し、下記のとおり入力します。

Move-ADDirectoryServerOperationMasterRole -Identity AD-2 -OperationMasterRole 0,1,2,3,4

役割毎に、移動するかどうか選択を促されますので、Yと入力します。

操作マスターを確認するには、コマンドプロンプトを管理者として実行し、netdom query fsmo と入力します。操作マスターがすべて、AD-2.hirotanoblog.localに変更されていることが確認できます。

コメント