簡単PC遠隔操作−VNC−   →WinVNC編 →XVNC編


Part1.Winvnc編
Part2.XVNC編
Part3.活用編
Part4.リナザウ編
Part5.W-ZERO3編
Part6.PSP編
・Part7.VMWARE編


Part3 活用編


最近のVNC事情について

VNCはAT&T Laboratories Cambridgeが出しているフリーのリモートコントロールソフトです。

現在AT&T Laboratpris Cambridgeは閉鎖されました。現在は元の開発スタッフによってRealVNCとして開発が続けられています。
2004年01月現在の最新バージョンはRealVNC 3.3.7となります。使用方法は今までのVNCとほとんど変更がありません。

最近のVNCには、オリジナル版(
AT&T Laboratories CambridgeRealVNC)だけでなく、いろいろな亜種が存在します。
これは、VNCがGNU準拠のソフトウェアであり、ソースが公開されてることで、いろいろな方がいろいろな機能が追加されています。

RealVNC

亜種というよりも実質的なオリジナルです。

現在AT&T Laboratpris Cambridgeは閉鎖されてしまいましたが
元の開発スタッフによって開発が続けられています。

ほとんどオリジナル版VNCと操作方法は変わりません。

バイナリサポートしているOSは、
Win32(WIN95,98,2000,NT4.0,ME,XP),Linux、Solaris
です。

TridiaVNC

VNCに商用サポート(有償)を付けているのが、TridiaVNCです。
TridiaVNCは、オリジナルVNCの標準エンコード方式である"Hextile"よりも効果的にデータを圧縮可能な「Zlib」圧縮を行うことが出来るようになっているます。
また、本来無保証であるVNCを有償でサポートを行っているというのも特徴のひとつです。
サポートしているOSは、
Win32(WIN95,98,2000,NT4.0,ME,XP),X−base(Linux,IBM AIX,HP-UX,SUN-Solaris or SourceCode)
です。

TightVNC

TridiaVNCをさらに効率的にデータを伝送することのできるよう改良されているのがTightVNCです。
VNCはネットワーク経由でホストをコントロールするのに便利なツールですが、通信速度が遅いため、特に電話回線などを通じでリモートコントロールするには、かなり重くなります。
この問題について「Zlib」圧縮よりも圧縮効率の良い方式をとることによって、さらに通信の効率をあげようとするアプローチのひとつがTightVNCです。

使用可能なエンコーディング方法は以下の通りです。

オリジナル :Raw,RRE,CoRRE,Hextile
TridiaVNC :Raw,RRE,CoRRE,Hextile,ZlibHex(mix),Zlib[pure],Tight
TightVNC :Raw,RRE,CoRRE,Hextile,ZlibHex(mix),Zlib[pure],Tight & Lossy JPEG圧縮

