- PR -

どのDCに認証要求されるかが知りたい

投稿者投稿内容
なな
ぬし
会議室デビュー日: 2003/06/22
投稿数: 659
お住まい・勤務地: 愛知県
投稿日時: 2006-02-24 12:59
引用:

これはDNSサーバに登録されているすべてのDCに
認証要求を投げ、早く返答してきたものが
そのログインユーザーを認証したDCということに
なるのでしょうか??
それともランダムに1つのDCに認証要求を投げているのでしょうか?



たしか、最初に接続するDCは、同一サイトのものをランダムに選択しています。(負荷分散のため。)
DNS登録の優先順位?重さ?あたりで、多少、比率を指定できたはずです。

■追記
「無作為」と表現されています。
Windows2000 起動とログオンのトラフィック解析

[ メッセージ編集済み 編集者: なな 編集日時 2006-02-24 13:08 ]
kaz
ぬし
会議室デビュー日: 2003/11/06
投稿数: 5403
投稿日時: 2006-02-24 15:12
こんにちわ.

ここで議論されている認証は kerberos5 のことなんでしょうか?
引用:

ななさんの書き込み (2006-02-24 12:59) より:

■追記
「無作為」と表現されています。
Windows2000 起動とログオンのトラフィック解析


DNS から探し出される KDC は「LDAP サービスの場合と同じように最短距離にある KDC を検出しようとします。」とは書かれていますね.
なな
ぬし
会議室デビュー日: 2003/06/22
投稿数: 659
お住まい・勤務地: 愛知県
投稿日時: 2006-02-24 18:09
気になっていましたが...

引用:

ななさんの書き込み (2006-02-23 22:19) より:

# 認証という用語が、少し曖昧ですが。




どうなのでしょう?

# どのDCを使うか?といった疑問点と思っているのですが。
さくら
ベテラン
会議室デビュー日: 2004/02/12
投稿数: 76
投稿日時: 2006-02-27 18:48
たくさんのお返事ありがとうございます。
回答が遅くなりまして申し訳ありません。

ななさんが書かれている通り、聞きたいことは
「端末がどのドメインコントローラーを使うか?」
ということです。

「Windows2000 起動とログオンのトラフィック解析」の
記事を読んだところ、確かに最短距離にあるDCを探して
使用すると書いてありました。
私の理解は下記の通りです。

1.DNSサーバーはサイト内にあるDCのリストをクライアントに送り、
  複数あればクライアントはその中から無作為に1つのDCを選択する。

2.選択されたDCが本当に最短距離にあるかどうかを調べる。

3.もっと近くにあるDCが見つかった場合は、近い方のDCに切り替える。

ここで1つ疑問なのですが、
サイト登録していない場合はどうなるのでしょう…?

1のところの「サイト内にある」というのが無くなって
DNSサーバに登録されているDCの全リストを返すようになるのでしょうか。

また、「2.選択されたDCが本当に最短距離にあるかどうかを調べる。」
というのは具体的にどのようなことをして調べているのでしょうか?

質問ばかりで申し訳ありませんが、
ご存知の方がおられましたらぜひ教えてください!
よろしくお願いします。
kaz
ぬし
会議室デビュー日: 2003/11/06
投稿数: 5403
投稿日時: 2006-02-27 20:24
こんばんわ.
引用:

さくらさんの書き込み (2006-02-27 18:48) より:

ななさんが書かれている通り、聞きたいことは
「端末がどのドメインコントローラーを使うか?」
ということです。


Domain Controller を「使う」という点で,
いくつかの意味が生じることは理解されていますか?
Domain Controller には kerberos5 の KDC としての役割のほかに,
LDAP server としての役割も果たします.
無論,Active Directory を構成する要素の中のほかの役割も果たしています.
「認証」という意味では,
「Active Directory は LDAP 認証」と誤解する人もいるようですが,
実は kerberos5 での認証の仕組みを使っています.
さくら様の問いかけがこの部分の「user 認証」のことなのかどうか,
今ひとつハッキリしないために「これ」という指摘がしにくいと思います.
が,話の流れから前述の user 認証と認識して話を進めます.
違っていたらご指摘ください.
引用:

1のところの「サイト内にある」というのが無くなって
DNSサーバに登録されているDCの全リストを返すようになるのでしょうか。


