聞けば、2010年はActive Directoryの誕生から10周年にあたるのだそうだ。なるほど、Windows 2000(その名の通り、2000年の発売だ)の登場と合わせてActive Directoryが登場したのだから、そういうことになる。もうWindows 2000の登場から10年も経つのか…という話はともかく。

単にhow to的なことを書いても面白くないので、10周年という節目に合わせてActive Directory前史から振り返ってみるのも一興かと思い、記事をひとつ、したためてみた次第だ。

Windows Server 各バージョンの画面

NTドメインには、さらに前がある

現在のWindowsでは、基本的に同じものをベースにしてクライアント用(デスクトップ用ともいう)とサーバ用の製品を派生させる形をとっている。しかし昔は、サーバ用のOSとクライアント用のOSはまったくの別物で、前者のことをNOS(Network Operating System)と呼んでいたものだ。

そして、マイクロソフトのサーバOSには、Windows NTよりさらに前があった。それが、OS/2上で動作するMicrosoft LAN Manager(以下LAN Manager)だ。つまり、LAN Managerは現在のサーバ用Windowsみたいな「ネットワーク機能付きのOS」ではなくて、「スタンドアロンのOSにネットワーク機能を付け加える追加ソフトウェア」だった。そこが、当時の宿命のライバル・NetWareと異なるところだ。

さらに遡ると、MS-DOS 3.x上で動作するMS-Networksという製品もあったし、Windows 3.1にネットワーク機能を追加したWindows for Workgroups 3.1x(日本語版は存在しない)なんていう製品も存在したのだが、これらはActive Directoryにつながる要素が薄いので、今回は割愛させていただく。

LAN ManagerからWindows NT Server、そして現在のWindows Server 2008へと進化する過程での、ドメイン関連機能やネットワーク プロトコルの変化についてまとめてみた。ただし、Windows NTで加わった機能の中には、途中のバージョンから加わったものも含まれている

LAN Managerには、Ver.1とVer.2がある。そして、LAN Manager Ver.1は現在でいうところのワークグループ構成で、個々のサーバごとにユーザーアカウントの情報を独立して管理する形をとっていた(ちなみに、NetWare 3.xも同じだ)。それに対してLAN Manager 2.0が特徴的なのは、初めて「ドメイン」の概念を取り入れた点だ。この時点で初めて、ユーザーアカウントを集中管理するサーバを設置するという考えが生まれたわけだ。それが、現在のActive Directoryにつながってくる。

時代はえらく古いが、基本的な考え方は現在のActive Directoryと変わらない。ユーザーアカウント情報を持つドメインコントローラを設置して、ユーザーはそこにユーザー名とパスワードの情報を送信して認証を受ける。それにより、個別のサーバごとに認証を受ける必要性をなくした。実は、これはNetWare 3.xに対するLAN Managerの優位性といえたのだが、当時は高速なファイルサーバとしてのNetWareの優位は揺るがず、マイクロソフトが逆転するのはしばらく先の話になる。

ついでに書くと、この頃はLANアダプタのドライバとネットワーク層/トランスポート層プロトコルを一体化(いわゆるモノリシックドライバ)にしていた。それを改めて、インタフェース仕様を規定することで両者の分離と自由な組み合わせを実現したのがNDIS(Network Driver Interface Specification)で、これもLAN Managerの頃から存在する。

余談だが、LAN Managerのことを、内輪では略して「ランマン(LAN MAN)」と呼んでいた。当時、日本ではさまざまなアーキテクチャのPCが販売されていたことからMVL(Multi Vendor LAN Manager)という製品が登場。さらに、ラベルに「世界的標準」「相互接続可」なんて書いたノベルティの日本酒を作っていたのも、今となっては懐かしい話だ。なぜ日本酒か? それは呼び名から推測していただきたい。