(上)を読む
(中)を読む

Windowsの遠隔操作

 TightVNCは,Windows XP/2000/NTにも対応している。Windows用のVNCサーバーやVNCクライアントは,公式サイトで配布されているインストーラを実行するだけで簡単に導入できる。ここでは,2006年2月上旬時点の最新版であるバージョン1.3dev7のインストーラ「tightvnc-1.3dev7-setup.exe」を利用した。

 また,同バージョンのVNCサーバーをWindows XP/2000上で利用すると,Windowsの画面書き換えを検知してVNCサーバーの負荷を低減させる「DFMirage」というドライバも利用できる。これも一緒に導入しよう。このドライバは「dfmirage.zip」というアーカイブ・ファイルで配布されている。DFMirageは,VNCサーバーをインストールする前に導入する必要があるので,dfmirage.zipファイルを展開して生成されるInst.exeファイルを実行して導入する。

 TightVNCのインストーラを起動すると,途中で写真5のようなコンポーネント選択画面が表示される。選択できるコンポーネントには,VNCサーバーの「TightVNC Server」,VNCクライアントの「TightVNC Viewer」,マニュアルなどの文書(英語)の「Web pages and documentation」の3つがあり,必要なものにチェックを入れる。

写真5 Windows版TightVNCのインストーラ(コンポーネントの選択)
このコンポーネント選択画面で,「VNCサーバー」「VNCクライアント」「ドキュメント」のどれをインストールするかを指定できる。

 続く画面(写真6)では,「Register new TightVNC Server as a system service」(VNCサーバーをWindowsのシステム・サービスとして登録する)や,「Start or restart TightVNC service」(TightVNCのサービスを起動または再起動する)などの設定が表示される。これらにチェックを付けて有効にしておくと,システム起動時にVNCサーバーが自動起動されるため便利だ。

写真6 Windows版TightVNCのインストーラ(Windowsのサービスとして登録)
この画面で,VNCサーバーをWindowsのシステム・サービスとして登録するか否かを設定できる。

 インストールが完了したら,システムを再起動してみよう。前述の2つの設定にチェックを付けていれば,Windowsの再起動後にVNCサーバーが自動起動する。もし付け忘れた場合には,スタート・メニューから「TightVNC (unstable)」-「Launch TightVNC Server」を選び,VNCサーバーを起動させる。

 VNCサーバーが稼働していれば,タスク・トレイに図7のようなアイコンが表示される。このアイコンを右クリックして表示されるメニューから「Properties」を選択すると,VNCサーバーの設定ダイアログ(写真7)が表示される。最低でも,「Primary password」エリアにパスワードを設定しないと,VNCクライアントからの接続が許可されない。半角英数字8文字以内でパスワードを設定しよう。

図7 VNCサーバー稼働中を示す表示
VNCサーバーの稼働中は,タスク・トレイにアイコンが表示される。


写真7 Windows版VNCサーバーの設定画面
この画面でVNCサーバーのさまざまな設定が行える。Windows版は,パスワードを設定しなければアクセスを受けつけない設定が標準となっているため,パスワードを必ず設定する。

 また,Windows XP SP2では,VNCサーバー用にファイアウオール設定を変更する必要がある。ファイアウオールを通すプログラムとして,VNCサーバーの本体(標準では,C:\Program Files\TightVNC-unstable\WinVNC.exe)を指定する。

 VNCサーバーの準備が整ったら,VNCクライアントから接続してみよう。接続手順はLinuxで動作するVNCサーバーに接続する場合と同様だが,パスワードを設定しているため,接続時にパスワードの入力が求められる。接続に成功すると,写真8のように,Windowsのデスクトップが表示される。

写真8 LinuxクライアントからWindowsを遠隔操作
Linuxでvncviewerコマンドを実行すれば,Windowsのデスクトップを遠隔操作できる。

 ちなみに,ここで紹介した例とは逆のパターンである,WindowsのVNCクライアントから,LinuxのVNCサーバーに接続することも可能だ。

通信データ量の削減

 TightVNCは,通信するデータ量が極力少なくなるように開発されている。画面のうち色数が少ないエリアでは「LZ77」を改良したデータ圧縮方式で可逆圧縮をし,色数が多いエリアではJPEG方式による非可逆圧縮をすることで通信データを削減している。

 さらにvncviewerコマンドのオプションにより,それぞれの方式ごとに圧縮レベルを細かく設定できる。

 可逆圧縮部分の圧縮レベルは-compresslevelオプションを用いる。レベルは0~9の数字で指定し,「9」が最もデータ量が少ないレベルになる。

 一方,非可逆圧縮部分の圧縮レベルは-qualityオプションを用いる。レベルは0~9の数字で指定し,「0」が最もデータ量が少ないレベルになる。ただし,-qualityオプションに「0」を設定すると,かなり画質が低下してしまうため注意してほしい。

 また,色情報を減らしてデータ量を抑えることも可能だ。大幅に減らしたい場合は,vncviewerコマンドに-bgr233オプションを指定するとよいだろう。

 以上のオプションを用いてデータ量を抑えた例が,p.89の図1の「TightVNC-best」グラフである。TightVNCの標準設定と比べて,データ量が3分の1以下になっている。