だと思います.
それが証拠に,site 構成で定義されていない subnet があると,
「どの site に所属するのか確認できない」といった類の
eventlog が logging されます.
この場合,logon できないわけではないので,
すべての KDC の list,つまり Domain Controller の list を返すと想像しています.
引用:

また、「2.選択されたDCが本当に最短距離にあるかどうかを調べる。」
というのは具体的にどのようなことをして調べているのでしょうか?


実際には「最初に答えた Domain Controller」なのではないでしょうか?
少なくとも site を構成した場合の単位は
subnet やそれを構成する site ですので,それ以上の区別はつかないと思います.
よって,同じ site の中で round robbin して
負荷を分散しているのではないかと推察してます.
つまり,SRV resource record を DNS から検索する段階が
「最短距離の Domain Controller を探す」ことであって,
その後に「探す」のでは無いと思います.
さくら
ベテラン
会議室デビュー日: 2004/02/12
投稿数: 76
投稿日時: 2006-03-01 10:53
お返事ありがとうございます。

私が知りたかったことは
User認証を行なう前段階のまずは通信相手となる
ドメインコントローラーをどのように決定しているか
ということです。すいませんm(__)m

前述の「Windows2000 起動とログオンのトラフィック解析」の記事の
真ん中あたり、サーバとクライアントのやり取りを
記述しているところで

---------------------------------------------------------------------
クライアントが別のサイトにあるコントローラに接続している場合は、
サーバーからの応答にクライアントのサイト名も含まれています。

この場合、クライアントは DNS サーバーにもう 1 つクエリを送り、
自分のサイト内のコントローラのリストを要求します。
このクエリのフレームは次のようになります。
クライアントは、Site2 でドメイン コントローラを検索し、
LDAP の後に Site1 に切り替えています。
---------------------------------------------------------------------

と書いてあったのを受けまして、
1.DNSサーバーはサイト内にあるDCのリストをクライアントに送り、
  複数あればクライアントはその中から無作為に1つのDCを選択する。
2.選択されたDCが本当に最短距離にあるかどうかを調べる。
3.もっと近くにあるDCが見つかった場合は、近い方のDCに切り替える。
と理解したのですが、
そもそも「クライアントが別のサイトにあるコントローラに接続している場合」
というのが有り得るのでしょうか?
kaz
ぬし
会議室デビュー日: 2003/11/06
投稿数: 5403
投稿日時: 2006-03-01 11:23
こんにちわ.
引用:

さくらさんの書き込み (2006-03-01 10:53) より:

そもそも「クライアントが別のサイトにあるコントローラに接続している場合」
というのが有り得るのでしょうか?


client が最初に Domain Controller と邂逅するのは,
client の Windows が起動した際に DNS で検索したものだと思います.
その際,参照する DNS Server から SRV resource record の情報を得ますが,
その段階で「site の情報を得るのか?」という点で疑問を持っています.
その時点では,site の構成は得られていないからこそ,
その後の「もう一つクエリを送り〜」に繋がるのでは?
さくら
ベテラン
会議室デビュー日: 2004/02/12
投稿数: 76
投稿日時: 2006-03-03 10:42
度々のお返事本当にありがとうございます。

あれからも色々な文献等を読んだりしたのですが、
kazさんの記述の通りで合っていると私も解釈しました。

1.クライアントに設定されているDNSより、
  そのDNSサーバに登録されているSRV resource record の情報を得る。
2.そこで示されているドメインコントローラと通信する。
3.クライアントが別のサイトにあるコントローラに接続している場合は
  DNSサーバに自分のサイト内のコントローラのリストを要求する。
4.返されたリストに1つしかドメインコントローラがなければ
  そのドメインコントローラに切り替える。
  複数のドメインコントローラが存在する場合には、
  ICMPのエコーとリプライを利用して、ICMPのリプライが最も速い
  ドメインコントローラに切り替える。
  (そんなに違いが出るものなのかちょっと疑問です…)

という具合で通信相手となるドメインコントローラを決めていると
理解しました。
もし、何か補足やご指摘があれば聞かせていただけると助かります。
よろしくお願いします。

スキルアップ/キャリアアップ(JOB@IT)