Remote Desktop の導入

VNC を置き換えられるか?


Remote Desktop とはなにか?

 Windows は長らくの間、Local Console からの操作のみが利用可能となっており、ネットワークから操作する機能を、自前では持ちませんでした。個人が単独で使用する PC については、それほど不便でもありませんが、独立した専用室に設置されるサーバー等ですら、なにか設定を行うためには、サーバールームへ出かけなければならず、管理の面ではなかなか忍耐を要求するものでした。UNIX では、telnet や ssh などの CUI ツールにより、リモート保守が可能となっていますが、Windows NT 4.0 までは何もありませんでした。

 そんな状態を一変させたものが、Windows NT 4.0 Terminal Service Edition(TSE) です。これは、thin Client 構想の中で生まれてきたもので、Windows にマルチユーザー環境を構築できるようにするものでした。Windows は、基本的に一つの PC 上での動作が大前提にあったため、必要なアプリケーションについては、それぞれの Windows に個別に導入する必要があり、管理者としては非常に手間のかかる OS でさえありました。さらには、また、OS のバージョン毎に生ずる、微妙な差異が、その上で動作するアプリケーションに対しても、余計なトラブルを生じさせることとなり、管理コストとしては、なかなか頭のいたい OS ともいえました。特に、OS をバージョンアップする際には、個々の PC に要求されるスペックは、わずか2〜3年で陳腐化され、ハードウェアの更新を余儀なくされる自体さえ引き起こしました。個人の PC と異なり、業務で使用する PC は資産としての扱いになるため、最低でも6年間は使用する必要があるにも関らず、実際にはその年数さえ満足にこなせない現実がありました。そこで、個々の Windows には画面描画機能だけを持たせ、処理の中核部分を集約したサーバーに持たせる、という考え方が産まれてきました。クライアントは画面描画機能があれば良いので、それほどスペックを要求しないため、トータルとしての運用コストは低減されることになり、企業ユースでは非常に魅力的な機能ともいえました。しかし、TSE は Windows NT 4.0 Server Family の中でも高価であり、サーバーのスペックと相まって、それほど導入されているとはいえない状態になりました。

 Microsoft は Server 製品を Windows 2000 ベースのものに更新する際に、この TSE を標準搭載することにしました。Windows 2000 Server には、この TSE が Terminal Service という名前で取り込まれ、一般の Server パッケージで利用できるようになったのです。このころ、クライアントの OS も Windows 98 から Windows 2000 へと進化しており、OS のバージョンアップに付いてこれない PC が数多く登場しており、Terminal Service の標準搭載は、非常に大きな意味を持っていました。

 この Terminal Service はもう一つの副産物が産まれました。Terminal Service により、Windows はリモートからの管理が可能となったのでした。実際に Windows 2000 Server の Terminal Service では、リモート管理モードというモードがあります。基本的には、サーバーの管理者が、リモートから操作できるようにする機能であり、原則としてはすべての機能が利用可能となっていました。

 クライアントの Windows が XP になるとき、Terminal Service はバージョンアップし、Remote Desktop と名前を変えました。Terminal Service では、画面の発色数が 256 色に制限されていること、サウンド機能は Local に限定されていて Remote 側での再生ができないこと、といった機能制限がありました。そこで、Remote Desktop では、これらの機能を改善させました。この結果、画面の発色数が Hicolor まで、サウンドが Remote 側で再生可能、ということになりました。実際に使用してみるとわかりますが、ともすると、今自分が利用している Console が、Local なのか Remote なのか、判断がつかなくなるほど、綺麗に実現されているのです。極論すれば、ネットワークが利用できれば、自宅のマシンを世界中のどこからでも利用できてしまうのです。ADSL の普及に伴い、Internet へのアクセスラインがあちこちに存在する現在では、自分の PC を持ち歩かなくても、外出先から自宅の PC を利用可能となっているのです。

 このように、非常に有用な Remote Desktop ですが、実はすべての Windows XP で利用できるわけではありません。Remote Desktop のサーバーとなれるものは、Windows XP Professional 以降となっており、ホームユーザー向けの Windows XP Home では使えないのです。Microsoft としては、ホームユーザーには Remote Desktop は不要、ということなのでしょうが、遠くの家族へ遠隔地サポートを行う場合等では、ホームユーザーであっても、必要性は高いと思うのですが、特殊な用途に分類されてしまうのかもしれませんね。

