ルータを越えて NT ドメインに参加する
SERVER
ルータを越えて、別のネットワークに存在する NT ドメインにコンピュータを登録してみました。
はじめに
今回は、Windows 2000 Server 上で構成された、Active Directory の NT ドメインへ、異なるネットワークから接続してみることにします。今回、参加するクライアントも Windows 2000 Server です。
次のように IP アドレスが設定されているものとします。
ドメインコントローラ 192.168.0.2 ルータ 192.168.0.1
192.168.255.1参加クライアント 192.168.255.2 なお、ドメイン名は NT-DOM ということにしておきます。
ルートを確立する
クライアントからサーバへちゃんとパケットが届くようにルータを設定する必要があります。
設定方法は環境によっていろいろと違うと思いますが、簡単にいうならば、まずルータがパケットをルーティング (フォワーディング) できるように設定します。
ドメインコントローラとクライアントの両方に所属するルータの場合はこれだけでいいのですけど、さらに間にルータを挟むような場合には、そのルータへちゃんとパケットが転送されるように調整する必要があります。
クライアントの方も、192.168.0.2 へパケットを送信する際には 192.168.255.1 へパケットを送信するように、ディフォルトゲートウェイに 192.168.255.1 を登録するか、192.168.0.2 宛て場合には 192.168.255.1 へ転送するようにルーティングとリモートアクセスで設定するなどの必要があります。
同様にドメインコントローラのほうも、192.168.255.2 宛ての場合には 192.168.0.1 へパケットを送信できるように設定する必要があります。
ドメインコントローラを認識させる
クライアントは、どこに所属すべきドメインコントローラが存在しているかわかりませんので、ドメイン参加要求をどこへ出したらいいかを登録する必要があります。
WINS サーバがある場合、そこにドメインコントローラの所在を登録することができるようですが、個人的によくやるのは、C:\WinNT\System32\Drivers\etc\lmhosts というファイルに次のように記入する方法です。
192.168.0.2 PC-NAME #PRE #DOM:NT-DOM
これで、TCP/IP が lmhosts の参照を有効にしていれば、クライアントが NT-DOM へ要求する際に、192.168.0.2 へとパケットが送信されるようになります。
変更直後にはまだ有効にならない場合があるので、念のためいったんネットワークを無効にして、再び有効にしてみるのがいいかもしれません。
ドメインに参加する
マイコンピュータのプロパティからネットワーク識別子の設定を行います。
ドメインへのメンバーに参加する方を選択して、ドメイン名のところに、今回の場合は NT-DOM と入力します。
そうして次へ進むと、ドメインへ参加させる権利のあるユーザアカウント情報の入力を求められますので、適切なユーザ名とパスワードを入力します。
しばらくして、「NT ドメインへようこそ」 と表示されたら完了です。再起動後に NT ドメインにログオンすることができるようになります。
パケットフィルタで守られている場合
個々のコンピュータやルータにパケットフィルタなどが設定されている場合、設定を調整しないとうまく参加させられない場合があります。
ドメインに参加する際に使用するポートには次のものがあります。
netbios-ns 137/tcp,udp netbios-dgm 138/tcp,udp netbios-ssn 139/tcp,udp これらのパケットをクライアントからサーバへ通るように、フィルタを調整する必要があります。
これらのポートは、Windows のファイル共有でも使用されるポートなので、場合によっては少々危険が伴うかもしれません。なので、クライアントとドメインコントローラとのやり取りだけですむようなあけ方をするのがいいと思います。
また、上記のポートを通過可能にすることでドメインに参加することはできますが、ログオン時の認証に失敗してしまう場合があります。
これは Windows 2000 Server が Kerberos 認証を用いていることが原因のようで、その場合は次のポートも開ける必要があります。
kerberos 88/tcp,udp このポートを、クライアントからサーバへ向けて開くことで、認証が通るようになります。
しかしながら、この状態ではまだ、フォルダのアクセス権限を調整するときなどにユーザの一覧などを取得することはできません。それらをするにはさらに次のポートを開ける必要があります。
msft-gc 3268/tcp ldap 389/tcp echo 7/tcp これで、ドメインに所属するアカウントの一覧も取得することができるようになります。