Share via


[AD初級編] おいでよ Active Diretory の森 ~ドメインのどこかのあなたを探したい ~ (dsquery … forestroot)

皆様今晩は、ういこです。東京は夜の 1 時あたりです(書き始め)。
先日より対応させて頂いていたお客様の件の回答をやっと書き終わり、チームにテクニカル レビューに出して一息ついたところです。
今日は学童クラブのお迎えだったので、仕事を一度中断して迎えにいき、夕食を作っていろいろやってから、やっと仕事再開…で、遅くなってしまいました。今朝はお弁当作りもあり、5 時起床だったので眠いです…。
これ書いたら、次は子供の水着のゼッケン付けです。眠い…。 おかげでギリギリな題名つけちゃいました。そのうちタイトルかえるかも。

さて今日のお題目は、AD 初級編、他のチームの方に聞かれたのですが、わかっちゃえば簡単だけど意外に調べないとわかりづらい dsquery コマンドのつかいかた ~ forest 配下のドメインのどこかにいるオブジェクトを探す方法、です。

【お題】
フォレスト配下のどこかのドメインにあるコンピュータを探せ!

【答え】
… コンピュータ名はわかってるんだけど、どこのドメインに居るかわからない。そんなシチュエーションだったそうで、どこにいるか探す方法を考えているとのこと。
答えはずばり、"forestroot" 付けて探す、です。

    dsquery computer forestroot -name <コンピュータ名>

以下は、contoso.com 配下のドメインで、uikou という名前のつくコンピュータを検索した例です。 uikou のあとに * 、すなわちワイルドカードを指定することで、uikou という名前を持つ全てのオブジェクトを検索しています。だからいろいろ出てくるわけです。

以下の例だと、複数のドメインからさがしてるのがわかると思います。

C:\Users\uikou>dsquery computer forestroot -name uikou*
"CN=uikou1,OU=Workstations,OU=Machines,DC=testdomain,DC=contoso,DC=com"
"CN=uikou2,OU=Workstations,OU=Machines,DC=testdomain,DC=contoso,DC=com"
"CN=uikou3,OU=Workstations,OU=Machines,DC=testdomain,DC=contoso,DC=com"
"CN=uikou4,OU=Workstations,OU=Machines,DC=testdomain,DC=contoso,DC=com"
"CN=uikouAY-DEV,OU=Workstations,OU=Machines,DC=testdomain2,DC=contoso,DC=com"
"CN=uikouAY-OLD,OU=Workstations,OU=Machines,DC=testdomain2,DC=contoso,DC=com"
"CN=uikouAY-WIN7,OU=Workstations,OU=Machines,DC=testdomain2,DC=contoso,DC=com"
"CN=uikouAY-X61,OU=Workstations,OU=Machines,DC=testdomain2,DC=contoso,DC=com"
"CN=uikouERUN1,OU=Workstations,OU=Machines,DC=testdomain2,DC=contoso,DC=com"
"CN=uikouerun2,OU=Workstations,OU=Machines,DC=testdomain2,DC=contoso,DC=com"
"CN=uikouERUNHV02,OU=Workstations,OU=Machines,DC=testdomain2,DC=contoso,DC=com"
"CN=uikouHYPERV,OU=Workstations,OU=Machines,DC=testdomain2,DC=contoso,DC=com"
"CN=uikouLAPTOP,OU=Workstations,OU=Machines,DC=testdomain2,DC=contoso,DC=com"
"CN=uikouMINDIA,OU=Workstations,OU=Machines,DC=testdomain3,DC=contoso,DC=com"
"CN=uikouPC,OU=Workstations,OU=Machines,DC=testdomain3,DC=contoso,DC=com"
"CN=uikouw7,OU=Workstations,OU=Machines,DC=testdomain2,DC=contoso,DC=com"
"CN=uikouXP1,OU=Workstations,OU=Machines,DC=testdomain2,DC=contoso,DC=com"

contoso.com 配下、testdomain、testdomain2、testdomain3 いずれにもコンピュータがしぶとくいることにびっくりすると思います。
forestroot を指定すると、そのフォレストのグローバル カタログを参照しにいき、フォレスト内の全ドメインに属する Computer やら user やらのオブジェクトを引っ張ってくるのです。
これを利用しているのですね。Computer のほか、user などもいけます。ためしに、Uiko で始まる名前を持つ人間を探してみました。

C:\Users\uikou>dsquery user forestroot -name Uiko*
"CN=Uiko Yokoi,OU=UserAccounts,DC=testdomain3,DC=contoso,DC=com"

私しかいない orz
珍名奇名なのか…"ういこ" って。

ちなみに今回は同一フォレスト配下のどこかのドメイン、ということでうまくいってますが、フォレストをまたがると信頼関係とかえらい面倒になってくるんで注意が必要です。

グローバル カタログってなに?
さて、さっきからグローバル カタログ、グローバル カタログうるさいな、"グローバル カタログ" ってなによ?という話いってみましょうか。
グローバル カタログには、フォレストに属するすべてのドメインに含まれる全てのオブジェクトのうち、"よく使われる一部の属性" だけがコピーされ、グローバル カタログ内に保持されています。全部じゃないんですね。あくまでも、よく使うものだけを対象にしております。だから、フォレスト全体の検索がしたい場合にはグローバル カタログに問い合わせればよいのですが、全部の属性に対して検索時に有効なわけではありません。でも大事だよ。

グローバル カタログ サーバを探せ!
フォレストにはたくさんドメイン コントローラがいることも少なくありませんね。では、グローバル カタログはどこで管理されているのか。
それは、ずばり、グローバル カタログ サーバです。そのまんまですね。どいつがそれだ!?というのは、簡単な話で、普通はフォレストに一番最初に構成されたドメイン コントローラがだいたいグローバル カタログサーバになります。 グローバル カタログ サーバを複数個ほしくなっちゃった欲張りな管理者様は、手動で増やさないといけません。(※)
また、増やす際の注意としては、グローバル カタログ サーバ様になるには、前提としてそのマシンがドメイン コントローラである必要があるという点です。

(※) 管理ツールの [Active Directory サイトとサービス] を使って行います。

さて、今日は初級編をお届けしました。
次回は何にしようかな…。なんだか夕飯のおかずを考えてるような気分です。
夕飯といえば、今日は(日付変わってしまいましたが)昨日の夜から仕込んでおいた「鳥のささみのくず煮」でした。ささみを筋切りして一口大にして、お酒としょうゆに一晩付けて、片栗粉を付けてお湯でゆでて、氷水で冷やして水菜を添え、梅肉をみりんで伸ばしたものでさっぱり食べる夏にぴったりのメニューです。片栗粉でとろみのついたゆで湯は、鳥のうまみがでてるので、卵スープにしています。皆様お試しあれ。

ういこう@微妙に眠いよでもこれから水着のゼッケン付けだよおっかさん