VNC と何が違うの?

 Remote Desktop 接続と似たような環境を構築するツールに VNC があります。既に必要な PC に VNC を導入していた我が家では、Remote Desktop を使うメリットはあるのでしょうか?

 Windows 版の VNC では、Local と Remote で同じ画面を表示させます。基本的にユーザーは一人です。Remote Desktop では、Remote の環境は接続するユーザー毎に独立しています。従って、接続ユーザーは OS が許可した人数(XP Professional では二人、Terminal Service では設定したユーザー数)まで利用可能です。

 画面の転送方式を比較してみます。VNC では画面イメージを切り取って転送していますが、RemoteDesktop では画面の書き換え要求メッセージを送信しているという違いがあります。VNC では、ホスト OS の解像度が高くなるほど、転送量が大きく増加するため、レスポンスが悪くなります。このため、回線速度が低い場合には、VNC の方が負荷が高くなります。実際、VNC は便利だが LAN 内までしか実用的に使えない、というメッセージはあちこちで見かけます。プロトコル的に、圧縮は行っていますが、画面を切り取るという性質上、データが大きくなりやすい傾向は否めません。

 使用できるプラットフォームを比較してみましょう。サーバーとなれる PC は、Remote Desktop では Windows 2000 Server ないしは Windows XP Professional が必要となりますが、VNC では Windows 9x から Windows XP Professional までの Windows プラットフォームであればすべて対応可能です。比較的多くの場保で利用されている Windows 2000 Pro をサーバーにする場合には、VNC は利用可能ですが、Remote Desktop は逆上がりしても無理です。

 それでは、クライアント側ではどうでしょう?VNC は、Win32 版の VNC Viewer と Java 版の VNC Viewer があり、どちらも簡単に入手できます。特に Java 版の VNC Viewer を使うと、事前にインストールしなくても、必要な時に Viewer がインストールされ、非常に手軽に扱うことができます。Remote Desktop では、Windows XP Professional の CD に、接続クライアントが含まれているため、これを事前にセットアップしなければなりません。とはいえ、実は英語版であれば、Internet から入手できますので、敷居としては大差ないといえるでしょう。

 VNC と RemoteDesktop は、現在のところ、使い分けをすることになると思います。確かに Remote Desktop は高速ですが、利用環境が限定されており、すべてのプラットフォームで幸せになれるわけではありません。最低でも Windows 2000 Server 以上は必要となります。Windows 2000 Pro でリモート保守を行おうとすると、選択肢は VNC しかありません。ホスト側の設定をチューニングして、高速化と図っておき、Service として登録しておく必要があります。しかし、VNC ではプロトコルベースでは、暗号化がなされていないというデメリットがあります。少なくとも、Internet 上で利用する場合、そのまま使うわけにはいかず、何らかの暗号化が必要となります。ssh や zebedee 等のポートフォワーディングと併用しない場合、セキュリティホールとなってしまいます。従って、VNC を使う場合には、設定が若干増える、という性質もあります。

 Windows 2000 Server または Windows XP Professional を使う場合は、Remote Desktop を使うべきです。標準機能であることからもですが、速度的にも Remote Desktop の方が高速であること、ユーザー認証が OS の機能で行われること、などからもあり、Remote Desktop が良いと思われます。Remote Desktop では、プロトコルベースでの暗号化が行われていますので、ある程度は安心できると思います。ただ、セッションハイジャックを受けることを考慮すると、素のまま通すのは結構不安が残ると思います。従って、VNC と同様にポートフォワーディングを併用することをお勧めします。

Remote Desktop の使い方

 結構面白い使い方をしています。それについては、のちほど.....


 Last Updtae 2003/11/15 .