(57)【特許請求の範囲】
【請求項１】
ユーザ環境を動作させるユーザ仮想マシンと、接続しているネットワークの安全性に応じて前記ユーザ仮想マシンによる前記ネットワークの利用を制御するサービス仮想マシンとを含む仮想マシンシステムが構築された端末装置であって、
前記サービス仮想マシンが、
前記サービス仮想マシンの中に、前記ネットワークに対応する仮想ネットワークと通信を行う通信ノードを作成し、
前記端末装置が接続している前記ネットワークが安全性の高い内部ネットワークである場合、前記ユーザ仮想マシンを起動して前記通信ノードに接続し、
前記ネットワークが安全性の低い外部ネットワークの場合、前記ネットワークとの間にＶＰＮ接続を確立し、当該ＶＰＮ接続に対応する仮想ネットワークと通信を行うＶＰＮ通信ノードを作成し、前記ユーザ仮想マシンを起動して前記ＶＰＮ通信ノードに接続するとともに、重要なデータから切り離されたユーザ環境を動作させる補助仮想マシンを起動して前記通信ノードに接続することを特徴とする端末装置。
【請求項２】
前記サービス仮想マシンが、ハイパーバイザと一体化して構成されることを特徴とする端末装置。
【請求項３】
前記サービス仮想マシンが、所定の機能毎に複数に別れて構成されることを特徴とする端末装置。
【請求項４】
前記サービス仮想マシンが、
前記携帯端末が直接接続する前記ネットワークが、前記内部ネットワーク又は前記外部ネットワークであるかを判定する回線接続制御処理部を備えることを特徴とする請求項１から請求項３の何れか１項に記載の端末装置。
【請求項５】
前記回線接続制御処理部は、
前記携帯端末が直接接続する前記ネットワークが、前記内部ネットワーク又は前記外部ネットワークであるかを示す情報を予め設定した回線接続制御テーブルを備え、
前記回線接続制御テーブルを参照して、前記ネットワークが前記内部ネットワーク又は前記外部ネットワークであるかを判定することを特徴とする請求項４に記載の端末装置。
【請求項６】
前記回線接続制御処理部は、
ネットワークのＩＰアドレスの範囲と、接続したネットワークが内部ネットワークかどうかを調べるためのコマンドとを対応付けた内部判定制御テーブルを備え、
前記回線接続制御テーブルから前記ネットワークが前記内部ネットワーク又は前記外部ネットワークであるかを判定できない場合、前記ネットワークにおいて取得したＩＰアドレスが、前記内部判定制御テーブルに存在するかどうかを検索し、
前記取得したＩＰアドレスが前記内部判定制御テーブルに存在する場合には、対応する前記コマンドを実行し、前記コマンドの実行が成功した場合、前記ネットワークを前記内部ネットワークと判定し、
前記取得したＩＰアドレスが前記内部判定制御テーブルに存在しない場合又は前記コマンドの実行が失敗した場合、前記ネットワークを前記外部ネットワークと判定することを特徴とする請求項５に記載の端末装置。
【請求項７】
前記ユーザ仮想マシンが停止した場合、前記補助仮想マシンが稼動中であるかどうかを判定し、前記補助仮想マシンが稼動中であれば前記補助仮想マシンを停止した後、前記サービス仮想マシンを停止させることを特徴とする請求項１から請求項６の何れか１項に記載の端末装置。
【請求項８】
ユーザ環境を動作させるユーザ仮想マシンと、接続しているネットワークの安全性に応じて前記ユーザ仮想マシンによる前記ネットワークの利用を制御するサービス仮想マシンとを含む仮想マシンシステムが構築された端末装置のネットワーク接続方法であって、
前記サービス仮想マシンによって、
前記サービス仮想マシンの中に、前記ネットワークに対応する仮想ネットワークと通信を行う通信ノードを作成し、
前記ネットワークが安全性の高い内部ネットワークである場合、前記ユーザ仮想マシンを起動して前記通信ノードに接続し、
前記ネットワークが安全性の低い外部ネットワークの場合、前記ネットワークとの間にＶＰＮ接続を確立し、当該ＶＰＮ接続に対応する仮想ネットワークと通信を行うＶＰＮ通信ノードを作成し、前記ユーザ仮想マシンを起動して前記ＶＰＮ通信ノードに接続するとともに、重要なデータから切り離されたユーザ環境を動作させる補助仮想マシンを起動して前記通信ノードに接続することを特徴とするネットワーク接続方法。
【請求項９】
前記サービス仮想マシンによって、前記携帯端末が直接接続する前記ネットワークが、前記内部ネットワーク又は前記外部ネットワークであるかを判定する判定ステップを有することを特徴とする請求項８に記載のネットワーク接続方法。
【請求項１０】
前記判定ステップにおいて、
前記携帯端末が直接接続する前記ネットワークが、前記内部ネットワーク又は前記外部ネットワークであるかを示す情報を予め設定した回線接続制御テーブルを参照して、前記ネットワークが前記内部ネットワーク又は前記外部ネットワークであるかを判定することを特徴とする請求項９に記載のネットワーク接続方法。
【請求項１１】
前記判定ステップにおいて、
前記回線接続制御テーブルから前記ネットワークが前記内部ネットワーク又は前記外部ネットワークであるかを判定できない場合、前記ネットワークにおいて取得したＩＰアドレスが、ネットワークのＩＰアドレスの範囲と、接続したネットワークが内部ネットワークかどうかを調べるためのコマンドとを対応付けた内部判定制御テーブルに存在するかどうかを検索し、
前記取得したＩＰアドレスが前記内部判定制御テーブルに存在する場合には、対応する前記コマンドを実行し、前記コマンドの実行が成功した場合、前記ネットワークを前記内部ネットワークと判定し、
前記取得したＩＰアドレスが前記内部判定制御テーブルに存在しない場合又は前記コマンドの実行が失敗した場合、前記ネットワークを前記外部ネットワークと判定することを特徴とする請求項１０に記載のネットワーク接続方法。
【請求項１２】
前記ユーザ仮想マシンが停止した場合、前記補助仮想マシンが稼動中であるかどうかを判定し、前記補助仮想マシンが稼動中であれば前記補助仮想マシンを停止した後、前記サービス仮想マシンを停止させることを特徴とする請求項８から請求項１１の何れか１項に記載のネットワーク接続方法。
【請求項１３】
ユーザ環境を動作させるユーザ仮想マシンと、接続しているネットワークの安全性に応じて前記ユーザ仮想マシンによる前記ネットワークの利用を制御するサービス仮想マシンとを含む仮想マシンシステムが構築された端末装置上で動作するプログラムであって、
前記サービス仮想マシンに、
前記サービス仮想マシンの中に、前記ネットワークに対応する仮想ネットワークと通信を行う通信ノードを作成し、
前記ネットワークが安全性の高い内部ネットワークである場合、前記ユーザ仮想マシンを起動して前記通信ノードに接続し、
前記ネットワークが安全性の低い外部ネットワークの場合、前記ネットワークとの間にＶＰＮ接続を確立し、当該ＶＰＮ接続に対応する仮想ネットワークと通信を行うＶＰＮ通信ノードを作成し、前記ユーザ仮想マシンを起動して前記ＶＰＮ通信ノードに接続するとともに、重要なデータから切り離されたユーザ環境を動作させる補助仮想マシンを起動して前記通信ノードに接続する処理を実行させることを特徴とするプログラム。
【請求項１４】
前記サービス仮想マシンに、前記携帯端末が直接接続する前記ネットワークが、前記内部ネットワーク又は前記外部ネットワークであるかを判定する判定処理を実行させることを特徴とする請求項１３に記載のプログラム。
【請求項１５】
前記判定処理において、
前記携帯端末が直接接続する前記ネットワークが、前記内部ネットワーク又は前記外部ネットワークであるかを示す情報を予め設定した回線接続制御テーブルを参照して、前記ネットワークが前記内部ネットワーク又は前記外部ネットワークであるかを判定することを特徴とする請求項１４に記載のプログラム。
【請求項１６】
前記判定処理において、
前記回線接続制御テーブルから前記ネットワークが前記内部ネットワーク又は前記外部ネットワークであるかを判定できない場合、前記ネットワークにおいて取得したＩＰアドレスが、ネットワークのＩＰアドレスの範囲と、接続したネットワークが内部ネットワークかどうかを調べるためのコマンドとを対応付けた内部判定制御テーブルに存在するかどうかを検索し、
前記取得したＩＰアドレスが前記内部判定制御テーブルに存在する場合には、対応する前記コマンドを実行し、前記コマンドの実行が成功した場合、前記ネットワークを前記内部ネットワークと判定し、
前記取得したＩＰアドレスが前記内部判定制御テーブルに存在しない場合又は前記コマンドの実行が失敗した場合、前記ネットワークを前記外部ネットワークと判定することを特徴とする請求項１５に記載のプログラム。
【請求項１７】
前記ユーザ仮想マシンが停止した場合、前記補助仮想マシンが稼動中であるかどうかを判定し、前記補助仮想マシンが稼動中であれば前記補助仮想マシンを停止した後、前記サービス仮想マシンを停止させることを特徴とする請求項１３から請求項１６の何れか１項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに接続可能な端末装置、そのネットワーク接続方法及びプログラムに関する。
【背景技術】
【０００２】
近年、家庭や公衆のネットワーク接続環境が一段と整備され、重要な情報を持つノート型パーソナルコンピュータ等の携帯情報端末を社外（外部）に持ち出した際に、社外でネットワークに接続する機会が増えている。
【０００３】
社外でネットワーク接続する場合の問題点として、接続したネットワークを通して、重要な情報を社外に流出させてしまう可能性がある点が挙げられる。
【０００４】
その対策として、携帯情報端末の接続先をＶＰＮ（仮想私設通信網）端点（サーバ）に限定し、通信をＶＰＮ端点との間に限定するような設定を行う方法がある。この方法によれば、社外でのネットワークの利用はＶＰＮのみとなるため、社外でのネットワーク利用の安全性は確保されると考えられる。このようなＶＰＮを利用して接続を行う関連技術が特許文献１等に記載されている。
【０００５】
【特許文献１】特開２００４−２８０５９５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上述したようなＶＰＮを利用した方法では、社外において、社外サーバのサービスを利用する場合、例えば、社外ウェブサーバから一般的な情報を得るような場合に、それがＶＰＮ経由となることにより、アクセス効率が低下するという問題がある。
【０００７】
また、ＶＰＮ端点や内部ネットワークにおいて、何らかのアクセス制限を行っている場合や、ＶＰＮ端点に何らかのトラブルが発生している場合には、社外にいながら社外サーバのサービスを利用することができない場合が発生するという問題がある。加えて、ＶＰＮ端点への負荷が必要以上に大きくなるという問題がある。
【０００８】
こうした問題点に対して、ネットワーク利用の安全性を確保すると同時に、ネットワーク利用の利便性も得られるような方法の実現が求められている。
【０００９】
（発明の目的）
本発明は、上述した課題を解決するためになされたものであり、端末装置によるネットワークの利用における安全性（セキュリティ）の確保と、利便性とを両立させることが可能な端末装置、ネットワーク接続方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明による端末装置は、ユーザ環境を動作させるユーザ仮想マシンと、接続しているネットワークの安全性に応じてユーザ仮想マシンによるネットワークの利用を制御するサービス仮想マシンとを含む仮想マシンシステムが構築された端末装置であって、サービス仮想マシンが、サービス仮想マシンの中に、ネットワークに対応する仮想ネットワークと通信を行う通信ノードを作成し、端末装置が接続しているネットワークが安全性の高い内部ネットワークである場合、ユーザ仮想マシンを起動して通信ノードに接続し、ネットワークが安全性の低い外部ネットワークの場合、ネットワークとの間にＶＰＮ接続を確立し、当該ＶＰＮ接続に対応する仮想ネットワークと通信を行うＶＰＮ通信ノードを作成し、ユーザ仮想マシンを起動してＶＰＮ通信ノードに接続するとともに、重要なデータから切り離されたユーザ環境を動作させる補助仮想マシンを起動して通信ノードに接続する。
【００１１】
本発明によるネットワーク接続方法は、ユーザ環境を動作させるユーザ仮想マシンと、接続しているネットワークの安全性に応じてユーザ仮想マシンによるネットワークの利用を制御するサービス仮想マシンとを含む仮想マシンシステムが構築された端末装置のネットワーク接続方法であって、サービス仮想マシンによって、サービス仮想マシンの中に、ネットワークに対応する仮想ネットワークと通信を行う通信ノードを作成し、ネットワークが安全性の高い内部ネットワークである場合、ユーザ仮想マシンを起動して通信ノードに接続し、ネットワークが安全性の低い外部ネットワークの場合、ネットワークとの間にＶＰＮ接続を確立し、当該ＶＰＮ接続に対応する仮想ネットワークと通信を行うＶＰＮ通信ノードを作成し、ユーザ仮想マシンを起動してＶＰＮ通信ノードに接続するとともに、重要なデータから切り離されたユーザ環境を動作させる補助仮想マシンを起動して通信ノードに接続する。
【００１２】
本発明によるプログラムは、ユーザ環境を動作させるユーザ仮想マシンと、接続しているネットワークの安全性に応じてユーザ仮想マシンによるネットワークの利用を制御するサービス仮想マシンとを含む仮想マシンシステムが構築された端末装置上で動作するプログラムであって、サービス仮想マシンに、サービス仮想マシンの中に、ネットワークに対応する仮想ネットワークと通信を行う通信ノードを作成し、ネットワークが安全性の高い内部ネットワークである場合、ユーザ仮想マシンを起動して通信ノードに接続し、ネットワークが安全性の低い外部ネットワークの場合、ネットワークとの間にＶＰＮ接続を確立し、当該ＶＰＮ接続に対応する仮想ネットワークと通信を行うＶＰＮ通信ノードを作成し、ユーザ仮想マシンを起動してＶＰＮ通信ノードに接続するとともに、重要なデータから切り離されたユーザ環境を動作させる補助仮想マシンを起動して通信ノードに接続する処理を実行させる。
【発明の効果】
【００１３】
本発明によれば、端末装置によるネットワーク利用の安全性と利便性を両立させることができる。
【発明を実施するための最良の形態】
【００１４】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【００１５】
（第１の実施の形態）
図１は、本発明を実施するための第１の実施の形態による仮想マシンシステムの構成を示すブロックである。
【００１６】
本実施の形態では、ネットワーク利用において、接続したネットワーク環境に適応して、その安全性を確保すると同時に、その利便性をも確保することを、ノート型パーソナルコンピュータ等の端末装置に構築した仮想マシンシステムを利用して実現する。仮想マシンシステムは、ユーザ環境が動作するシステムプラットフォームを仮想的に実現する方式であり、仮想的に実現したシステムプラットフォームである仮想マシン（ＶＭ：Virtual Machine）と、その仮想マシンの管理やＣＰＵやメモリといったシステム資源管理を行うハイパーバイザ（ＶＭＭとも呼ばれる）を備えて構成される。
【００１７】
仮想マシンは、ハイパーバイザ４００上に複数存在する場合もある。仮想マシンシステムでは、物理デバイスの制御や仮想マシンシステムの管理を行うインターフェース部分の処理を、サービスＶＭという特別な仮想マシンを使用することで行う。
【００１８】
ただし、このサービスＶＭは、ハイパーバイザと一体化して構成される場合もあるし、機能毎に複数に分かれて構成される場合もある。本実施の形態では、１つのサービスＶＭが存在する場合について説明するが、他の場合でも同様に考えることができる。
【００１９】
図１を参照すると、本実施の形態によるノート型パーソナルコンピュータ等の端末装置に構築する仮想マシンシステムは、サービスＶＭ１０、ユーザＶＭ２０、ユーザ補助ＶＭ３０、ハイパーバイザ４００を備える。
【００２０】
ユーザＶＭ２０は、重要なデータにアクセスするオペレーティングシステムやアプリケーションを含む環境（ユーザ環境）のための仮想マシンである。また、ユーザ補助ＶＭ３０は、重要なデータから切り離されたオペレーティングシステムやアプリケーションの環境（ユーザ補助環境）のための仮想マシンである。
【００２１】
サービスＶＭ１０は、回線接続制御とそれに伴う仮想マシン制御の要求を行う仮想マシン制御要求部１００、仮想マシンの制御のための仮想マシン制御部２００、ネットワーク接続に係わる処理を行う回線接続処理部３００を備えて構成される。
【００２２】
このサービスＶＭ１０の構成要素のうち、仮想マシン制御要求部１００が本実施の形態に特有の構成要素であり、他の部分は、ネットワーク処理機能や仮想マシンシステム機能において一般的に備えられる構成要素である。
【００２３】
サービスＶＭ１０の仮想マシン制御要求部１００は、サービスＶＭ１０が持つ仮想マシンシステムの管理インターフェースを通して、仮想マシンシステムを制御するものであり、ネットワーク接続についての制御を行う回線接続制御処理部１１０、仮想マシン制御部２００に対して仮想マシン起動の要求処理を行う仮想マシン起動要求処理１２０、仮想マシン制御部２００に対して仮想マシン停止の要求処理を行う仮想マシン停止要求処理１３０、仮想マシン制御部２００に対して、その通信ノード制御の要求処理を行う通信ノード制御要求処理１４０を備えている。
【００２４】
回線接続制御処理部１１０は、さらに、ネットワーク回線接続の制御や認証等で使用するネットワーク接続の方法を定義する回線接続制御テーブル１１１、ディスプレイ画面にネットワーク接続の方法の一覧を選択可能に表示するユーザインターフェース機能であるＵＩ（User Interface）機能１１２、接続したネットワーク回線が内部であるかどうかの判定の制御に使用する内部判定制御テーブル１１３、ネットワーク回線の接続と設定に使用する接続設定コマンド（群）１１４、ネットワークが内部であることの認証のために使用する内部ネットワーク認証コマンド（群）１１５を備えている。
【００２５】
仮想マシン制御要求部１００及び回線接続制御処理部１１０の各構成要素の詳細な機能及び動作については、下記の動作において説明する。
【００２６】
（第１の実施の形態の動作）
上記のように構成される第１の実施の形態による動作について、図１及び図２から図１０を参照して説明する。
【００２７】
本実施の形態では、上述したように、仮想マシンシステムを使用する。ここでは、実マシンである端末装置が直接に接続したネットワークが、社内ネットワーク等の安全な環境である場合、そのネットワークを内部ネットワーク、それ以外のネットワークを外部ネットワークと称する。
【００２８】
図２は、回線接続処理部３００を使用してネットワーク接続を行い、さらに、接続したネットワークが内部ネットワークか外部ネットワークかの判定を行う、回線接続制御処理部１１０の動作を説明するフローチャートである。
【００２９】
ステップＳ１０１で、ＵＩ機能１１２によりネットワーク接続の方法の一覧を表示する。このネットワーク接続の方法の表示では、例えば、図３に示すようなネットワーク接続メニューを表示する。図３に示すネットワーク接続メニューの各項目は、回線接続制御テーブル１１１の接続名欄に対応している。この回線接続制御テーブル１１１については、後述する。
【００３０】
なお、ネットワーク接続メニューの表示方法は、図３の例に限定されず、利用者がネットワーク接続の方法を選択可能であればどのような表示方法でもよい。
【００３１】
ステップＳ１０２では、表示されたネットワーク接続メニューから利用者が適当なネットワーク接続の方法を選択した場合に、その選択したネットワーク接続の方法（接続名）を受け付ける。
【００３２】
ステップＳ１０３では、ステップＳ１０２で利用者が選択したネットワーク接続の方法（接続名）について、回線接続制御テーブル１１１において接続名欄が一致する行の、接続設定コマンドを実行する。
【００３３】
回線接続制御テーブル１１１は、図４に示すようなテーブルであり、ネットワーク接続の方法を識別する名前である接続名欄、接続設定コマンド１１４を指定する接続設定コマンド欄、外部ネットワークかどうかを示す外部欄、内部ネットワークかどうかを示す内部欄を有している。
【００３４】
各接続設定コマンド１１４は、回線接続処理部３００の機能を制御して、実ネットワークについてのデータリンクの設定と、ＩＰアドレス情報の取得とを行う。
【００３５】
また、回線接続制御テーブル１１１で外部欄にＹｅｓとあるのは、対応するネットワークが明示的に外部ネットワークであることがわかっている場合である。また、内部欄にＹｅｓとあるのは、ネットワーク接続を行わないか、もしくは、接続したネットワークに対して、ＩＥＥＥ８０２．１Ｘ／ＥＡＰ−ＰＥＡＰ等のようなＸ．５０９電子証明書のサーバ証明書によるサーバ認証により、ネットワークが内部ネットワークであると決めても良い場合である。
【００３６】
図４の回線接続制御テーブル１１１の例は、接続名がＬＡＮ１（相互認証）あるいは無線ＬＡＮ１（相互認証）のものは、ネットワーク（サーバ）が利用者を、利用者がネットワーク（サーバ）を、と相互に認証を行うものなので、内部欄がＹｅｓとなっている。なお、図４の回線接続制御テーブル１１１の外部欄と内部欄は同時にＹｅｓとはならないが、接続名ＬＡＮ２の場合のように、外部欄も内部欄もＹｅｓとならない場合がある。回線接続制御テーブル１１１の内容は、管理者等により、接続するネットワークの種類に応じて定義される。
【００３７】
ステップＳ１０４は、ステップＳ１０３で実行した接続設定コマンドが成功したかどうかを判定する条件分岐である。条件がＮＯ（失敗）の場合は、ステップＳ１０１に戻る。
【００３８】
ステップＳ１０５は、回線接続制御テーブル１１１で、外部がＹｅｓとして指定されているかどうかを判定する条件分岐で、条件がＹＥＳならば、判定結果は外部（外部ネットワーク）となる。
【００３９】
ステップＳ１０６は、回線接続制御テーブル１１１で、内部がＹｅｓとして指定されているかどうかを判定する条件分岐で、条件がＹＥＳならば、判定結果は内部（内部ネットワーク）となる。
【００４０】
ステップＳ１０５で外部でないと判定され、かつステップＳ１０６で内部でないと判定された場合に、ステップＳ１０７の処理が行われる。
【００４１】
ステップＳ１０７は、接続したネットワークにおいて取得したＩＰアドレスに対して、内部判定制御テーブル１１３による検索を行う処理である。
【００４２】
内部判定制御テーブル１１３は、図５に示すようなテーブルであり、ＩＰアドレスの範囲を指定するアドレス欄、内部ネットワーク認証コマンド１１５を指定する内部ネットワーク認証コマンド欄を有している。
【００４３】
内部ネットワーク認証コマンド１１５は、接続したネットワークが内部ネットワークかどうかを調べるためのコマンドである。この内部ネットワーク認証コマンド１１５は、接続したネットワークにあるはずのＸ．５０９電子証明書のサーバ証明書を持つサーバのアドレスとそのサービスのポート及び接続方法を持ち、実際にそのサービスに接続して獲得したサーバ証明書を、サービスＶＭ１０が持つＸ．５０９電子証明書のルート証明書を使用して検証することで、内部ネットワークであることの認証を行う。
【００４４】
図６は、内部ネットワーク認証コマンド１１５の動作環境の例を示しており、サーバＡはＨＴＴＰＳウェブサービスを持ち、内部ネットワーク認証コマンド１１５である「Authenticate」はＳＳＬによりＨＴＴＰＳウェブサービスに接続し、それから、ＨＴＴＰＳウェブサービスが提出したサーバ証明書を、サービスＶＭ１０の持つルート証明書を使用して、ＰＫＩの仕組みにより検証する。そして、内部ネットワーク認証コマンド１１５「Authenticate」は、サーバ証明書の検証処理を行った後、終了する。
【００４５】
この時、サーバ証明書の検証に成功すれば成功であり、サーバＡに接続できないか、もしくはサーバ証明書の検証に失敗すれば失敗である。なお、サーバＡの持つサービスはＨＴＴＰＳウェブサービスに限らず、他のものでも良いが、サーバ証明書による認証のためには、サーバＡのようなサーバがネットワーク中に必要であり、適当なサーバがない場合は、管理者等が、サーバ証明書を持つダミーのサーバを用意することになる。また、サービスＶＭ１０が持つルート証明書は、標準的なルート証明書に加えて、場合によっては、管理者等によって、追加してインストールされる必要がある。
【００４６】
内部判定制御テーブル１１３の内部ネットワーク認証コマンド欄に内部ネットワーク認証コマンド１１５が指定されていない場合は、内部ネットワークであることの厳密な認証はせずに、アドレスの一致のみで構わないことを示している。なお、内部判定制御テーブル１１３の内容は、管理者等により、接続するネットワークの状況に応じて、定義される。
【００４７】
ステップＳ１０８は、ステップＳ１０７のアドレス検索の結果による条件分岐で、内部判定制御テーブル１１３に一致する行が無い場合、判定結果は外部（外部ネットワーク）となる。
【００４８】
ステップＳ１０９は、ステップＳ１０７で一致する行が存在する場合に、内部ネットワーク認証コマンド欄に内部ネットワーク認証コマンド１１５が指定がされているかどうかを判定する条件分岐であり、内部ネットワーク認証コマンド１１５が指定されていない場合、判定結果は内部（内部ネットワーク）となる。
【００４９】
ステップＳ１１０で、内部ネットワーク認証コマンド欄での指定がされている内部ネットワーク認証コマンド１１５を実行する。
【００５０】
ステップＳ１１１は、ステップＳ１１０で実行した内部ネットワーク認証コマンド１１５の結果を判定する条件分岐であり、成功（ＹＥＳ）ならば判定結果は内部（内部ネットワーク）、失敗（ＮＯ）ならば外部（外部ネットワーク）となる。
【００５１】
次に、回線接続制御処理部１１０による接続したネットワークの判定結果が得られた場合の動作について、図７及び図８と、その処理内容を示す図９を参照して説明する。
【００５２】
図７は、接続したネットワークが内部ネットワークであった場合を示している。直接通信ノードは、接続したネットワークに対して設定した通信ノードである。この場合、ユーザＶＭ２０を起動して、ユーザＶＭ２０がサービスＶＭ１０の直接通信ノード５０を経由して、内部ネットワーク５００（内部サーバ５１０等）を直接利用できるようにする。なお、ここでの直接通信ノード５０は、仮想マシンシステムの仮想ネットワークスイッチもしくはそれに相当するものである。
【００５３】
図８は、接続したネットワークが外部ネットワークであった場合を示している。この場合、サービスＶＭ１０では、内部ネットワーク５００との間にＶＰＮ（仮想私設通信網）接続を確立して、このＶＰＮ接続に対応する通信ノード（ＶＰＮ通信ノード６０）を、直接通信ノード５０とは別に設定する。直接通信ノード５０とＶＰＮ通信ノード６０は、別の仮想ネットワークにあり、相互に通信は行えない。そして、ユーザＶＭ２０と、さらに、ユーザ補助ＶＭ３０を起動する。この時、ユーザ補助ＶＭ３０がサービスＶＭ１０の直接通信ノード５０を経由して、外部ネットワーク６００（外部サーバ６１０等）を直接利用できるようにして、ユーザＶＭ２０がサービスＶＭ１０のＶＰＮ通信ノード６０を経由して、内部ネットワーク５００（内部サーバ５１０等）をＶＰＮ経由で利用できるようにする。
【００５４】
図９は、接続したネットワークを判断して、図７または図８に示す環境を構成する、仮想マシン起動要求処理１２０と通信ノード制御要求処理１４０の動作を説明するフローチャートである。
【００５５】
なお、実際のネットワーク接続、ＩＰアドレスの取得、各種認証の実行、ＶＰＮ接続等の処理は、サービスＶＭ環境のオペレーティングシステム及びアプリケーションを利用して行う。こうした部分についての基本的な設定は、システム管理者等によって、あらかじめ適切に行われているものとする。
【００５６】
ステップＳ２０１は、図２で説明した回線接続制御処理部１１０の処理を示している。
【００５７】
ステップＳ２０２では、通信ノード制御要求処理１４０が、サービスＶＭ１０の中に、接続したネットワークに対応する仮想ネットワークのための通信ノード（直接通信ノード５０）の作成を、仮想マシン制御部２００に要求する。
【００５８】
ステップＳ２０３は、ステップＳ２０１の結果に対しての、接続したネットワークが内部ネットワークか外部ネットワークかを判定する条件分岐である。
【００５９】
ステップＳ２０４は、ステップＳ２０３の判定結果が外部ネットワークである場合の処理であり、通信ノード制御要求処理１４０が、回線接続処理部３００によって、ＶＰＮ接続を確立する。
【００６０】
なお、このＶＰＮ接続のために必要となる設定については、本実施の形態とは直接関係しないので、ここでは、管理者等によって適切に設定されているものとする。また、ＶＰＮには、ＩＰＳｅｃやＰＰＴＰ、イーサネットＶＰＮ等様々な種類があるが、本実施の形態では特定のＶＰＮ方式に限定されるものではなく、どのようなＶＰＮ方式に対しても同じように適用することができる。
【００６１】
ステップＳ２０５では、通信ノード制御要求処理１４０が、ステップＳ２０４で確立したＶＰＮ接続に対応する仮想ネットワークのための通信ノード（ＶＰＮ通信ノード６０）の作成を、仮想マシン制御部２００に要求する。
【００６２】
ステップＳ２０６では、仮想マシン起動要求処理１２０が、ユーザＶＭ２０の起動を、仮想マシン制御部２００に要求する。
【００６３】
ステップＳ２０７では、ステップＳ２０３と同じように、接続したネットワークが内部ネットワークか外部ネットワークかを判定する。
【００６４】
ステップＳ２０８は、ステップＳ２０７の判定結果が外部ネットワークである場合の処理であり、仮想マシン起動要求処理１２０が、ユーザ補助ＶＭ３０の起動を、仮想マシン制御部２００に要求する。
【００６５】
ステップＳ２０９では、通信ノード制御要求処理１４０が、仮想マシン制御部２００に要求して、ユーザＶＭ２０をＶＰＮ通信ノード６０に接続する。
【００６６】
ステップＳ２１０では、通信ノード制御要求処理１４０が、仮想マシン制御部２００に要求して、ユーザ補助ＶＭ３０を直接通信ノード５０に接続する。
【００６７】
ステップＳ２１１は、ステップＳ２０７の判定結果が内部ネットワークの場合の処理であり、通信ノード制御要求処理１４０が、仮想マシン制御部２００に要求して、ユーザＶＭ２０を直接通信ノード５０に接続する。
【００６８】
図１０は、ユーザＶＭ２０が停止した場合の、仮想マシン停止要求処理１３０の動作を示すフローチャートである。
【００６９】
ユーザＶＭ２０は、ユーザＶＭ２０のシャットダウンにより停止状態となるが、この時、サービスＶＭ１０の仮想マシン制御要求部１００は、仮想マシン制御部２００からユーザＶＭ２０が停止したことを通知され、それにより、図１０に示す処理を開始する。
【００７０】
ステップＳ３０１は、ユーザ補助ＶＭ３０が稼働中かどうかを判定する条件分岐である。
【００７１】
ステップＳ３０２で、ステップＳ３０１の判定結果がＹＥＳの場合（稼動中である場合）、仮想マシン制御部２００に、ユーザ補助ＶＭ３０の停止を要求する。
【００７２】
ステップＳ３０３では、仮想マシン制御部２００に、サービスＶＭ１０の停止を要求する。サービスＶＭ１０が停止すると、続いて、ハイパーバイザ４００も停止して、仮想マシンシステム全体が停止することになる。
【００７３】
（第１の実施の形態による効果）
上述した第１の実施の形態によれば、接続したネットワーク環境に適応して、ネットワーク利用の安全性と利便性を両立させることができる。その理由は、以下に示すような処理を、面倒な仮想マシンシステムの管理操作を利用者に行わせることなく実現するためである。
【００７４】
重要なデータを持つユーザＶＭに関して、ネットワークが安全と考えられる内部ネットワークの場合には、ユーザＶＭがそのネットワークをそのまま利用できるようにするが、ネットワークが外部ネットワークである場合には、ユーザＶＭからはそのネットワークを利用できないようにする。
【００７５】
さらに、ネットワークが外部ネットワークの場合には、ＶＰＮ接続を確立して、ユーザＶＭはそのＶＰＮだけを利用できるようにする。
【００７６】
さらに、ネットワークが外部ネットワークの場合には、重要なデータを持たないユーザ補助ＶＭを起動して、ユーザ補助ＶＭ環境により、そのネットワークをそのまま利用できるようにする。
【００７７】
こうしたネットワーク及び仮想マシン（ユーザＶＭ、ユーザ補助ＶＭ）の制御を、ネットワークが内部ネットワークか外部ネットワークかを適切に判別して自動的に行う。
【００７８】
（他の実施の形態）
次に、本発明による他の実施の形態について説明する。
【００７９】
上述した第１の実施の形態では、接続したネットワークが内部ネットワークか外部ネットワークかを判定し、ユーザＶＭ２０とユーザ補助ＶＭ３０の起動、及びそのネットワークへの接続方法を変更する場合を示したが、これは種々のデバイス（例えば、ＵＳＢメモリ）の利用についても拡張することができる。
【００８０】
図１１は、接続したネットワークが内部ネットワークの場合に、ユーザＶＭ２０からＵＳＢメモリ等を含む何らかのデバイス７００を利用できるようにした様子を示している。これに対して、図１２は、接続したネットワークが外部ネットワークの場合に、ユーザＶＭ２０からはそのデバイス７００を利用できず、ユーザ補助ＶＭ３０からそのデバイス７００を利用できるようにした様子を示している。
【００８１】
以上好ましい実施の形態と実施例をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態及び実施例に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
【産業上の利用可能性】
【００８２】
本発明は、携帯型の端末装置として、ノート型パーソナルコンピュータ、携帯電話機やＰＤＡ等の携帯情報端末一般に適用することが可能である。
【図面の簡単な説明】
【００８３】
【図１】本発明の実施の形態による仮想マシンシステムの構成を示すブロック図である。
【図２】本発明の実施の形態による仮想マシンシステムの回線接続制御処理を説明するフローチャートである。
【図３】本発明の実施の形態による仮想マシンシステムのＵＩ機能によるネットワーク接続メニューの例を示す図である。
【図４】本発明の実施の形態による仮想マシンシステムの回線接続制御テーブルの構成例を示す図である。
【図５】本発明の実施の形態による仮想マシンシステムの内部判定制御テーブルの構成例を示す図である。
【図６】本発明の実施の形態による仮想マシンシステムにおける内部ネットワーク認証コマンドについてのシステム構成例を示す図である。
【図７】本発明の実施の形態による仮想マシンシステムにおける内部ネットワークでの通信を説明する図である。
【図８】本発明の実施の形態による仮想マシンシステムにおける外部ネットワークでの通信を説明する図である。
【図９】本発明の実施の形態による仮想マシンシステムにおける通信ノード制御要求処理と仮想マシン起動要求処理を説明するフローチャートである。
【図１０】本発明の実施の形態による仮想マシンシステムにおける仮想マシン停止要求処理を説明するフローチャートである。
【図１１】本発明の他の実施の形態よる内部ネットワークでのデバイス利用制御の例を示す図である。
【図１２】本発明の他の実施の形態よる外部ネットワークでのデバイス利用制御の例を示す図である。
【符号の説明】
【００８４】
１０：サービスＶＭ
２０：ユーザＶＭ
３０：ユーザ補助ＶＭ
５０：直接通信ノード
６０：ＶＰＮ通信ノード
１００：仮想マシン制御要求部
１１０：回線接続制御処理部
１１１：回線接続制御テーブル
１１２：ＵＩ機能
１１３：内部判定制御テーブル
１１４：接続設定コマンド（群）
１１５：内部ネットワーク認証コマンド（群）
１２０：仮想マシン起動要求処理
１３０：仮想マシン停止要求処理
１４０：通信ノード制御要求処理
２００：仮想マシン制御部
３００：回線接続処理部
４００：ハイパーバイザ
５００：内部ネットワーク
５１０：内部サーバ
５２０：ＶＰＮサーバ
６００：外部ネットワーク
６１０：外部サーバ
７００：デバイス
【図１】
0004618455.tif 000002
【図２】
0004618455.tif 000003
【図３】
0004618455.tif 000004
【図４】
0004618455.tif 000005
【図５】
0004618455.tif 000006
【図６】
0004618455.tif 000007
【図７】
0004618455.tif 000008
【図８】
0004618455.tif 000009
【図９】
0004618455.tif 000010
【図１０】
0004618455.tif 000011
【図１１】
0004618455.tif 000012
【図１２】
0004618455.tif 000013