サポートしているOSは、
Win32(WIN95,98,2000,NT4.0,ME,XP),X−base(Linux[RedHat 7.xRPM or SourceCode]
です。

WINVNCDRV→VDACC-VNC(残念ながら閉鎖されました。)

Windows2000に最適化されたVNCです。
これは、通常のWinVNCが、画面から更新部分を毎回サーチしているのに対し、WINVNCDRVでは、Windowsと通常のビデオドライバとの間に、VNC Hook Driverを用意することで、更新部分のみを効率的に知ることが出来る用にするアプローチをすることでスピードアップを図っています。
残念ながら、VNC Hook DriverはWindows2000用となっているため、Win9X・Me・NT4.0
では使用できませんが、Linux用VNCであるXVNC並みの反応速度を得ることが出来ます。

このVNCサーバは、tightVNCをベースとしているようです。

インストールは上記ホームページからlatest_video_driverlatest_winvnc_serverをダウンロード解凍します。
その後、ホームページの手順通りに
latest_video_driverを「ハードウェアの追加と削除」から「新しいデバイスの追加」で一覧からディスプレイアダプタを追加します(vncdrv.infを指定)。

後は、オリジナルのVNCをインストール・初期設定をした後で、latest_winvnc_serverの内容をVNCのインストール先(標準では"C:\Program Files\ORL\VNC")に上書きすればOKです。
この、WinVNCサーバは、TightVNCをベースに作られている模様です。

VNCViewerは、ブラウザや標準のVNCViewerが使用できますが、TightVNCVNCViewerも使用できるようです。

VDACC-VNCのインストール方法の詳細説明ページを作成しました。

サポートしているOSは、
Win32(2000,NT4.0,XP)
のみです。

(追記)
現在閉鎖されていますが、VDACC-VNCの最大の特徴であるvideo hook driverはUltr@vncに吸収されています。
そのまま移行しても問題ないでしょう。

Ultr@VNC(UltraVNC)

Ultra@VNCは、オープンソースで開発されているVNCです。
数々のVNCの亜種(TightVNCのTightエンコード、eSVNCのファイル伝送機能、VDACC-VNCのvideohook driver、singlewindow機能等)を取りこみ、さらに独自の各種拡張を行っています。

・Tightエンコードおよび独自のUltraエンコードを含む各種エンコードフォーマットに対応
  (ZRLE、Zlib[+XDR]、Tight、ZlibHex、Hextile、RRE、CoRRE、Raw、Ultra,)
・Zip/Tight圧縮、Jpeg圧縮機能に対応
・サーバ−ホスト間のファイル転送機能に対応
・DSMプラグインによる機能拡張が可能
・MS Login認証に対応
・XDMCP[X11]接続に対応
・VideoHookDriverによる反応速度の向上(Windows2000.XP)
・特定のウインドウのみを表示操作可能なSingleWidow機能
・チャット機能に対応
・レジストリでのみいじれる項目をダイアログで設定可能
 (接続ポートの変更、Http接続のOn/Off、Viewerからの切断時の自動ログオフ設定、壁紙除去機能等)
・Viewerに、回線速度よって、最適なエンコードオプションで接続するQuick Options機能対応

2004年1月現在、トップページからダウンロード可能なバージョンは「V1.0.0 RC11b」ですが、
Download→All Ultr@VNC files からいけば、現在開発中のバージョンが手に入ります。
[2004-01-13に最新版の1.0.0 RC12G]
しかし、RC12てバージョン初めてみました。どこが正式直前版なんだか。

インストール方法は、基本的にInstaller版をダウンロードして実行すればほぼ全自動です。
もし、全バージョンをインストール済であれば、停止&サービス登録している場合は解除して置いた方が用意でしょう。

「UltraVNC-100-RC12g-Setup.zip」をダウンロードして、
「UltraVNC-100-RC12b-Setup.exe」を実行してそのままウイザードに従ってください。
通常はすべて標準で良いと思いますが、VNCをサービス登録する場合は、ココで指定も出来ます。
なお、WIndows2000、XPの場合は、Install Video Hook Driverを登録するかを聞いてくるので、インストールしましょう。
反応速度が全然違います。

サポートしているOSは、
Win32(WIN95,98,2000,NT4.0,ME,XP)
のみです。



 

各VNCの使用可能なエンコーディングは、VNCViewerのプロパティを見れば一目瞭然です。

オリジナル
VNC
Viewer
TridiaVNC
Viewer
TightVNC
Viewer
Ultr@VNC
Viewer

ただし、この新しくサポートされたエンコード方式は、圧縮率が上がるのでその分ネットワークの負荷が低くなるのですが、その分CPUパワーを消費してしまいます。
つまり、高速な伝送が不可能な回線(ISDN等)では、かなり有効なのですが、逆にLAN環境のように高速な伝送が可能な場合は、CPUパワーを食われて逆にレスポンスが遅くなります。

このあたりは、使用できるCPUリソースと回線の速度の兼ね合いで、どちらを使用したほうがよいかは変化しますが、LAN上ではHextile,低速回線を使用するときは 「Tight」&「Lossy JPEG圧縮」 がお勧めだと思います。


お勧めなVNCサーバ

現時点でのお勧めは、

Win2000では、
WINVNCDRVのVideoDriver + WinVncServer と、TightVNCVNCViewerの組み合わせ
それ以外では、
TightVNCWinVncServer + VNCViewer 

ですね。

プロトコルはLAN上では「Hextile」、低速回線上では「Tight」&「Lossy JPEG圧縮」がお勧めです。

色数は、LAN条で使用する場合はWinVNCならば16BIT、XVNCなら8BITカラーを使用すると良いそうです。
低速回線越しに使用する場合は8BITカラーで使用しましょう。


XVNCをinetd経由で起動

通常のVNCサーバでは、あらかじめVNCサーバを立ち上げておかなければいけません。
この場合、Linux系VNCの場合はVNCに接続する直前にTELNETでサーバを立ち上げてから、VNCViewerで接続し、操作が終わったら改めてTELNETでサーバを終了するという流れになります。

しかし、このinetd経由で起動すると、VNCViewerで接続すればサーバが自動的に起動し、VNCViewerを終了すれば、サーバも停止するようになります。

詳しいやり方は

等のページを参照してください。


WinVNC用ポリシーテンプレート

Windows用のVNCであるWinVNCは、レジストリを操作することで、各種動作のカスタマイズをすることが出来ます。

このカスタマイズを簡単に行うことの出来るPolicyテンプレートが公式VNCで紹介されています。(ただし英語版)

で、この英語版Policyテンプレートを元に日本化&項目の追加を行なってみました。

なにか,間違いなどを見つけたら連絡くださると助かります。
(日本語化には、
畠山氏のVNCのページを参考にさせてもらいました。

注意:本ポリシーファイルでは、Psassword項目はコメント化してあります。

このテンプレートを使用するためには、システムポリシーエディタ(System Policy Editor)が必要です。
システムポリシーエディタはWindowsのリソースキットに付属しているということなのですが、Microsoftのこちらのサーバからもダウンロードできるようです。

システムポリシーエディタとテンプレート

Win9X系OSではPEJW9X.EXEを、NT系OSではPENTI386.EXEを使用して実行すれば、インストーラーが立ち上がりますので、好きな場所にインストールしてください。

上記Policyテンプレートは、システムポリシーエディタ(Poledit.exe)を起動して、オプション->ポリシーテンプレートから、追加してください。
あとは、ファイル->レジストリを開く(システムポリシーエディタを実行しているマシン上の更新)か、ファイル->接続(システムポリシーエディタを実行しているマシン以外の更新)を行えばOKです。

詳しい設定内容は、上級者向けセッティング(WinVNC[サーバ]編)を参照してください。


WinVNC日本語化パッチ

Windows版VNCの日本語化パッチが登場した模様です。

生活情報源さんの日本語化パッチページにて公開されています。
WinVNC Ver3.3.3r9 日本語化パッチ フリーウェア(26KB)

PC遠隔操作ユーティリティ「WinVNC Ver3.3.3r9」の日本語化パッチです。
主に画面周りを日本化しました。エラーメッセージに関しては気づいた範囲で日本語化しています。
他にも日本語化して欲しい部分など要望ありましたらご連絡ください。(2002/03/17更新)

とのことです。

VNC Serverと、VNC Viewerの両方について日本語化を行ってくれるようです。
これで、英語版だから・・・・・という理由でVNCを使用していなかった方も、気楽に使用できるようになりますね。
パッチを当てるとこんな感じになります。

この日本語化パッチと、上で紹介したWinVNC用ポリシーテンプレート(日本語版)」を使用すれば、さらにVNCをお気楽・便利に使えるかもしれませんね。

おすすめ!!


インターネット経由でVNCを使用するためには

VNCはTCP/IPで通信を確立して画面や入力のやり取りを行いますので、インターネット経由でVNCを使用するためにはクライアントからサーバに対してTCP/IPでの通信が出来なければいけません。(VNCProxy等を使用しない場合)

通常は、VNCサーバにグローバルIPアドレスが付与されていなければ、インターネット経由でVNCを使用することは出来ませんが、ルータのポートフォワーディング機能などを使えば、VNCサーバにローカルアドレスが付与されていても大丈夫な場合もあります。
ポートフォワーディング機能というのは、簡単に言うと電話の転送機能のようなもので、ルータの特定のポートがパケットがきたら、自動的にLAN内のVNCサーバにパケットを転送してくれる機能です。

なお、VNCサーバにグローバルIPアドレスが(ルータの設定を変更しても)付与できない場合は、Listenモードを使用してサーバからクライアントへ接続することも出来ます。もちろんクライアントに対してグローバルIPの付与が必要です。

基本的には、VNCは次の3種類のポートを使用しますので、ここにViewerまたはServerからの接続が可能であれば良いわけです。
もちろんポート番号の変更も出来ます(要レジストリ変更)。

クライアント 5500 Listenモードでサーバからクライアントに接続するために使用
サーバ 5800〜5899 HTTP経由で接続するために必要
サーバ 5900〜5999 VNCプロトコルで使用[HTTP経由でも使用します]

ただし、設定によっては、パスワードを知っていれば、誰でもアクセス可能となってしまう場合もありますので、アクセス制限はしっかりと掛けておく必要があります。出来れば、接続できるPCを特定するなどの設定は行っていた方が良いでしょう。

SSHサーバ・クライアントを使って通信を暗号化しても良いでしょう。

以下工事中。


VNC関連リンク

AT&T Laboratories Cambridge

VNCの開発元です。VNCのダウンロードはこちら。
ただし、AT&T Laboratpris Cambridgeは閉鎖されてしまいました。

RealVNC

現在AT&T Laboratpris Cambridgeは閉鎖されてしまいましたが
元の開発スタッフによって開発が続けられています。
亜種というよりも実質的なオリジナルです。

畠山氏のVNCのページ(相互リンク)

VNCの詳細な情報が満載なページ。和訳ドキュメントも豊富です。

生活情報源(相互リンク)

WinVNCの日本語化パッチを公開されているページです。

TridiaVNC

TridiaVNCは、オリジナルVNCの標準エンコード方式である"Hextile"よりも効果的にデータを圧縮可能な
「Zlib」圧縮を行うことが出来るようになっているます。
また、本来無保証であるVNCを有償でサポートを行っているというのも特徴のひとつです。

TightVNC

TridiaVNCをさらに効率的にデータを伝送することのできるよう改良されています。
VNCはネットワーク経由でホストをコントロールするのに便利なツールですが、通信速度が遅いため、
特に電話回線などを通じでリモートコントロールするには、かなり重くなります。
この問題について「Zlib」圧縮よりも圧縮効率の良い方式をとることによって、
さらに通信の効率をあげようとするアプローチのひとつがTightVNCです。

WINVNCDRV(video hook driver for windows 2000) 閉鎖されました

Windows2000に最適化されたVNCです。
これは、通常のWinVNCが、画面から更新部分を毎回サーチしているのに対し、WINVNCDRVでは、Windowsと通常のビデオドライバとの間に、VNC Hook Driverを用意することで、更新部分のみを効率的に知ることが出来る用にするアプローチをすることでスピードアップを図っています。残念ながら、VNC Hook DriverはWindows2000専用となっているため、Win9X・Me・NT4.0では使用できませんが、Linux用VNCであるXVNC並みの反応速度を得ることが出来ます。

Ultr@VNC

数々のVNCの亜種(TightVNCのTightエンコード、eSVNCのファイル伝送機能、VDACC-VNCのvideohook driver、singlewindow機能等)を取りこみ、さらに独自の各種拡張を行っています。
Windowsで使用する場合には最もお勧めのVNCです。

ゼロ円でできるXサーバ WindowsでLinuxをリモート操作 [前編] [後編]

Linux版を使う場合、こちらの解説が非常に便利です。
VNCをinetdで起動する方法も紹介しています。

VNC (Xvnc) のセットアップ備忘録(相互リンク)

iXvncのセットアップ方法に詳しいです。


PCの間へ戻る
玄関へ戻る