(57)【要約】【課題】各ネットワークのゲートウェイとして動作する機器同士が情報の授受を行わずにアドレス重複を回避できるようにするネットワークアドレス重複回避方法を提供する。【解決手段】アドレス重複判定手段９１は、ネットワークアドレス重複回避装置および所属する所属ホストが宛先とする可能性がある宛先ネットワークアドレスを含むルーティング情報と、仮想ネットワークの構成情報である仮想ネットワーク情報とを用いて、宛先ネットワークアドレスと、仮想ネットワーク情報に含まれている仮想ネットワークアドレスとが重複しているか否かを判定する。重複回避仮想ネットワークアドレス生成手段９２は、アドレス重複判定手段９１によって重複していると判定された場合、宛先ネットワークアドレスと重複しない仮想ネットワークアドレスである重複回避仮想ネットワークアドレスを生成する。【選択図】図２６
2011019007.tif 000002
【特許請求の範囲】
【請求項１】
１以上のネットワークを含む基本ネットワークと仮想ネットワークとの間のデータ中継を行い、前記基本ネットワークのネットワークアドレスである基本ネットワークアドレスと、前記仮想ネットワークのアドレスである仮想ネットワークアドレスとの重複を回避するネットワークアドレス重複回避装置、および、当該ネットワークアドレス重複回避装置に所属する所属ホストが宛先とする可能性がある基本ネットワークアドレスである宛先ネットワークアドレスを含むルーティング情報と、前記仮想ネットワークの構成情報である仮想ネットワーク情報とを用いて、前記ルーティング情報に含まれている宛先ネットワークアドレスと、前記仮想ネットワーク情報に含まれている仮想ネットワークアドレスとが重複しているか否かを判定し、
前記判定で重複していると判定された場合、前記宛先ネットワークアドレスと重複しない仮想ネットワークアドレスである重複回避仮想ネットワークアドレスを生成し、
前記仮想ネットワーク情報に含まれている仮想ネットワークアドレスと前記重複回避仮想ネットワークアドレスとの間のアドレス変換情報を生成し、
前記アドレス変換情報に基づいて、前記仮想ネットワーク情報から、アドレス重複を回避した仮想ネットワーク情報である重複回避仮想ネットワーク情報を生成し、
前記重複回避仮想ネットワーク情報に基づいた設定により前記基本ネットワークと前記仮想ネットワークとの間のデータ中継を行う
ことを特徴とすることを特徴とするネットワークアドレス重複回避方法。
【請求項２】
ネットワークアドレス重複回避装置に関するアドレス重複判定処理で、
ネットワークアドレス重複回避装置の宛先ネットワークアドレスと仮想ネットワークアドレスとが重複しているかを判定し、
ネットワークアドレス重複回避装置に関する重複回避仮想ネットワークアドレス生成処理で、
アドレスが重複していると判定されたネットワークアドレス重複回避装置に関して、前記ネットワークアドレス重複回避装置の宛先ネットワークアドレスと重複しないネットワークアドレス重複回避装置用の重複回避仮想ネットワークアドレスを生成し、
ネットワークアドレス重複回避装置に関するアドレス変換情報生成処理で、
アドレスが重複していると判定されたネットワークアドレス重複回避装置に関して、前記仮想ネットワークアドレスと前記重複回避仮想ネットワークアドレスとの間のアドレス変換情報を生成し、
ネットワークアドレス重複回避装置に関する重複回避仮想ネットワーク情報生成処理で、
アドレスが重複していると判定されたネットワークアドレス重複回避装置に関して、前記アドレス変換情報に基づいて仮想ネットワーク情報から重複回避仮想ネットワーク情報を生成し、
前記ネットワークアドレス重複回避装置の各所属ホストに関するアドレス重複判定処理で、
所属ホスト毎に、所属ホストの宛先ネットワークアドレスと、ネットワークアドレス重複回避装置用の仮想ネットワークアドレスとが重複しているかを判定し、
前記各所属ホストに関する重複回避仮想ネットワークアドレス生成処理で、
アドレスが重複していると判定された所属ホストに関して、前記ネットワークアドレス重複回避装置および前記所属ホストの宛先ネットワークアドレスと重複しない所属ホスト用の重複回避仮想ネットワークアドレスを生成し、
前記各所属ホストに関するアドレス変換情報生成処理で、
アドレスが重複していると判定された所属ホストに関して、前記仮想ネットワークアドレスと前記重複回避仮想ネットワークアドレスとの間のアドレス変換情報を生成し、
アドレスが重複していないと判定された所属ホストであって、前記ネットワークアドレス重複回避装置に関してはアドレスが重複していると判定されている所属ホストに関して、前記ネットワークアドレス重複回避装置用のアドレス変換情報と同じ内容のアドレス変換情報を生成し、
前記各所属ホストに関する重複回避仮想ネットワーク情報生成処理で、
アドレスが重複していると判定された所属ホストに関して、前記所属ホスト用に生成されたアドレス変換情報に基づいて仮想ネットワーク情報から重複回避仮想ネットワーク情報を生成し、
アドレスが重複していないと判定された所属ホストであって、前記ネットワークアドレス重複回避装置に関してはアドレスが重複していると判定されている所属ホストに関して、前記所属ホスト用に生成されたアドレス変換情報に基づいて仮想ネットワーク情報から重複回避仮想ネットワーク情報を生成し、
データ中継処理で、
前記各重複回避仮想ネットワーク情報に基づいた設定により基本ネットワークと仮想ネットワークとの間のデータ中継を行う
請求項１に記載のネットワークアドレス重複回避方法。
【請求項３】
ネットワークアドレス重複回避装置に関するアドレス重複判定処理で、
ネットワークアドレス重複回避装置の宛先ネットワークアドレスおよびその所属ホストの宛先ネットワークアドレスと、仮想ネットワークアドレスとが重複しているかを判定する
請求項２に記載のネットワークアドレス重複回避方法。
【請求項４】
ネットワークアドレス重複回避装置に関する重複回避仮想ネットワークアドレス生成処理で、
ネットワークアドレス重複回避装置の宛先ネットワークアドレスおよびその所属ホストの宛先ネットワークアドレスと重複しないネットワークアドレス重複回避装置用の重複回避仮想ネットワークアドレスを生成する
請求項２または請求項３に記載のネットワークアドレス重複回避方法。
【請求項５】
ネットワークアドレス重複回避装置の各所属ホストに関する重複回避仮想ネットワークアドレス生成処理で、所属ホスト用の重複回避仮想ネットワークアドレスを生成する際に、他の所属ホスト用のアドレス変換情報、他の所属ホスト用の重複回避仮想ＮＷアドレス、および、他の所属ホスト用の重複回避仮想ネットワーク情報のうちの少なくともいずれか１つを参照して、他の所属ホスト用の重複回避仮想ネットワークアドレスと同一の重複回避仮想ネットワークアドレスを生成する
請求項２から請求項４のうちのいずれか１項に記載のネットワークアドレス重複回避方法。
【請求項６】
重複回避仮想ネットワーク情報生成処理とデータ中継処理との間で、
データの送信元と宛先の組み合わせがいずれもネットワークアドレス重複回避装置の所属ホストである場合に、
データに含まれる前記送信元の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスを、前記宛先の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスに変換する設定を行う
請求項２から請求項５のうちのいずれか１項に記載のネットワークアドレス重複回避方法。
【請求項７】
データに含まれる送信元の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスを、前記データの宛先の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスに変換する設定を、データの送信元の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスと、前記データの宛先の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスとが異なる場合にのみ行う
請求項６に記載のネットワークアドレス重複回避方法。
【請求項８】
仮想ネットワーク情報に含まれる仮想ネットワーク毎に、アドレス重複判定処理、重複回避仮想ネットワークアドレス生成処理、アドレス変換情報生成処理、および、重複回避仮想ネットワーク情報生成処理を行う
請求項１から請求項５のうちのいずれか１項に記載のネットワークアドレス重複回避方法。
【請求項９】
仮想ネットワーク情報に含まれる仮想ネットワーク毎に、アドレス重複判定処理、重複回避仮想ネットワークアドレス生成処理、アドレス変換情報生成処理、アドレス変換設定処理、および、重複回避仮想ネットワーク情報生成処理を行う
請求項６または請求項７に記載のネットワークアドレス重複回避方法。
【請求項１０】
重複回避仮想ネットワークアドレス生成処理で、
重複回避仮想ネットワークアドレスとして、仮想ネットワーク情報に含まれる他の仮想ネットワークの仮想ネットワークアドレスおよび重複回避仮想ネットワークアドレスと重複しないネットワークアドレスを生成する
請求項８または請求項９に記載のネットワークアドレス重複回避方法。
【請求項１１】
重複回避仮想ネットワークアドレス生成処理で、
重複回避仮想ネットワークアドレスとして、互いに重複しないネットワークアドレスであって、当該ネットワークアドレスのアドレス空間の合計が仮想ネットワークアドレス空間の合計以上であるという条件を満たす１以上のネットワークアドレスを生成する
請求項１から請求項１０のうちのいずれか１項に記載のネットワークアドレス重複回避方法。
【請求項１２】
重複回避仮想ネットワークアドレス生成処理で、仮想ネットワークアドレスとは異なるプロトコルの重複回避仮想ネットワークアドレスを生成する
請求項１から請求項１１のうちのいずれか１項に記載のネットワークアドレス重複回避方法。
【請求項１３】
アドレス重複判定処理でアドレスが重複していると判定した場合に、重複回避仮想ネットワーク情報生成処理とデータ中継処理との間で、ネットワークアドレス重複回避装置が他のネットワークアドレス重複回避装置と構築するトンネルに関して、アドレス変換情報に基づいて、仮想ネットワークアドレスと重複回避仮想ネットワークアドレスとの相互変換を設定する
請求項１から請求項１２のうちのいずれか１項に記載のネットワークアドレス重複回避方法。
【請求項１４】
アドレス重複判定処理でアドレスが重複していると判定した場合に、重複回避仮想ネットワーク情報生成処理と、トンネルに関するアドレス相互変換設定処理との間で、アドレス変換情報に基づいて、ネットワークアドレス重複回避装置が他のネットワークアドレス重複回避装置と送受信するトンネル構築情報に含まれる仮想ネットワークアドレスと重複回避仮想ネットワークアドレスとの相互変換を設定する
請求項１３に記載のネットワークアドレス重複回避方法。
【請求項１５】
１以上のネットワークを含む基本ネットワークと仮想ネットワークとの間のデータ中継を行い、前記基本ネットワークのネットワークアドレスである基本ネットワークアドレスと、前記仮想ネットワークのアドレスである仮想ネットワークアドレスとの重複を回避するネットワークアドレス重複回避装置であって、
当該ネットワークアドレス重複回避装置、および、当該ネットワークアドレス重複回避装置に所属する所属ホストが宛先とする可能性がある基本ネットワークアドレスである宛先ネットワークアドレスを含むルーティング情報と、前記仮想ネットワークの構成情報である仮想ネットワーク情報とを用いて、前記ルーティング情報に含まれている宛先ネットワークアドレスと、前記仮想ネットワーク情報に含まれている仮想ネットワークアドレスとが重複しているか否かを判定するアドレス重複判定手段と、
前記アドレス重複判定手段によって重複していると判定された場合、前記宛先ネットワークアドレスと重複しない仮想ネットワークアドレスである重複回避仮想ネットワークアドレスを生成する重複回避仮想ネットワークアドレス生成手段と、
前記仮想ネットワーク情報に含まれている仮想ネットワークアドレスと前記重複回避仮想ネットワークアドレスとの間のアドレス変換情報を生成するアドレス変換情報生成手段と、
前記アドレス変換情報に基づいて、前記仮想ネットワーク情報から、アドレス重複を回避した仮想ネットワーク情報である重複回避仮想ネットワーク情報を生成する重複回避仮想ネットワーク情報生成手段と、
前記重複回避仮想ネットワーク情報に基づいた設定により前記基本ネットワークと前記仮想ネットワークとの間のデータ中継を行うデータ中継手段とを備える
ことを特徴とするネットワークアドレス重複回避装置。
【請求項１６】
アドレス重複判定手段が、ネットワークアドレス重複回避装置に関して、ネットワークアドレス重複回避装置の宛先ネットワークアドレスと仮想ネットワークアドレスとが重複しているかを判定し、
重複回避仮想ネットワークアドレス生成手段が、アドレスが重複していると判定されたネットワークアドレス重複回避装置に関して、前記ネットワークアドレス重複回避装置の宛先ネットワークアドレスと重複しないネットワークアドレス重複回避装置用の重複回避仮想ネットワークアドレスを生成し、
アドレス変換情報生成手段が、アドレスが重複していると判定されたネットワークアドレス重複回避装置に関して、前記仮想ネットワークアドレスと前記重複回避仮想ネットワークアドレスとの間のアドレス変換情報を生成し、
重複回避仮想ネットワーク情報生成手段が、アドレスが重複していると判定されたネットワークアドレス重複回避装置に関して、前記アドレス変換情報に基づいて仮想ネットワーク情報から重複回避仮想ネットワーク情報を生成し、
アドレス重複判定手段が、ネットワークアドレス重複回避装置の各所属ホストに関して、所属ホスト毎に、所属ホストの宛先ネットワークアドレスと、ネットワークアドレス重複回避装置用の仮想ネットワークアドレスとが重複しているかを判定し、
重複回避仮想ネットワークアドレス生成手段が、アドレスが重複していると判定された所属ホストに関して、前記ネットワークアドレス重複回避装置および前記所属ホストの宛先ネットワークアドレスと重複しない所属ホスト用の重複回避仮想ネットワークアドレスを生成し、
アドレス変換情報生成手段が、アドレスが重複していると判定された所属ホストに関して、前記仮想ネットワークアドレスと前記重複回避仮想ネットワークアドレスとの間のアドレス変換情報を生成し、
重複回避仮想ネットワーク情報生成手段が、アドレスが重複していると判定された所属ホストに関して、前記所属ホスト用に生成されたアドレス変換情報に基づいて仮想ネットワーク情報から重複回避仮想ネットワーク情報を生成し、アドレスが重複していないと判定された所属ホストであって、前記ネットワークアドレス重複回避装置に関してはアドレスが重複していると判定されている所属ホストに関して、前記所属ホスト用に生成されたアドレス変換情報に基づいて仮想ネットワーク情報から重複回避仮想ネットワーク情報を生成し、
データ中継手段が、前記各重複回避仮想ネットワーク情報に基づいた設定により基本ネットワークと仮想ネットワークとの間のデータ中継を行う
請求項１５に記載のネットワークアドレス重複回避装置。
【請求項１７】
アドレス重複判定手段は、ネットワークアドレス重複回避装置に関して、ネットワークアドレス重複回避装置の宛先ネットワークアドレスおよびその所属ホストの宛先ネットワークアドレスと、仮想ネットワークアドレスとが重複しているかを判定する
請求項１６に記載のネットワークアドレス重複回避装置。
【請求項１８】
重複回避仮想ネットワークアドレス生成手段は、ネットワークアドレス重複回避装置に関して、ネットワークアドレス重複回避装置の宛先ネットワークアドレスおよびその所属ホストの宛先ネットワークアドレスと重複しないネットワークアドレス重複回避装置用の重複回避仮想ネットワークアドレスを生成する
請求項１６または請求項１７に記載のネットワークアドレス重複回避装置。
【請求項１９】
重複回避仮想ネットワークアドレス生成手段は、所属ホスト用の重複回避仮想ネットワークアドレスを生成する際に、他の所属ホスト用のアドレス変換情報、他の所属ホスト用の重複回避仮想ＮＷアドレス、および、他の所属ホスト用の重複回避仮想ネットワーク情報のうちの少なくともいずれか１つを参照して、他の所属ホスト用の重複回避仮想ネットワークアドレスと同一の重複回避仮想ネットワークアドレスを生成する
請求項１６から請求項１８のうちのいずれか１項に記載のネットワークアドレス重複回避装置。
【請求項２０】
データの送信元と宛先の組み合わせがいずれもネットワークアドレス重複回避装置の所属ホストである場合に、
データに含まれる前記送信元の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスを、前記宛先の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスに変換する設定を行う変換設定手段を備える
請求項１６から請求項１９のうちのいずれか１項に記載のネットワークアドレス重複回避装置。
【請求項２１】
変換設定手段は、データに含まれる送信元の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスを、前記データの宛先の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスに変換する設定を、データの送信元の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスと、前記データの宛先の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスとが異なる場合にのみ行う
請求項２０に記載のネットワークアドレス重複回避装置。
【請求項２２】
アドレス重複判定手段は、仮想ネットワーク情報に含まれる仮想ネットワーク毎に判定を行い、
重複回避仮想ネットワークアドレス生成手段は、仮想ネットワーク情報に含まれる仮想ネットワーク毎に重複回避仮想ネットワークアドレスを生成し、
アドレス変換情報生成手段は、仮想ネットワーク情報に含まれる仮想ネットワーク毎にアドレス変換情報を生成し、
重複回避仮想ネットワーク情報生成手段は、仮想ネットワーク情報に含まれる仮想ネットワーク毎に重複回避仮想ネットワーク情報を生成する
請求項１５から請求項１９のうちのいずれか１項に記載のネットワークアドレス重複回避装置。
【請求項２３】
アドレス重複判定手段は、仮想ネットワーク情報に含まれる仮想ネットワーク毎に判定を行い、
重複回避仮想ネットワークアドレス生成手段は、仮想ネットワーク情報に含まれる仮想ネットワーク毎に重複回避仮想ネットワークアドレスを生成し、
アドレス変換情報生成手段は、仮想ネットワーク情報に含まれる仮想ネットワーク毎にアドレス変換情報を生成し、
変換設定手段は、仮想ネットワーク情報に含まれる仮想ネットワーク毎にアドレスを変換する設定を行い、
重複回避仮想ネットワーク情報生成手段は、仮想ネットワーク情報に含まれる仮想ネットワーク毎に重複回避仮想ネットワーク情報を生成する
請求項２０または請求項２１に記載のネットワークアドレス重複回避装置。
【請求項２４】
重複回避仮想ネットワークアドレス生成手段は、重複回避仮想ネットワークアドレスとして、仮想ネットワーク情報に含まれる他の仮想ネットワークの仮想ネットワークアドレスおよび重複回避仮想ネットワークアドレスと重複しないネットワークアドレスを生成する
請求項２２または請求項２３に記載のネットワークアドレス重複回避装置。
【請求項２５】
重複回避仮想ネットワークアドレス生成手段は、重複回避仮想ネットワークアドレスとして、互いに重複しないネットワークアドレスであって、当該ネットワークアドレスのアドレス空間の合計が仮想ネットワークアドレス空間の合計以上であるという条件を満たす１以上のネットワークアドレスを生成する
請求項１５から請求項２４のうちのいずれか１項に記載のネットワークアドレス重複回避装置。
【請求項２６】
重複回避仮想ネットワークアドレス生成手段は、仮想ネットワークアドレスとは異なるプロトコルの重複回避仮想ネットワークアドレスを生成する
請求項１５から請求項２５のうちのいずれか１項に記載のネットワークアドレス重複回避装置。
【請求項２７】
アドレス重複判定手段によってアドレスが判定された場合に、ネットワークアドレス重複回避装置が他のネットワークアドレス重複回避装置と構築するトンネルに関して、アドレス変換情報に基づいて、仮想ネットワークアドレスと重複回避仮想ネットワークアドレスとの相互変換を設定するアドレス相互変換設定手段を備える
請求項１５から請求項２６のうちのいずれか１項に記載のネットワークアドレス重複回避装置。
【請求項２８】
アドレス重複判定手段によってアドレスが判定された場合に、アドレス変換情報に基づいて、ネットワークアドレス重複回避装置が他のネットワークアドレス重複回避装置と送受信するトンネル構築情報に含まれる仮想ネットワークアドレスと重複回避仮想ネットワークアドレスとの相互変換を設定するトンネル構築情報内アドレス相互変換設定手段を備える
請求項２７に記載のネットワークアドレス重複回避装置。
【請求項２９】
１以上のネットワークを含む基本ネットワークと仮想ネットワークとの間のデータ中継を行い、前記基本ネットワークのネットワークアドレスである基本ネットワークアドレスと、前記仮想ネットワークのアドレスである仮想ネットワークアドレスとの重複を回避するネットワークアドレス重複回避装置と、
前記仮想ネットワークの構成情報である仮想ネットワーク情報を提供する仮想ネットワーク管理装置とを備え、
ネットワークアドレス重複回避装置は、
当該ネットワークアドレス重複回避装置、および、当該ネットワークアドレス重複回避装置に所属する所属ホストが宛先とする可能性がある基本ネットワークアドレスである宛先ネットワークアドレスを含むルーティング情報と、前記仮想ネットワーク情報とを用いて、前記ルーティング情報に含まれている宛先ネットワークアドレスと、前記仮想ネットワーク情報に含まれている仮想ネットワークアドレスとが重複しているか否かを判定するアドレス重複判定手段と、
前記アドレス重複判定手段によって重複していると判定された場合、前記宛先ネットワークアドレスと重複しない仮想ネットワークアドレスである重複回避仮想ネットワークアドレスを生成する重複回避仮想ネットワークアドレス生成手段と、
前記仮想ネットワーク情報に含まれている仮想ネットワークアドレスと前記重複回避仮想ネットワークアドレスとの間のアドレス変換情報を生成するアドレス変換情報生成手段と、
前記アドレス変換情報に基づいて、前記仮想ネットワーク情報から、アドレス重複を回避した仮想ネットワーク情報である重複回避仮想ネットワーク情報を生成する重複回避仮想ネットワーク情報生成手段と、
前記重複回避仮想ネットワーク情報に基づいた設定により前記基本ネットワークと前記仮想ネットワークとの間のデータ中継を行うデータ中継手段とを有する
ことを特徴とするネットワークアドレス重複回避システム。
【請求項３０】
１以上のネットワークを含む基本ネットワークと仮想ネットワークとの間のデータ中継を行い、前記基本ネットワークのネットワークアドレスである基本ネットワークアドレスと、前記仮想ネットワークのアドレスである仮想ネットワークアドレスとの重複を回避するコンピュータに搭載されるネットワークアドレス重複回避プログラムであって、
前記コンピュータに、
当該コンピュータ、および、当該コンピュータに所属する所属ホストが宛先とする可能性がある基本ネットワークアドレスである宛先ネットワークアドレスを含むルーティング情報と、前記仮想ネットワークの構成情報である仮想ネットワーク情報とを用いて、前記ルーティング情報に含まれている宛先ネットワークアドレスと、前記仮想ネットワーク情報に含まれている仮想ネットワークアドレスとが重複しているか否かを判定するアドレス重複判定処理、
前記アドレス重複判定処理で重複していると判定された場合、前記宛先ネットワークアドレスと重複しない仮想ネットワークアドレスである重複回避仮想ネットワークアドレスを生成する重複回避仮想ネットワークアドレス生成処理、
前記仮想ネットワーク情報に含まれている仮想ネットワークアドレスと前記重複回避仮想ネットワークアドレスとの間のアドレス変換情報を生成するアドレス変換情報生成処理、
前記アドレス変換情報に基づいて、前記仮想ネットワーク情報から、アドレス重複を回避した仮想ネットワーク情報である重複回避仮想ネットワーク情報を生成する重複回避仮想ネットワーク情報生成処理、および、
前記重複回避仮想ネットワーク情報に基づいた設定により前記基本ネットワークと前記仮想ネットワークとの間のデータ中継を行うデータ中継処理
を実行させるためのネットワークアドレス重複回避プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークアドレス重複回避方法、ネットワークアドレス重複回避装置、ネットワークアドレス重複回避システムおよびネットワークアドレス重複回避プログラムに関し、特に、１以上のネットワークから構築される基本ネットワークと基本ネットワーク上に仮想的に構築される仮想ネットワークのネットワークアドレスの重複を回避するネットワークアドレス重複回避方法、ネットワークアドレス重複回避装置、ネットワークアドレス重複回避システムおよびネットワークアドレス重複回避プログラムに関する。
【背景技術】
【０００２】
１つ以上のネットワークから構築される基本ネットワーク（以下、基本ＮＷと記す。）上に、Ｌ２ＴＰ（Layer 2 Tunneling Protocol）やＩＰｓｅｃ（Security Architecture for Internet Protocol ）、ＳＳＬ（Secure Socket Layer ）などのＶＰＮ（Virtual Private Network ）トンネル技術やＧＲＥ（Generic Routing Encapsulation ）やＩＰＩＰ（Internet Protocol - Internet Protocol ）などのトンネル技術を用いて仮想的なネットワーク（以下、仮想ＮＷと記す。）を実現する方法がある。このような方法として、仮想ＮＷの管理サーバや管理者、使用者などが、仮想ＮＷに参加するゲートウェイ（以下、仮想ＮＷゲートウェイと記す。）に、基本ＮＷのネットワークアドレス（以下、基本ＮＷアドレスと記す。）、ホストアドレス（以下、基本ホストアドレスと記す。）とは別に仮想ＮＷのネットワークアドレス（以下、仮想ＮＷアドレスと記す。）、ホストアドレス（以下、仮想ホストアドレスと記す。）を付与する方法がある。この仮想ＮＷゲートウェイは、仮想ＮＷに参加する基本ＮＷ上のホストである仮想ＮＷ参加ホストの代理として仮想ＮＷに参加するゲートウェイである。そして、この方法では、その付与された仮想ホストアドレスを基本ホストアドレスでカプセル化／デカプセル化し、基本ＮＷアドレスを用いてルーティングすることにより仮想ＮＷ上での通信を行う。
【０００３】
ここで、基本ＮＷアドレスと仮想ＮＷアドレスの重複を避ける方法として、仮想ＮＷの管理サーバや管理者、使用者などが仮想ＮＷアドレスや仮想ホストアドレスを基本ＮＷアドレスや基本ホストアドレスと重複しないように事前に設定しておく方法がある。以下、この方法を方法１と記す。
【０００４】
また、アドレスの重複が生じた場合には、アドレスの重複に関係する仮想ＮＷ参加ホストや仮想ＮＷゲートウェイの基本ＮＷにおける基本ＮＷアドレス、基本ホストアドレスを再設定したり、または既に仮想ＮＷ参加ホストや仮想ＮＷゲートウェイに付与されている仮想ＮＷアドレス、仮想ホストアドレスを再設定したりする方法がある。以下、この方法を方法２と記す。
【０００５】
また、その他にも、仮想ＮＷを実現する際のアドレス重複の解決方法としては、ＶＰＮでお互いのネットワーク同士を接続する際にお互いのゲートウェイがアドレス情報やルーティング情報を送受信し合い、アドレス重複時にはアドレス重複を回避するアドレスを生成し、ＶＰＮ内でその生成したアドレスと元のアドレスとの変換設定を行う技術が開示されている（例えば、特許文献１、特許文献２参照）。以下、この方法を方法３と記す。
【０００６】
また、特許文献３には、プライベートネットワーク（以下、ＰＮＷと記す。）間でデータをカプセル化して通信する際、ＰＮＷ１のＮＷアドレスとＰＮＷ２のＮＷアドレスが重複していても通信可能とする方法が記載されている。この方法では、ＰＮＷは、ゲートウェイの他に、変換ゲートウェイを有する。ＰＮＷ１のゲートウェイは、ＰＮＷ１，２のＮＷアドレスが重複しているか否かを判断し、重複していなければＰＮＷ２のゲートウェイと接続し、重複していればＰＮＷ２の変換ゲートウェイと接続する。また、ＰＮＷ２の変換ゲートウェイは、ＰＮＷ間でＮＷアドレスの重複がある場合に用いるために、ＰＮＷ２の仮想アドレスと実ＮＷアドレスとの変換テーブルを事前に用意し、その変換テーブルを用いてアドレスを変換する。ＰＮＷ１のゲートウェイは、ＰＮＷ１とＰＮＷ２のＮＷアドレスのテーブルを事前に保持し、そのテーブルによりアドレス重複の判断を行う。そして、ＰＮＷ２のゲートウェイや変換ゲートウェイは、他のＰＮＷからのデータをＰＮＷ２のノードに転送する際に、データの送信元アドレスをＰＮＷ２のゲートウェイのアドレスやＰＮＷ２の変換ゲートウェイのアドレスに変換する。また、特許文献３には、以下の方法も記載されている。ＮＷアドレスが重複しない場合はＰＮＷ１のゲートウェイがＰＮＷ２のゲートウェイと接続し、重複する場合はＰＮＷ１の変換ゲートウェイがＰＮＷ２のゲートウェイと接続する。ここで、ＰＮＷ１の変換ゲートウェイは、ＰＮＷ間でＮＷアドレスの重複がある場合用にＰＷＮ２の仮想ＮＷアドレスと実ＮＷアドレスの変換テーブルを事前に用意しており、その変換テーブルを基にアドレスの変換を行う。また、ＰＮＷ２のゲートウェイは他のＰＮＷからのデータをＰＮＷ２のノードに転送する際に、送信元アドレスをＰＮＷ２のゲートウェイのアドレスに変換する。ＰＮＷ１のノードがＰＮＷ２のノードにデータを送信する際には、ＰＮＷ１のノードはＰＮＷ１とＰＮＷ２のＮＷアドレスに重複があるかないかを判断し、重複していない場合はＰＮＷ１のゲートウェイにデータを転送し、重複している場合はＰＮＷ１の変換ゲートウェイにデータを転送する。以下、特許文献３に記載された方法を方法４と記す。
【０００７】
また、特許文献４には、各拠点間でＶＰＮを構成し、各拠点の実ＮＷアドレスが重複する場合に、マスタＶＰＮルータが各ＶＰＮルータから各ＶＰＮルータの拠点ネットワークの実ＮＷアドレスを収集し、重複しない仮想ＮＷアドレスを各ＶＰＮルータに割り当て、各ＶＰＮルータが各拠点の実ＮＷアドレスと仮想ＮＷアドレスの変換を行うシステムが記載されている。以下、この方法を方法５と記す。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００４−２２９２９９号公報
【特許文献２】特開２００７−２０２０３６号公報
【特許文献３】特開２００３−１５２７６７号公報
【特許文献４】特開２００８−３０１０２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
仮想ＮＷを実現する際に、基本ＮＷアドレスと仮想ＮＷアドレスが重複していると、仮想ＮＷ参加ホストや仮想ＮＷゲートウェイはルーティングを意図した通りに行えないため、基本ＮＷや仮想ＮＷ上の通信相手に意図した通りにデータを送信できない問題があった。なお、データとは、例えばＯＳＩ（Open Systems Interconnection）参照モデルのデータリンク層のフレームやネットワーク層のデータグラムのことであり、以降、データとは、これを指すものとする。
【００１０】
このようなアドレス重複を解決する方法として、前述の方法１〜３などがある。しかし、方法１では、アドレス重複が生じないように事前設定するためには、綿密な調査が必要であり、煩雑な調査を要してしまう。
【００１１】
また、方法２では、アドレスを再設定するノードとそれに関係するノード数の増加に伴い、再設定作業が非常に困難になる。
【００１２】
また、方法３では、ＶＰＮでお互いのネットワーク同士を接続する際に、ネットワークの内部情報を外部のゲートウェイに公開することになり、情報漏洩の可能性が存在する。例えば、特許文献１に記載された方法では、ＶＰＮでお互いのネットワーク同士を接続する際に、ゲートウェイが互いにアドレス情報を送受信し合うため、情報漏洩の可能性がある。特許文献２に記載された方法でも、ゲートウェイが互いにルーティング情報を送受信し合うため、情報漏洩の可能性がある。また、多点間での接続などのように接続関係が複雑になるにつれ、各ゲートウェイの保持するネットワークへのメトリックがわからなくなるために、ルーティングの混乱が起こる可能性が存在する。
【００１３】
方法４では、ＰＮＷ１が１つのＰＮＷだけでなく複数のＰＮＷ（例えば、ＰＮＷ２，３）と接続するときに、ルーティングできない場合がある。例えば、ＰＮＷ１、ＰＮＷ２、ＰＮＷ３でＮＷアドレスは重複していないが、ＰＮＷ２、ＰＮＷ３でＮＷアドレスが重複している場合や、ＰＮＷ１、ＰＮＷ２、ＰＮＷ３でＮＷアドレスが重複していて、ＰＮＷ２、ＰＮＷ３で仮想ＮＷアドレスが重複している場合、ルーティングできない。また、ＰＮＷ１，２のＮＷアドレスが重複し、ＰＮＷ１，３のＮＷアドレスが重複していないときに、ＰＮＷ２の仮想ＮＷアドレスとＰＮＷ３のＮＷアドレスが重複しているとルーティングできない。
【００１４】
方法５では、ＶＰＮルータが情報を送受信するので、方法３で述べた場合と同様に、情報漏洩の可能性がある。
【００１５】
本発明は、オーバーレイネットワーク用のアドレスとして割り当てられた仮想ＮＷアドレスと、ネットワーク内の実アドレスとが重複する場合であっても、各ネットワークのゲートウェイとして動作する機器同士が情報の授受を行わずにアドレス重複を回避できるようにするネットワークアドレス重複回避方法、ネットワークアドレス重複回避装置、ネットワークアドレス重複回避システムおよびネットワークアドレス重複回避プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１６】
本発明によるネットワークアドレス重複回避方法は、１以上のネットワークを含む基本ネットワークと仮想ネットワークとの間のデータ中継を行い、前記基本ネットワークのネットワークアドレスである基本ネットワークアドレスと、前記仮想ネットワークのアドレスである仮想ネットワークアドレスとの重複を回避するネットワークアドレス重複回避装置、および、当該ネットワークアドレス重複回避装置に所属する所属ホストが宛先とする可能性がある基本ネットワークアドレスである宛先ネットワークアドレスを含むルーティング情報と、前記仮想ネットワークの構成情報である仮想ネットワーク情報とを用いて、前記ルーティング情報に含まれている宛先ネットワークアドレスと、前記仮想ネットワーク情報に含まれている仮想ネットワークアドレスとが重複しているか否かを判定し、前記判定で重複していると判定された場合、前記宛先ネットワークアドレスと重複しない仮想ネットワークアドレスである重複回避仮想ネットワークアドレスを生成し、前記仮想ネットワーク情報に含まれている仮想ネットワークアドレスと前記重複回避仮想ネットワークアドレスとの間のアドレス変換情報を生成し、前記アドレス変換情報に基づいて、前記仮想ネットワーク情報から、アドレス重複を回避した仮想ネットワーク情報である重複回避仮想ネットワーク情報を生成し、前記重複回避仮想ネットワーク情報に基づいた設定により前記基本ネットワークと前記仮想ネットワークとの間のデータ中継を行うことを特徴とすることを特徴とする。
【００１７】
また、本発明によるネットワークアドレス重複回避装置は、１以上のネットワークを含む基本ネットワークと仮想ネットワークとの間のデータ中継を行い、前記基本ネットワークのネットワークアドレスである基本ネットワークアドレスと、前記仮想ネットワークのアドレスである仮想ネットワークアドレスとの重複を回避するネットワークアドレス重複回避装置であって、当該ネットワークアドレス重複回避装置、および、当該ネットワークアドレス重複回避装置に所属する所属ホストが宛先とする可能性がある基本ネットワークアドレスである宛先ネットワークアドレスを含むルーティング情報と、前記仮想ネットワークの構成情報である仮想ネットワーク情報とを用いて、前記ルーティング情報に含まれている宛先ネットワークアドレスと、前記仮想ネットワーク情報に含まれている仮想ネットワークアドレスとが重複しているか否かを判定するアドレス重複判定手段と、前記アドレス重複判定手段によって重複していると判定された場合、前記宛先ネットワークアドレスと重複しない仮想ネットワークアドレスである重複回避仮想ネットワークアドレスを生成する重複回避仮想ネットワークアドレス生成手段と、前記仮想ネットワーク情報に含まれている仮想ネットワークアドレスと前記重複回避仮想ネットワークアドレスとの間のアドレス変換情報を生成するアドレス変換情報生成手段と、前記アドレス変換情報に基づいて、前記仮想ネットワーク情報から、アドレス重複を回避した仮想ネットワーク情報である重複回避仮想ネットワーク情報を生成する重複回避仮想ネットワーク情報生成手段と、前記重複回避仮想ネットワーク情報に基づいた設定により前記基本ネットワークと前記仮想ネットワークとの間のデータ中継を行うデータ中継手段とを備えることを特徴とする。
【００１８】
また、本発明によるネットワークアドレス重複回避システムは、１以上のネットワークを含む基本ネットワークと仮想ネットワークとの間のデータ中継を行い、前記基本ネットワークのネットワークアドレスである基本ネットワークアドレスと、前記仮想ネットワークのアドレスである仮想ネットワークアドレスとの重複を回避するネットワークアドレス重複回避装置と、前記仮想ネットワークの構成情報である仮想ネットワーク情報を提供する仮想ネットワーク管理装置とを備え、ネットワークアドレス重複回避装置は、当該ネットワークアドレス重複回避装置、および、当該ネットワークアドレス重複回避装置に所属する所属ホストが宛先とする可能性がある基本ネットワークアドレスである宛先ネットワークアドレスを含むルーティング情報と、前記仮想ネットワーク情報とを用いて、前記ルーティング情報に含まれている宛先ネットワークアドレスと、前記仮想ネットワーク情報に含まれている仮想ネットワークアドレスとが重複しているか否かを判定するアドレス重複判定手段と、前記アドレス重複判定手段によって重複していると判定された場合、前記宛先ネットワークアドレスと重複しない仮想ネットワークアドレスである重複回避仮想ネットワークアドレスを生成する重複回避仮想ネットワークアドレス生成手段と、前記仮想ネットワーク情報に含まれている仮想ネットワークアドレスと前記重複回避仮想ネットワークアドレスとの間のアドレス変換情報を生成するアドレス変換情報生成手段と、前記アドレス変換情報に基づいて、前記仮想ネットワーク情報から、アドレス重複を回避した仮想ネットワーク情報である重複回避仮想ネットワーク情報を生成する重複回避仮想ネットワーク情報生成手段と、前記重複回避仮想ネットワーク情報に基づいた設定により前記基本ネットワークと前記仮想ネットワークとの間のデータ中継を行うデータ中継手段とを有することを特徴とする。
【００１９】
また、本発明によるネットワークアドレス重複回避プログラムは、１以上のネットワークを含む基本ネットワークと仮想ネットワークとの間のデータ中継を行い、前記基本ネットワークのネットワークアドレスである基本ネットワークアドレスと、前記仮想ネットワークのアドレスである仮想ネットワークアドレスとの重複を回避するコンピュータに搭載されるネットワークアドレス重複回避プログラムであって、前記コンピュータに、当該コンピュータ、および、当該コンピュータに所属する所属ホストが宛先とする可能性がある基本ネットワークアドレスである宛先ネットワークアドレスを含むルーティング情報と、前記仮想ネットワークの構成情報である仮想ネットワーク情報とを用いて、前記ルーティング情報に含まれている宛先ネットワークアドレスと、前記仮想ネットワーク情報に含まれている仮想ネットワークアドレスとが重複しているか否かを判定するアドレス重複判定処理、前記アドレス重複判定処理で重複していると判定された場合、前記宛先ネットワークアドレスと重複しない仮想ネットワークアドレスである重複回避仮想ネットワークアドレスを生成する重複回避仮想ネットワークアドレス生成処理、前記仮想ネットワーク情報に含まれている仮想ネットワークアドレスと前記重複回避仮想ネットワークアドレスとの間のアドレス変換情報を生成するアドレス変換情報生成処理、前記アドレス変換情報に基づいて、前記仮想ネットワーク情報から、アドレス重複を回避した仮想ネットワーク情報である重複回避仮想ネットワーク情報を生成する重複回避仮想ネットワーク情報生成処理、および、前記重複回避仮想ネットワーク情報に基づいた設定により前記基本ネットワークと前記仮想ネットワークとの間のデータ中継を行うデータ中継処理を実行させることを特徴とする。
【発明の効果】
【００２０】
本発明によれば、仮想ＮＷアドレスと実アドレスとが重複する場合であっても、各ネットワークのゲートウェイとして動作する機器同士が情報の授受を行わずにアドレス重複を回避できる。
【図面の簡単な説明】
【００２１】
【図１】本発明の第１の実施形態のネットワークアドレス重複回避システムの例を示す説明図である。
【図２】仮想ＮＷアドレス情報テーブルの一例を示す説明図である。
【図３】仮想ホスト情報テーブルの一例を示す説明図である。
【図４】仮想ＮＷゲートウェイ情報テーブルの一例を示す説明図である。
【図５】所属関係情報テーブルの一例を示す説明図である。
【図６】仮想ＮＷゲートウェイ処理部の構成例を示すブロック図である。
【図７】所属ホスト情報の一例を示す説明図である。
【図８】ルーティング情報の一例を示す説明図である。
【図９】アドレス変換情報の一例を示す説明図である。
【図１０】重複回避仮想ＮＷ情報を生成する処理の例を示すフローチャートである。
【図１１】仮想ＮＷを構築する動作の例を示すフローチャートである。
【図１２】データ転送時の動作の例を示すフローチャートである。
【図１３】第１の実施形態の主な変形例を示す説明図である。
【図１４】第１の実施形態の主な変形例を示す説明図である。
【図１５】第１の実施形態の主な変形例を示す説明図である。
【図１６】新規にホストが追加される際の状況の例を示す説明図である。
【図１７】第２の実施形態における仮想ＮＷゲートウェイ処理部の構成例を示すブロック図である。
【図１８】第２の実施形態における重複回避仮想ＮＷ情報生成の例を示すフローチャートである。
【図１９】第２の実施形態における仮想ＮＷを構築する動作の例を示すフローチャートである。
【図２０】第２の実施形態におけるデータ転送時の動作の例を示すフローチャートである。
【図２１】第３の実施形態における仮想ＮＷアドレス情報テーブルの一例を示す説明図である。
【図２２】第３の実施形態における仮想ホスト情報テーブルの一例を示す説明図である。
【図２３】第５の実施形態における仮想ＮＷゲートウェイ処理部の構成例を示すブロック図である。
【図２４】仮想インタフェース処理部の処理経過の例を示すフローチャートである。
【図２５】第６の実施形態における仮想ＮＷゲートウェイ処理部の構成例を示すブロック図である。
【図２６】本発明の最小構成を示すブロック図である。
【発明を実施するための形態】
【００２２】
以下、本発明の実施形態を、図面を参照して説明する。
【００２３】
実施形態１．
図１は、本発明の第１の実施形態のネットワークアドレス重複回避システムの例を示す説明図である。本発明のネットワークアドレス重複回避システムは、仮想ＮＷを構築する場合のネットワークアドレスの重複回避に適用される。以下、本発明のネットワークアドレス重複回避システムを、仮想ＮＷシステムと記す。仮想ＮＷシステムは、仮想ＮＷ参加ホスト２０００と、仮想ＮＷゲートウェイ処理部３０００と、仮想ＮＷ管理部（仮想ネットワーク管理装置）４０００とを含む。仮想ＮＷ参加ホスト２０００、仮想ＮＷゲートウェイ処理部３０００、および仮想ＮＷ管理部４０００は、基本ＮＷ１０００に配置され、また、基本ＮＷにおいて仮想ＮＷ５０００が構築される。なお、以下の説明では、仮想ＮＷ参加ホスト２０００をホスト２０００と記す。
【００２４】
基本ＮＷ１０００は、１つ以上のネットワークを含む。図１に示す例では、基本ＮＷ１０００が、ネットワークＡ，Ｂ，Ｃ，Ｄ（以下、ネットワーク１０００Ａ〜１０００Ｄと記す。）を含む場合を例示している。また、図１に示す例では、ネットワーク１０００Ａ〜１０００Ｄのネットワークアドレスは、それぞれ10.0.0.0/24 、192.168.0.0/24、192.168.0.0/24、1.0.0.0/16であるものとする。また、ネットワーク１０００Ｄと各ネットワーク間にはＮＡＴ（Network Address Translation ）が存在するものとする。なお、基本ＮＷ１０００を構成する各ネットワークの種類は特に限定されず、例えば、インターネット、イントラネット、パケット交換網、回線交換網、専用線、仮想ＮＷなどであってもよい。
【００２５】
ホスト２０００は基本ＮＷ１０００上に存在しており、１つの仮想ＮＷゲートウェイ処理部３０００に所属する。ホスト２０００が仮想ＮＷゲートウェイ処理部３０００に所属するとは、その仮想ＮＷゲートウェイ処理部３０００が、そのホスト２０００の代理として仮想ＮＷ５０００に参加することを意味する。換言すれば、ホスト２０００が仮想ＮＷゲートウェイ処理部３０００に所属するとは、ホスト２０００が仮想ＮＷゲートウェイ処理部３０００を経由して仮想ＮＷ５０００に参加することを意味する。この所属関係は、仮想ＮＷ管理部４０００の仮想ＮＷ情報４０１１の所属関係情報テーブルや、仮想ＮＷゲートウェイ処理部３０００の所属ホスト情報３０１１や、仮想ＮＷ情報３０２１に記述される。仮想ＮＷ情報４０１１の所属関係情報テーブル、仮想ＮＷゲートウェイ処理部３０００の所属ホスト情報３０１１、仮想ＮＷ情報３０２１については、それぞれ後述する。
【００２６】
ホスト２０００と仮想ＮＷゲートウェイ処理部３０００は同一のネットワーク上に存在してもよいし、異なるネットワーク上に存在してもよい。図１に示す例では、ホストＡ，Ｂ，Ｃ，Ｄ（以下、ホスト２０００Ａ〜２０００Ｄと記す。）が存在している。図１に示す例では、ホスト２０００Ａ、ホスト２０００Ｂはネットワーク１０００Ａ上に存在し、ネットワーク１０００Ａ上の仮想ＮＷゲートウェイ処理部Ａに所属している。同様に、ホスト２０００Ｃはネットワーク１０００Ｂ上に存在し、ネットワーク１０００Ｂ上の仮想ＮＷゲートウェイ処理部Ｂに所属している。ホスト２０００Ｄはネットワーク１０００Ｃ上に存在し、ネットワーク１０００Ｃ上の仮想ＮＷゲートウェイ処理部Ｃに所属している。また、ホスト２０００Ａ、ホスト２０００Ｂ、ホスト２０００Ｃ、ホスト２０００Ｄの基本ホストアドレスはそれぞれ10.0.0.1、10.0.0.2、192.168.0.1 、192.168.0.1 であるとする。
【００２７】
仮想ＮＷゲートウェイ処理部３０００は、本発明によるネットワークアドレス重複回避装置である。仮想ＮＷゲートウェイ処理部３０００は、基本ＮＷ１０００上に存在し、その仮想ＮＷゲートウェイ処理部３０００に所属する０個以上のホスト２０００（以下、所属ホスト２０００と記す。）への到達性と、仮想ＮＷ管理部４０００への到達性を持つ。仮想ＮＷゲートウェイ処理部３０００は、仮想ＮＷ管理部４０００から受信した仮想ＮＷ５０００に関する仮想ＮＷ情報４０１１に基づき、仮想ＮＷゲートウェイ処理部３０００上や、基本ＮＷ１０００上に仮想的に仮想ＮＷ５０００を構築する。このとき、仮想ＮＷゲートウェイ処理部３０００は、他の１つ以上の仮想ＮＷゲートウェイ処理部３０００と連携する場合はトンネル技術（以降、ＶＰＮトンネル技術も含む。）を用いて基本ＮＷ１０００上に仮想的に仮想ＮＷ５０００を構築する。また、仮想ＮＷゲートウェイ処理部３０００は、ホスト２０００と仮想ＮＷ５０００の中継処理を行う。なお、仮想ＮＷゲートウェイ処理部３０００は、ルータ上やサーバ上に設けられていてもよい。図１では、仮想ＮＷゲートウェイ処理部Ａ，Ｂ，Ｃ（以下、仮想ＮＷゲートウェイ処理部３０００Ａ〜３０００Ｃと記す。）が存在している場合を例示している。仮想ＮＷゲートウェイ処理部３０００Ａはネットワーク１０００Ａ上に存在し、ホスト２０００Ａ、ホスト２０００Ｂが仮想ＮＷゲートウェイ処理部３０００Ａに所属している。同様に、仮想ＮＷゲートウェイ処理部３０００Ｂはネットワーク１０００Ｂ上に存在し、ホスト２０００Ｃが仮想ＮＷゲートウェイ処理部３０００Ｂに所属している。また、同様に、仮想ＮＷゲートウェイ処理部３０００Ｃはネットワーク１０００Ｃ上に存在し、ホスト２０００Ｄが仮想ＮＷゲートウェイ処理部３０００Ｃに所属している。
【００２８】
仮想ＮＷ管理部４０００は基本ＮＷ１０００上に存在し、仮想ＮＷゲートウェイ処理部３０００への到達性を持つ。仮想ＮＷ管理部４０００は仮想ＮＷ情報管理部４０１０を有し、仮想ＮＷ情報管理部４０１０は仮想ＮＷ５０００に関する仮想ＮＷ情報４０１１を管理する。仮想ＮＷ管理部４０００は仮想ＮＷゲートウェイ処理部３０００に仮想ＮＷ情報４０１１を送信する。このとき、仮想ＮＷ管理部４０００は、必要に応じて仮想ＮＷ情報４０１１を加工して送信する。仮想ＮＷ情報４０１１の送信形態は、仮想ＮＷ情報４０１１の全情報を送信する形態であっても、更新された情報のみを送信する形態であってもよい。また、仮想ＮＷ情報４０１１の送信タイミングの例として、仮想ＮＷ情報４０１１の更新時や、仮想ＮＷゲートウェイ処理部３０００からの要求時などが挙げられる。また、仮想ＮＷ管理部４０００は定期的に仮想ＮＷ情報４０１１を送信してもよい。なお、仮想ＮＷ管理部４０００の配置位置は基本ＮＷ１０００上に限らず、仮想ＮＷゲートウェイ処理部３０００やホスト２０００上に設けられていてもよい。図１に示す例では、仮想ＮＷ管理部４０００がネットワーク１０００Ｄ上に存在するものとする。また、ここでは、仮想ＮＷ管理部４０００は、仮想ＮＷ情報４０１１の更新情報のみを仮想ＮＷゲートウェイ処理部３０００に送信するものとし、送信タイミングは仮想ＮＷ情報４０１１の更新時である場合を例にする。
【００２９】
仮想ＮＷ情報４０１１は、仮想ＮＷの構成情報である。仮想ＮＷ情報４０１１の一例を図２、図３、図４、図５に示す。図２は、仮想ＮＷ情報４０１１のうちの仮想ＮＷアドレス情報テーブルの一例を示す説明図である。仮想ＮＷアドレス情報テーブルは、仮想ＮＷアドレスを含むテーブルである。また、図２に示すように、仮想ＮＷアドレス情報テーブル内の仮想ＮＷアドレスはプレフィックス長も含むが、プレフィックス長の代わりにネットワークマスクとともに示されるアドレスであってもよい。
【００３０】
図３は、仮想ＮＷ情報４０１１のうちの仮想ホスト情報テーブルの一例を示す説明図である。仮想ホスト情報テーブルは、仮想ホストの識別子（以下、仮想ホストＩＤと記す。）と、その仮想ホストアドレスとの対応関係を示すテーブルである。仮想ホスト情報テーブルにおいて、仮想ホストアドレスとして、プロトコル番号やポート番号などのリソース情報を加えてもよい。
【００３１】
図４は、仮想ＮＷ情報４０１１のうちの仮想ＮＷゲートウェイ情報テーブルの一例を示す説明図である。仮想ＮＷゲートウェイ情報テーブルは、仮想ＮＷゲートウェイ処理部３０００の識別子（以下、仮想ＮＷゲートウェイＩＤと記す。）と、その仮想ＮＷゲートウェイ処理部３０００の基本ホストアドレスとの対応関係を示すテーブルである。この基本ホストアドレスは、他の仮想ＮＷゲートウェイ処理部３０００からアクセス可能な仮想ＮＷゲートウェイ処理部３０００の基本ホストアドレスである。なお、仮想ＮＷゲートウェイ処理部３０００によっては、基本ホストアドレスが複数存在する場合もある。
【００３２】
図５は、仮想ＮＷ情報４０１１のうちの所属関係情報テーブルの一例を示す説明図である。所属関係情報テーブルは、仮想ＮＷゲートウェイ処理部と、その仮想ＮＷゲートウェイ処理部に所属する仮想ホストとの対応関係を示すテーブルである。所属関係情報テーブルでは、仮想ＮＷゲートウェイ処理部を仮想ＮＷゲートウェイＩＤで示し、仮想ホストを仮想ホストＩＤで示す。この仮想ＮＷゲートウェイＩＤは、仮想ＮＷゲートウェイ情報テーブル（図４参照）における仮想ＮＷゲートウェイＩＤと同一である。また、仮想ホストＩＤは、仮想ホスト情報テーブル（図３参照）における仮想ホストＩＤと同一である。
【００３３】
仮想ＮＷ５０００は、仮想ＮＷゲートウェイ処理部３０００上や基本ＮＷ１０００上に仮想的に構築されるネットワークである。２つ以上の仮想ＮＷゲートウェイ処理部３０００が連携する場合、仮想ＮＷ５０００は、トンネル技術により基本ＮＷ１０００上に仮想的に構築される。図１に示す例では、仮想ＮＷ５０００の仮想ＮＷアドレスは10.0.0.0/24であるとする。また、ホスト２０００Ａ、ホスト２０００Ｂ、ホスト２０００Ｃ、ホスト２０００Ｄの仮想ＮＷ５０００上の仮想ホストアドレスは、それぞれ10.0.0.1、10.0.0.2、10.0.0.3、10.0.0.4であるとする。
【００３４】
以下、仮想ＮＷゲートウェイ処理部３０００（ネットワークアドレス重複回避装置）の構成を説明する。図６は、仮想ＮＷゲートウェイ処理部３０００の構成例を示すブロック図である。仮想ＮＷゲートウェイ処理部３０００は、所属ホスト情報管理部３０１０と、仮想ＮＷ情報管理部３０２０と、トンネル処理部３０３０と、ルーティング情報処理部３０４０と、データ転送処理部３０５０と、ルーティング情報管理部３０６０と、アドレス重複回避処理部３０７０とを備える。
【００３５】
所属ホスト情報管理部３０１０は所属ホスト情報３０１１を管理する。所属ホスト情報３０１１は、所属ホストのＩＤと、仮想ＮＷゲートウェイ処理部３０００がアクセス可能なその所属ホストの基本ホストアドレスとを含む情報である。図７は、所属ホスト情報３０１１の一例を示す説明図である。図７では、図１における仮想ＮＷゲートウェイ処理部３０００Ａが保持する所属ホスト情報の例を示している。なお、基本ホストアドレスとして、プロトコル番号やポート番号などのリソース情報を加えてもよい。また、所属ホスト２０００によっては基本ホストアドレスが複数存在する場合もある。ここで、所属ホストＩＤとして、仮想ＮＷ情報４０１１に含まれる仮想ホストＩＤと同一の識別子（ＩＤ）が用いられる。
【００３６】
仮想ＮＷ情報管理部３０２０は、仮想ＮＷ情報３０２１を管理する。仮想ＮＷ情報管理部３０２０は、仮想ＮＷゲートウェイ処理部３０００が仮想ＮＷ管理部４０００から受信した仮想ＮＷ情報４０１１を仮想ＮＷ情報３０２１として保存する。なお、受信した仮想ＮＷ情報４０１１が、後述のルーティング情報３０６１に含まれるアドレスとの重複を回避するように変換された場合は、仮想ＮＷ情報管理部３０２０は変換後の仮想ＮＷ情報４０１１を仮想ＮＷ情報３０２１として保存する。以下、受信した仮想ＮＷ情報４０１１に対する変換処理（後述の図１０に例示する処理）の後で、受信した仮想ＮＷ情報と同一内容のままとなっている仮想ＮＷ情報と、重複を回避するようにアドレスが変換された仮想ＮＷ情報との両方を併せて、「（重複回避）仮想ＮＷ情報」と記す。また、仮想ＮＷ情報管理部３０２０に保存される前の（重複回避）仮想ＮＷ情報には符号“４０１１”を用い、仮想ＮＷ情報管理部３０２０に保存された（重複回避）仮想ＮＷ情報には符号“３０２１”を用いる。
【００３７】
トンネル処理部３０３０は、（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１に基づいて、所属ホスト２０００以外の仮想ホスト用に、外部の他の仮想ＮＷゲートウェイ処理部３０００との間にトンネル技術を用いてトンネルを構築する。
【００３８】
また、トンネル処理部３０３０は、（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ネットワーク情報３０２１と、所属ホスト情報３０１１とに基づいて、所属ホスト２０００の仮想ホスト用に、内部の所属ホスト２０００とトンネル技術を用いてトンネルを構築し、その所属ホスト２０００のトンネルインタフェースにその所属ホスト２０００の仮想ホストアドレスを設定する。この動作は、より具体的には、その所属ホスト２０００のトンネルインタフェースにその所属ホスト２０００の仮想ホストアドレスが設定されるように、その所属ホスト２０００に通知することである。この仮想ホストアドレスは、アドレスの重複を回避するように設定される。以下、この仮想ホストアドレスを「（重複回避）仮想ホストアドレス」と記す。
【００３９】
ルーティング情報処理部３０４０は、（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１に基づいて、（重複回避）仮想ホストアドレス宛てのデータを、トンネル処理部３０３０が構築した適切なトンネルに入れるように仮想ＮＷゲートウェイ処理部３０００のルーティングテーブルを設定する。このルーティングテーブルは、データのルーティング先を決める際に用いるテーブルであり、後述のルーティング情報３０６１とは異なる。
【００４０】
データ転送処理部３０５０は、仮想ＮＷゲートウェイ処理部３０００のルーティングテーブルに基づいてデータをルーティングし、データを転送する。
【００４１】
ルーティング情報管理部３０６０は、仮想ＮＷゲートウェイ処理部３０００や所属ホスト２０００に関係する基本ＮＷ１０００のルーティング情報３０６１を管理する。ここで、仮想ＮＷゲートウェイ処理部３０００に関係する基本ＮＷ１０００とは、仮想ＮＷゲートウェイ処理部３０００が通信する際に宛先とする可能性がある基本ＮＷであり、所属ホスト２０００に関係する基本ＮＷ１０００とは、所属ホスト２０００が所属している仮想ＮＷゲートウェイ処理部３０００や所属ホスト２０００が通信する際に宛先とする可能性がある基本ＮＷである。図８は、ルーティング情報３０６１の一例を示す説明図である。図８では、図１における仮想ＮＷゲートウェイ処理部３０００Ａが管理するルーティング情報の例を示している。ルーティング情報３０６１は、図８に示すように宛先ネットワークアドレスを含む。図８に示すように、ルーティング情報３０６１内の宛先ネットワークアドレスはプレフィックス長も含むが、プレフィックス長の代わりにネットワークマスクとともに示されるアドレスであってもよい。
【００４２】
また、ルーティング情報３０６１は、仮想ＮＷ管理部４０００から割り当てられる仮想ＮＷアドレスがある範囲のアドレスであることが前提であるならば、仮想ＮＷゲートウェイ処理部３０００およびその所属ホスト２０００が通信する際に、その範囲内で宛先アドレスとする可能性があるアドレスが全て含まれていればよい。
【００４３】
また、仮想ＮＷゲートウェイ処理部３０００が保持するルーティングテーブルに、宛先アドレスとする可能性があるアドレスが全て含まれているならば、そのルーティングテーブルをルーティング情報３０６１の代わりに用いてもよい。
【００４４】
アドレス重複回避処理部３０７０は、重複判定処理部３０７１と、アドレス変換情報管理部３０７２と、重複回避仮想ＮＷ情報生成処理部３０７４と、外部トンネル構築情報変換処理部３０７５と、外部トンネルデータ変換処理部３０７６とを有する。
【００４５】
重複判定処理部３０７１は、受信した仮想ＮＷ情報４０１１の仮想ＮＷアドレスとルーティング情報３０６１の宛先ＮＷアドレスに重複が生じているか否かを判定する。
【００４６】
アドレス変換情報管理部３０７２は、ルーティング情報３０６１の宛先ＮＷアドレスと重複しないネットワークアドレス（以下、重複回避仮想ＮＷアドレスと記す。）を仮想ＮＷ５０００のネットワークアドレス空間と同じ大きさ、または、それ以上の大きさで生成する。そして、アドレス変換情報管理部３０７２は、仮想ＮＷ管理部４０００から受信した仮想ＮＷ情報４０１１に含まれている仮想ＮＷアドレスと重複回避仮想ＮＷアドレスとの間のアドレス変換情報３０７３を生成し、管理する。
【００４７】
なお、アドレス変換情報管理部３０７２は、重複回避仮想ＮＷアドレスと仮想ＮＷアドレスとの相互変換が可能ならば、仮想ＮＷアドレスと異なるプロトコルにおける重複回避仮想ＮＷアドレスを生成してもよい。例えば、仮想ＮＷアドレスがＩＰｖ４アドレスである場合に、アドレス変換情報管理部３０７２は、ＩＰｖ６アドレスの重複回避仮想ＮＷアドレスを生成してもよい。
【００４８】
図９は、アドレス変換情報３０７３の一例を示す説明図である。なお、図９に示すアドレス変換情報は、図１における仮想ＮＷゲートウェイ処理部３０００Ａで生成されたアドレス変換情報であるものとする。図９に示すように、アドレス変換情報３０７３における仮想ＮＷアドレスおよび重複回避仮想ＮＷアドレスは、それぞれプレフィックス長も含むが、プレフィックス長の代わりにネットワークマスクとともに示されるアドレスであってもよい。また、図９は仮想ＮＷアドレスおよび重複回避仮想ＮＷアドレスのプレフィックス長やネットマスクが同じである場合は、プレフィックス長やネットマスクを含まない仮想ＮＷアドレスおよび重複回避仮想ＮＷアドレスと、プレフィックス長やネットマスクだけの項目から構成されていてもよい。
【００４９】
また、アドレス変換情報３０７３は、仮想ホストアドレスと、その仮想ホストアドレスに１対１に対応する重複回避仮想ＮＷアドレスを持つホストアドレス（以下、重複回避仮想ホストアドレスと記す。）の組み合わせを含んでいてもよい。
【００５０】
重複回避仮想ＮＷ情報生成処理部３０７４は、アドレス変換情報３０７３に基づいて、仮想ＮＷ情報４０１１から重複回避仮想ＮＷ情報４０１１を生成する。具体的には、仮想ＮＷ情報４０１１に含まれる仮想ＮＷアドレス（図２参照）を重複回避仮想ＮＷアドレスに変換し、同様に、仮想ＮＷ情報４０１１に含まれる仮想ホストアドレス（図３参照）を重複回避仮想ホストアドレスに変換した重複回避仮想ＮＷ情報４０１１を生成する。
【００５１】
外部トンネル構築情報変換処理部３０７５は、アドレス変換情報３０７３に基づいて、トンネル処理部３０３０が外部トンネルを構築する際に外部の他の仮想ＮＷゲートウェイ処理部３０００と送受信するトンネル構築情報に含まれる仮想ＮＷアドレスと重複回避仮想ＮＷアドレスとを相互変換する設定を行う。具体的には、仮想ＮＷゲートウェイ処理部３０００のトンネル処理部３０３０が外部の他の仮想ＮＷゲートウェイ処理部３０００に送信するトンネル構築情報に対しては、重複回避仮想ＮＷアドレスを仮想ＮＷアドレスに変換し、重複回避仮想ホストアドレスを仮想ホストアドレスに変換する処理を行うように設定する。また、仮想ＮＷゲートウェイ処理部３０００のトンネル処理部３０３０が外部の他の仮想ＮＷゲートウェイ処理部３０００から受信するトンネル構築情報に対しては、仮想ＮＷアドレスを重複回避仮想ＮＷアドレスに変換し、仮想ホストアドレスを重複回避仮想ホストアドレスに変換する処理を行うように設定する。
【００５２】
なお、トンネル構築情報とは、トンネルを構築する装置間で送受信される情報である。例えば、ＩＰｓｅｃを用いてトンネルを構築する場合、ＩＰｓｅｃ  ＳＡ（Security Association）の自動生成および管理のためにＩＫＥ（Internet Key Exchange ）を用いるならば、ＩＫＥによって送受信されるメッセージがトンネル構築情報となる。ＩＫＥ  ｐｈａｓｅ２で送受信されるIdentificationペイロードにはＩＰアドレスが含まれることが一般的であり、外部トンネル構築情報変換処理部３０７５は、例えば、このＩＰアドレスに関して仮想ＮＷアドレスと重複回避仮想ＮＷアドレスとを相互変換するように設定する。
【００５３】
外部トンネルデータ変換処理部３０７６は、アドレス変換情報３０７３に基づいて、トンネル処理部３０３０が構築した外部トンネルのインタフェースにおいて、データに含まれる仮想ＮＷアドレスと重複回避仮想ＮＷアドレスとを相互変換する設定を行う。具体的には、仮想ＮＷゲートウェイ処理部３０００が外部の他の仮想ＮＷゲートウェイ処理部３０００に向けて外部トンネルを通して送信するデータに対しては、重複回避仮想ＮＷアドレスを仮想ＮＷアドレスに変換し、重複回避仮想ホストアドレスを仮想ホストアドレスに変換する処理を行うように設定する。また、仮想ＮＷゲートウェイ処理部３０００が外部トンネルを通して外部の他の仮想ＮＷゲートウェイ処理部３０００から受信するデータに対しては、仮想ＮＷアドレスを重複回避仮想ＮＷアドレスに変換し、仮想ホストアドレスを重複回避仮想ホストアドレスに変換する処理を行うように設定する。
【００５４】
所属ホスト情報管理部３０１０、仮想ＮＷ情報管理部３０２０、トンネル処理部３０３０、ルーティング情報処理部３０４０、データ転送処理部３０５０、ルーティング情報管理部３０６０、およびアドレス重複回避処理部３０７０（重複判定処理部３０７１、アドレス変換情報管理部３０７２、重複回避仮想ＮＷ情報生成処理部３０７４、外部トンネル構築情報変換処理部３０７５、外部トンネルデータ変換処理部３０７６）は、例えば、プログラムに従って動作するコンピュータのＣＰＵによって実現される。例えば、コンピュータのプログラム記憶部（図示略）に記憶されたネットワークアドレス重複回避プログラムをＣＰＵが読み込み、ＣＰＵがそのプログラムに従って、上記の構成要素として動作してもよい。
【００５５】
次に、動作について説明する。
図１０は、仮想ＮＷゲートウェイ処理部３０００が仮想ＮＷ管理部４０００から仮想ＮＷ情報４０１１を受信した場合に、仮想ＮＷ情報４０１１から重複回避仮想ＮＷ情報を生成する処理の例を示すフローチャートである。
【００５６】
仮想ＮＷゲートウェイ処理部３０００が仮想ＮＷ管理部４０００から仮想ＮＷ情報４０１１を受信すると（ステップＳ１０１）、以下の処理を行う。その仮想ＮＷ情報４０１１の受信が初めての仮想ＮＷ情報４０１１の受信である場合（ステップＳ１０２のＹ）、重複判定処理部３０７１は、受信した仮想ＮＷ情報４０１１内の仮想ＮＷアドレス（図２参照）とルーティング情報３０６１内の宛先ＮＷアドレス（図８参照）に重複が生じているか否かを判定する（ステップＳ１０３）。なお、仮想ＮＷ情報４０１１の受信が初めてであるか否かの判定（ステップＳ１０２）は、例えば、仮想ＮＷ情報管理部３０２０が行えばよい。ステップＳ１０２における仮想ＮＷ情報４０１１を初めて受信したか否かの判定は、少なくとも、仮想ＮＷ情報管理部３０２０に仮想ＮＷ情報３０２１が存在するか否かの判定によって行うことができる。すなわち、仮想ＮＷ情報３０２１が保存されていなければ、初めての受信であると判定し、仮想ＮＷ情報３０２１が保存されていれば、初めての受信ではないと判定することができる。
【００５７】
受信した仮想ＮＷ情報４０１１内の仮想ＮＷアドレスとルーティング情報３０６１内の宛先ＮＷアドレスとに重複が生じている場合（ステップＳ１０４のＹ）、アドレス変換情報管理部３０７２が、ルーティング情報３０６１内の宛先ＮＷアドレスと重複しない重複回避仮想ＮＷアドレスを生成する（ステップＳ１０５）。
【００５８】
続いて、アドレス変換情報管理部３０７２は、仮想ＮＷアドレスと重複回避仮想ＮＷアドレスとの間のアドレス変換情報３０７３を生成する（ステップＳ１０６）。
【００５９】
ステップＳ１０６の次に、重複回避仮想ＮＷ情報生成処理部３０７４は、アドレス変換情報３０７３に基づいて、仮想ＮＷ情報４０１１から重複回避仮想ＮＷ情報４０１１を生成する（ステップＳ１０７）。なお、重複回避仮想ＮＷ情報生成処理部３０７４は、重複回避仮想ホストアドレスが重複回避仮想ＮＷアドレスに属するように重複回避仮想ホストアドレスを定める。
【００６０】
また、このアドレス変換情報３０７３は、仮想ホストアドレスと重複回避仮想ホストアドレスとの変換情報も含んでいる。仮想ホストアドレスと重複回避仮想ホストアドレスとの対応関係は、アドレス変換情報３０７３で明示的に示されていなくてもよい。例えば、図９に例示するアドレス変換情報３０７３において、仮想ホストアドレスが10.0.0.100の場合に、重複回避仮想ホストアドレスが10.0.1.100になることが非明示的に定められているとしてもよい。また、仮想ホストアドレスと重複回避仮想ホストアドレスとを明示的に１対１にマッピングする場合には、仮想ホストアドレスと、その仮想ホストアドレスに１対１に対応する重複回避仮想ＮＷアドレスを明示的にアドレス変換情報３０７３に含めておけばよい。例えば、仮想ホストアドレスが10.0.0.100の場合は、重複回避仮想ホストアドレスは10.0.1.200であるという組み合わせなどを明示的にアドレス変換情報３０７３に記述しておけばよい。
【００６１】
また、ステップＳ１０１での仮想ＮＷ情報４０１１の受信が初めての仮想ＮＷ情報４０１１の受信でない場合（ステップＳ１０２のＮ）、既に重複判定処理部３０７１がネットワークアドレスの重複判定を行っていることになるので、ネットワークアドレスに重複が生じている場合はアドレス変換情報３０７３が存在することになる。仮想ＮＷ情報４０１１の受信が初めてでない場合（ステップＳ１０２のＮ）であって、アドレス変換情報３０７３が存在しているならば（ステップＳ１０８のＹ）、重複回避仮想ＮＷ情報生成処理部３０７４がステップＳ１０７の処理を行う。一方、仮想ＮＷ情報４０１１の受信が初めてでない場合（ステップＳ１０２のＮ）であって、アドレス変換情報３０７３が存在していない場合には（ステップＳ１０８のＮ）、重複回避仮想ＮＷ情報生成処理を終了する。なお、アドレス変換情報３０７３が存在するか否かの判定（ステップＳ１０８）は、例えば、アドレス変換情報管理部３０７２が行えばよい。
【００６２】
また、ステップＳ１０３の判定の結果、ネットワークアドレスに重複が生じていないと判定された場合（ステップＳ１０４のＮ）にも、重複回避仮想ＮＷ情報生成処理を終了する。
【００６３】
以下、仮想ＮＷゲートウェイ処理部３０００Ａが図８に例示するルーティング情報３０６１を保持し、図２から図５までに例示する仮想ＮＷを受信した場合における処理の具体例を示す。
【００６４】
ステップＳ１０３では、仮想ＮＷゲートウェイ処理部３０００Ａの重複判定処理部３０７１は、仮想ＮＷ情報４０１１内の仮想ＮＷアドレス10.0.0.0/24 （図２参照）と、ルーティング情報３０６１の宛先ＮＷアドレス10.0.0.0/24 （図８参照）とから、ネットワークアドレスに重複が生じていると判定する。
【００６５】
また、ステップＳ１０５では、仮想ＮＷゲートウェイ処理部３０００Ａのアドレス変換情報管理部３０７２は、ルーティング情報３０６１の宛先ＮＷアドレス（図８参照）と重複せずに、仮想ＮＷ５０００の仮想ＮＷアドレス10.0.0.0/24と同じアドレス空間を持つ重複回避仮想ＮＷアドレスを生成する。ここでは、重複回避仮想ＮＷアドレスとして、10.0.1.0/24 を生成するものとする。
【００６６】
その結果、ステップＳ１０６では、仮想ＮＷゲートウェイ処理部３０００Ａのアドレス変換情報管理部３０７２は、図９に示すアドレス変換情報３０７３を生成するものとする。
【００６７】
また、ステップＳ１０７では、仮想ＮＷゲートウェイ処理部３０００Ａの重複回避仮想ＮＷ情報生成処理部３０７４は、仮想ＮＷ管理部４０００から受信した仮想ＮＷ情報４０１１に含まれる仮想ＮＷアドレス10.0.0.0/24 を、そのアドレス変換情報３０７３に基づいて、重複回避仮想ＮＷアドレス10.0.1.0/24 に変換する。さらに、仮想ＮＷ情報４０１１に含まれるホスト２０００Ａ，２０００Ｂ，２０００Ｃ，２０００Ｄの仮想ホストアドレス（図３参照）を、それぞれ重複回避仮想ホストアドレスに変換する。本例では、図３に示す10.0.0.1を10.0.1.1に変換する。同様に、10.0.0.2を10.0.1.2に変換する。同様に、10.0.0.3を10.0.1.3に変換する。同様に、10.0.0.4を10.0.1.4に変換する。以上の変換により、重複回避仮想ＮＷ情報生成処理部３０７４は、重複回避仮想ＮＷ情報４０１１を生成する。
【００６８】
なお、図１０に示す処理において、ステップＳ１０４でネットワークアドレスが重複しないと判定された場合（ステップＳ１０４のＮ）などでは、変換は行われず、受信した仮想ＮＷ情報４０１１と同内容の仮想ＮＷ情報が得られる。
【００６９】
次に、図１０に示す重複回避仮想ＮＷ情報の生成処理後に、仮想ＮＷゲートウェイ処理部３０００が（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１、所属ホスト情報３０１１に基づいて、仮想ＮＷ５０００を構築する際の動作について説明する。図１１は、仮想ＮＷゲートウェイ処理部３０００が仮想ＮＷ５０００を構築する動作の例を示すフローチャートである。
【００７０】
仮想ＮＷゲートウェイ処理部３０００は、（重複回避）仮想ＮＷ情報４０１１から、処理対象とする処理対象仮想ホストを決定する。そして、決定した処理対象仮想ホスト毎に図１１に示すステップＳ２０２およびＳ２０３、または、ステップＳ２０２およびステップＳ２０４〜Ｓ２０９の処理を行う。
【００７１】
仮想ＮＷゲートウェイ処理部３０００は、（重複回避）仮想ＮＷ情報４０１１から、処理対象仮想ホストを決定する（ステップＳ２０１）。ステップＳ２０１では、（重複回避）仮想ＮＷ情報４０１１の仮想ホスト情報テーブルや所属関係情報テーブルが示す各仮想ホストを処理対象仮想ホストとして、順次、決定すればよい。
【００７２】
仮想ＮＷゲートウェイ処理部３０００は、（重複回避）仮想ＮＷ情報４０１１における全ての処理対象仮想ホストに対して、ステップＳ２０１，Ｓ２０２，Ｓ２０３の処理、または、ステップＳ２０１，Ｓ２０２，Ｓ２０４〜Ｓ２０９の処理を実行する。そして、その後、ステップＳ２１０を実行する。
【００７３】
ステップＳ２０１の次に、仮想ＮＷゲートウェイ処理部３０００は、決定した処理対象仮想ホストが、所属ホスト２０００であるか否かを判定する（ステップＳ２０２）。ステップＳ２０２では、処理対象仮想ホストの仮想ホストＩＤが所属ホスト情報３０１１に含まれていれば、所属ホスト２０００に該当し、処理対象仮想ホストの仮想ホストＩＤが所属ホスト情報３０１１に含まれていなければ所属ホスト２０００に該当しないと判定すればよい。または、（重複回避）仮想ＮＷ情報４０１１の所属関係情報テーブルから処理対象仮想ホストが所属ホスト２０００に該当するかしないかを判定すればよい。
【００７４】
処理対象仮想ホストが所属ホスト２０００である場合（ステップＳ２０２のＹ）、トンネル処理部３０３０およびルーティング情報処理部３０４０は、処理対象仮想ホストであるその所属ホスト２０００を仮想ＮＷ５０００に参加させるための処理を行う（ステップＳ２０３）。ステップＳ２０３において、トンネル処理部３０３０は、まず、（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ネットワーク情報３０２１と、所属ホスト情報３０１１とに基づいて、処理対象仮想ホストである所属ホスト２０００と内部トンネルを構築する（ステップＳ２０３−１）。次に、トンネル処理部３０３０は、その所属ホスト２０００の内部トンネルインタフェースに処理対象仮想ホストの（重複回避）仮想ホストアドレスが設定されるようにその所属ホスト２０００に通知する（ステップＳ２０３−２）。そして、ルーティング情報処理部３０４０が、（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１に基づいて、処理対象仮想ホスト宛てのデータを、ステップＳ２０３−１でトンネル処理部３０３０が構築した内部トンネルに入れるように仮想ＮＷゲートウェイ処理部３０００のルーティングテーブルを設定する（ステップＳ２０３−３）。なお、既に処理対象仮想ホスト用の内部トンネル構築や（重複回避）仮想ホストアドレスの設定、ルーティングテーブルの設定が完了している場合は、完了している処理に関しては処理を行わなくてもよい。また、ステップＳ２０３−２とステップＳ２０３−３の処理はどちらが先であってもよい。
【００７５】
なお、仮想ＮＷゲートウェイ処理部３０００がステップＳ２０３−１，Ｓ２０３−２，Ｓ２０３−３を行うときには、処理対象仮想ホストに該当する所属ホスト２０００は、以下のように動作する。すなわち、その所属ホスト２０００は、ステップＳ２０３−１において、トンネルを構築する処理を行い、ステップＳ２０３−２において、そのトンネルインタフェースに（重複回避）仮想ホストアドレスを設定する。そして、ステップＳ２０３−３で、そのトンネルに対して（重複回避）仮想ＮＷアドレス宛のデータをそのトンネルに入れるように設定する。
【００７６】
ステップＳ２０１で決定した処理対象仮想ホストが所属ホスト２０００ではない場合には（ステップＳ２０２のＮ）、例えば、アドレス変換情報管理部３０７２が、アドレス変換情報３０７３の有無を判定する（ステップＳ２０４）。
【００７７】
アドレス変換情報３０７３が存在する場合（ステップＳ２０４のＹ）、外部トンネル構築情報変換処理部３０７５は、アドレス変換情報３０７３に基づいて、トンネル処理部３０３０が処理対象仮想ホスト用の外部トンネルを構築する際に送受信するトンネル構築情報に含まれる仮想ＮＷアドレスと重複回避仮想ＮＷアドレスを相互変換する設定を行う（ステップＳ２０５）。ステップＳ２０５において、外部トンネル構築情報変換処理部３０７５は、外部の仮想ＮＷゲートウェイ処理部３０００に送信するトンネル構築情報に対しては、重複回避仮想ＮＷアドレスを仮想ＮＷアドレスに変換し、重複回避仮想ホストアドレスを仮想ホストアドレスに変換する処理を行うように設定する。また、外部の仮想ＮＷゲートウェイ処理部３０００などから受信するトンネル構築情報に対しては、仮想ＮＷアドレスを重複回避仮想ＮＷアドレスに変換し、仮想ホストアドレスを重複回避仮想ホストアドレスに変換する処理を行うように設定する。
【００７８】
ステップＳ２０５の後、トンネル処理部３０３０は、重複回避仮想ＮＷ情報４０１１や重複回避仮想ＮＷ情報３０２１に基づいて、処理対象仮想ホスト用の外部トンネルを構築する（ステップＳ２０６）。なお、既に処理対象仮想ホスト用の外部トンネル構築が完了している場合はこれらの処理を行わなくてもよい。
【００７９】
アドレス変換情報３０７３が存在しない場合（ステップＳ２０４のＮ）、外部トンネル構築情報変換処理部３０７５がステップＳ２０５の処理を実行せずに、トンネル処理部３０３０がステップＳ２０６を実行する。この場合においても、既に処理対象仮想ホスト用の外部トンネル構築が完了している場合はこの処理（ステップＳ２０６）を行わなくてよい。
【００８０】
ここで、トンネル処理部３０３０が処理対象仮想ホスト用の外部トンネルを構築する際にトンネル構築情報の送受信を行わない場合は、ステップＳ２０５の処理を行う必要がなく、従って、ステップＳ２０４の処理も行わなくてよい。従って、この場合には、ステップＳ２０１で決定した処理対象仮想ホストが所属ホスト２０００ではないならば（ステップＳ２０２のＮ）、ステップＳ２０６に移行すればよい。
【００８１】
ステップＳ２０６の後、アドレス変換情報３０７３が存在する場合（ステップＳ２０７のＹ）、外部トンネルデータ変換処理部３０７６は、アドレス変換情報３０７３に基づいて、トンネル処理部３０３０が構築した処理対象仮想ホスト用の外部トンネルのインタフェースにおいて、データに含まれる仮想ＮＷアドレスと重複回避仮想ＮＷアドレスを相互変換する設定を行う（ステップＳ２０８）。ステップＳ２０８において、外部トンネルデータ変換処理部３０７６は、外部トンネルを通して送信するデータに対しては、重複回避仮想ＮＷアドレスを仮想ＮＷアドレスに変換し、重複回避仮想ホストアドレスを仮想ホストアドレスに変換する処理を行うように設定する。また、外部トンネルを通して受信するデータに対しては、仮想ＮＷアドレスを重複回避仮想ＮＷアドレスに変換し、仮想ホストアドレスを重複回避仮想ホストアドレスに変換する処理を行うように設定する。
【００８２】
ステップＳ２０８の後、ルーティング情報処理部３０４０は、（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１に基づいて、処理対象仮想ホスト宛てのデータを、トンネル処理部３０３０が構築した処理対象仮想ホスト用の外部トンネルに入れるように仮想ＮＷゲートウェイ処理部３０００のルーティングテーブルを設定する（ステップＳ２０９）。なお、既に処理対象仮想ホスト用の外部トンネルインタフェースへの仮想ＮＷアドレスと重複回避仮想ＮＷアドレスとの相互変換の設定やルーティングテーブルの設定が完了している場合、完了している処理に関しては処理を行わなくてもよい。また、ルーティング情報処理部３０４０は、ステップＳ２０９の処理を、ステップＳ２０６とステップＳ２０７との間で行ってもよい。
【００８３】
ステップＳ２０６の後、アドレス変換情報３０７３が存在しない場合（ステップＳ２０７のＮ）、外部トンネルデータ変換処理部３０７６がステップＳ２０８の処理を実行せずに、ルーティング情報処理部３０４０がステップＳ２０９の処理を実行する。また、既にルーティングテーブルの設定が完了している場合はこの処理（ステップＳ２０９）を行わなくてもよい。この場合においても、ルーティング情報処理部３０４０は、ステップＳ２０９の処理を、ステップＳ２０６とステップＳ２０７との間で行ってもよい。
【００８４】
（重複回避）仮想ＮＷ情報４０１１における全ての処理対象仮想ホストに対して、ステップＳ２０１，Ｓ２０２，Ｓ２０３の処理、または、ステップＳ２０１，Ｓ２０２，Ｓ２０４〜Ｓ２０９の処理が終わった後、仮想ＮＷ情報管理部３０２０は（重複回避）仮想ＮＷ情報４０１１を（重複回避）仮想ＮＷ情報３０２１として保存する（ステップＳ２１０）。なお、ステップＳ２１０の処理は、ＳＴＡＲＴからステップＳ２１０間のどこで実施してもよい。
【００８５】
なお、仮想ＮＷ５０００の構築後に所属ホスト２０００の基本ホストアドレスに変更があった場合は、トンネル処理部３０３０およびルーティング情報処理部３０４０が、ステップＳ２０３（図１１参照）の処理を、基本ホストアドレスが変更された所属ホスト２０００に対応する仮想ホストに関してだけ行う。
【００８６】
以下、処理の具体例を示す。図１に例示する仮想ＮＷゲートウェイ処理部３０００Ａのトンネル処理部３０３０は、ステップＳ２０３において、所属ホスト２０００Ａと内部トンネル（“ＡＡ”と記す。）を構築し、所属ホスト２０００Ａの内部トンネルＡＡインタフェースに所属ホスト２０００Ａの重複回避仮想ホストアドレス10.0.1.1が設定されるように所属ホスト２０００Ａに通知する。同様に、所属ホスト２０００Ｂと内部トンネル（“ＡＢ”と記す。）を構築し、所属ホスト２０００Ｂの内部トンネルＡＢインタフェースに所属ホスト２０００Ｂの重複回避仮想ホストアドレス10.0.1.2が設定されるように所属ホスト２０００Ｂに通知する。そして、仮想ＮＷゲートウェイ処理部３０００Ａのルーティング情報処理部３０４０は、所属ホスト２０００Ａの重複回避仮想ホストアドレス10.0.1.1宛のデータを内部トンネルＡＡに入れるようにし、また、所属ホスト２０００Ｂの重複回避仮想ホストアドレス10.0.1.2宛のデータを内部トンネルＡＢに入れるように、ルーティングテーブルを更新する。他の仮想ＮＷゲートウェイ処理部３０００Ｂ，３０００Ｃも、同様にステップＳ２０３を実行する。
【００８７】
また、仮想ＮＷゲートウェイ処理部３０００Ａのトンネル処理部３０３０は、ステップＳ２０６において、仮想ＮＷゲートウェイ処理部３０００Ｂのトンネル処理部３０３０と外部トンネル（“ＡＢ”と記す。）を構築し、また、仮想ＮＷゲートウェイ処理部３０００Ｃのトンネル処理部３０３０と外部トンネル（“ＡＣ”と記す。）を構築する。他の仮想ＮＷゲートウェイ処理部３０００Ｂや３０００Ｃも、同様にステップＳ２０６を実行する。
【００８８】
また、仮想ＮＷゲートウェイ処理部３０００Ａの外部トンネルデータ変換処理部３０７６は、ステップＳ２０８において、アドレス変換情報３０７３を基に、トンネル処理部３０３０が構築した外部トンネルＡＢの入力インタフェースにおいて、データに含まれるホスト２０００Ａの重複回避仮想ホストアドレス10.0.1.1を仮想ホストアドレス10.0.0.1に変換し、ホスト２０００Ｂの重複回避仮想ホストアドレス10.0.1.2を仮想ホストアドレス10.0.0.2に変換し、ホスト２０００Ｃの重複回避仮想ホストアドレス10.0.1.3を仮想ホストアドレス10.0.0.3に変換する設定を行う。また、外部トンネルＡＢの出力インタフェースにおいて、データに含まれるホスト２０００Ａの仮想ホストアドレス10.0.0.1を重複回避仮想ホストアドレス10.0.1.1に変換し、ホスト２０００Ｂの仮想ホストアドレス10.0.0.2を重複回避仮想ホストアドレス10.0.1.2に変換し、ホスト２０００Ｃの仮想ホストアドレス10.0.0.3を重複回避仮想ホストアドレス10.0.1.3に変換する設定を行う。外部トンネルデータ変換処理部３０７６は、外部トンネルＡＣのインタフェースに関しても同様の設定を行う。
【００８９】
仮想ＮＷゲートウェイ処理部３０００Ａのルーティング情報処理部３０４０は、ステップＳ２０９において、ホスト２０００Ｃの重複回避仮想ホストアドレス10.0.1.3宛のデータを外部トンネルＡＢに入れるように、また、ホスト２０００Ｄの重複回避仮想ホストアドレス10.0.1.4宛のデータを外部トンネルＡＣに入れるように、仮想ＮＷゲートウェイ処理部３０００Ａのルーティングテーブルを更新する。他の仮想ＮＷゲートウェイ処理部３０００Ｂや３０００Ｃも、同様にステップＳ２０９を実行する。
【００９０】
次に、仮想ＮＷ５０００の構築後に、仮想ＮＷゲートウェイ処理部３０００が受信したデータを転送する際の動作について説明する。図１２は、仮想ＮＷゲートウェイ処理部３０００のデータ転送時の動作の例を示すフローチャートである。
【００９１】
仮想ＮＷゲートウェイ処理部３０００は、データを受信すると（ステップＳ３０１）、受信したデータの宛先アドレスが（重複回避）仮想ＮＷアドレスに属するアドレスであるか否かを判定する（ステップＳ３０２）。ここで、「（重複回避）仮想ＮＷアドレス」は、図１０に示す処理で得られた（重複回避）仮想ＮＷ情報に含まれている仮想ＮＷアドレスである。
【００９２】
受信したデータの宛先アドレスが（重複回避）仮想ＮＷアドレスに属するアドレスである場合（ステップＳ３０２のＹ）、仮想ＮＷゲートウェイ処理部３０００は、データの送信元が所属ホスト２０００であるか否かを判定する（ステップＳ３０３）。
【００９３】
データの送信元が所属ホスト２０００である場合（ステップＳ３０３のＹ）、データ転送処理部３０５０は、ルーティングテーブルに基づいて、データの宛先アドレスに応じてデータを適切にルーティングする（ステップＳ３０６）。
【００９４】
データの送信元が所属ホスト２０００でない場合には（ステップＳ３０３のＮ）、仮想ゲートウェイ処理部３０００はアドレス変換情報３０７３の有無に応じて動作する。アドレス変換情報３０７３が存在する場合（ステップＳ３０４のＹ）、仮想ＮＷゲートウェイ処理部３０００は、外部トンネルデータ変換処理部３０７６の設定に基づいて、外部トンネルの出力インタフェースにおいて、データに含まれる仮想ＮＷアドレスを重複回避仮想ＮＷアドレスに変換し（ステップＳ３０５）、その後、ステップＳ３０６の処理を行う。
【００９５】
また、ステップＳ３０４においてアドレス変換情報３０７３が存在しない場合（ステップＳ３０４のＮ）、仮想ＮＷゲートウェイ処理部３０００は、ステップＳ３０５の処理を行わずに、ステップＳ３０６の処理を行う。
【００９６】
データのルーティング処理（ステップＳ３０６）の後、仮想ＮＷゲートウェイ処理部３０００は、データの宛先が所属ホスト２０００であるかないかを判定する（ステップＳ３０７）。
【００９７】
データの宛先が所属ホスト２０００である場合（ステップＳ３０７のＹ）、データ転送処理部３０５０はデータを適切に転送する（ステップＳ３１１）。
【００９８】
また、データの宛先が所属ホスト２０００でない場合には（ステップＳ３０７のＮ）、仮想ゲートウェイ処理部３０００はアドレス変換情報３０７３の有無に応じて動作する。アドレス変換情報３０７３が存在する場合（ステップＳ３０８のＹ）、仮想ＮＷゲートウェイ処理部３０００は、外部トンネルデータ変換処理部３０７６の設定に基づいて、外部トンネルの入力インタフェースにおいて、データに含まれる重複回避仮想ＮＷアドレスを仮想ＮＷアドレスに変換し（ステップＳ３０９）、その後、ステップＳ３１１の処理を行う。
【００９９】
また、アドレス変換情報３０７３が存在しない場合（ステップＳ３０８のＮ）、仮想ＮＷゲートウェイ処理部３０００は、ステップＳ３０９の処理を行わずに、ステップＳ３１１の処理を行う。
【０１００】
また、ステップＳ３０２において、受信したデータの宛先アドレスが（重複回避）仮想ＮＷアドレスに属するアドレスでないと判定した場合（ステップＳ３０２のＮ）、データ転送処理部３０５０は、ルーティングテーブルに基づいて、データの宛先アドレスに応じてデータを適切にルーティングし（ステップＳ３１０）、ステップＳ３１１の処理を行う。
【０１０１】
このように、本実施形態では、仮想ＮＷゲートウェイ処理部３０００や所属ホスト２０００に関係する基本ＮＷ１０００のネットワークアドレスと仮想ＮＷアドレスが重複していた場合に、仮想ＮＷゲートウェイ処理部３０００は、重複回避仮想ＮＷアドレスを生成し、その重複回避仮想ＮＷアドレスと仮想ＮＷアドレス間のアドレス変換情報３０７３を生成し、そのアドレス変換情報３０７３に基づいて仮想ＮＷ情報４０１１から重複回避仮想ＮＷ情報４０１１を生成する。そして、仮想ＮＷゲートウェイ処理部３０００は、その重複回避仮想ＮＷ情報４０１１に基づいて仮想ＮＷ５０００を構築する。また、仮想ＮＷゲートウェイ処理部３０００は、外部トンネルインタフェースにおいて、アドレス変換情報３０７３に基づいて、データに含まれる仮想ＮＷアドレスと重複回避仮想ＮＷアドレスを相互変換する設定を行う。従って、仮想ＮＷゲートウェイ処理部３０００や所属ホスト２０００は、基本ＮＷ１０００や仮想ＮＷ５０００上の通信相手に意図した通りにデータを送信できる。
【０１０２】
また、ネットワークアドレスの重複に関係する仮想ＮＷゲートウェイ処理部３０００のみで自動的にネットワークアドレスの重複を回避するので、ネットワークアドレスの重複が生じないようにするための事前設定において、綿密な調査が必要なくなる。さらに、ネットワークアドレスの重複が生じた場合に、ネットワークアドレスの重複に関係する仮想ＮＷゲートウェイ処理部３０００や所属ホスト２０００の基本ＮＷ１０００において、基本ネットワークアドレス、基本ホストアドレスを再設定する必要がなく、また、既に全仮想ＮＷゲートウェイ処理部３０００に付与されている仮想ＮＷアドレス、仮想ホストアドレスを再設定する必要もない。
【０１０３】
また、ネットワークアドレスの重複に関係する仮想ＮＷゲートウェイ処理部３０００は、ネットワークアドレスの重複を回避するために仮想ＮＷ管理部４０００や他の仮想ＮＷゲートウェイ処理部３０００と基本ＮＷ１０００に関する情報の送受信をしなくてもよい。従って、ネットワークアドレスの重複に関係する仮想ＮＷゲートウェイ処理部３０００がネットワークアドレスの重複を回避する処理をしたとしても仮想ＮＷ管理部４０００や他の仮想ＮＷゲートウェイ処理部３０００は影響を受けない。よって、仮想ＮＷ５０００のルーティングに混乱が起こることを防止できる。
【０１０４】
次に、本発明の第1の実施形態の主な変形例について図１３、図１４、図１５を参照して説明する。図１３、図１４および図１５は、本発明の第1の実施形態の主な変形例を示す説明図である。
【０１０５】
図１３に示す仮想ＮＷシステムは、図１に示す仮想ＮＷシステムにネットワーク１０００Ｅを追加した例を示す。ネットワーク１０００Ｅは、仮想ＮＷゲートウェイ処理部およびその所属ホストが存在するネットワークと接続関係を持っているネットワークであり、仮想ＮＷゲートウェイ処理部３０００や所属ホスト２０００が通信する際に宛先とする可能性があるネットワークである。図１３に示す例では、ネットワーク１０００Ｅは、仮想ＮＷゲートウェイ処理部３０００Ｂおよびその所属ホスト２０００Ｃが存在するネットワーク１０００Ｂと接続関係を有する。本例において、ネットワーク１０００Ｅのネットワークアドレスは10.0.0.0/24 であるとする。このように、仮想ＮＷゲートウェイ処理部３０００や所属ホスト２０００が存在するネットワーク１０００Ｂのネットワークアドレスと仮想ＮＷアドレスが重複していなくても、仮想ＮＷゲートウェイ処理部３０００や所属ホスト２０００に関係するネットワーク１０００Ｅのネットワークアドレスが仮想ＮＷアドレスと重複している場合、仮想ＮＷゲートウェイ処理部３０００は仮想ＮＷアドレスの重複回避処理を行う。ここで、ネットワーク１０００Ｅが、接続関係を持っていても仮想ＮＷゲートウェイ処理部３０００のルーティング情報３０６１に載らない場合もある。例えば、ネットワーク１０００Ｅとネットワーク１０００Ｂとの間にＮＡＴがある場合である。この場合、仮想ＮＷゲートウェイ処理部３０００や所属ホスト２０００に関係するネットワークに、ネットワーク１０００Ｅは含めないものとする。この場合の仮想ＮＷゲートウェイ処理部３０００の構成や動作、効果は、第１の実施形態と同様である。
【０１０６】
図１４に示す仮想ＮＷシステムは、図１に示す仮想ＮＷシステムにおけるネットワーク１０００Ａ，１０００Ｂが接続関係を持っている場合の構成を示す。この場合、仮想ＮＷゲートウェイ処理部３０００Ｂに着目すると、図１４に示すネットワーク１０００Ａは、図１３に示すネットワーク１０００Ｅと同様であると見なせる。よって、図１４に示す仮想ＮＷゲートウェイ処理部３０００Ｂは、図１３に示す仮想ＮＷゲートウェイ処理部３０００Ｂと同様の処理を行う。また、仮想ＮＷゲートウェイ処理部３０００Ａに着目すると、仮想ＮＷゲートウェイ処理部３０００Ａは、仮想ＮＷアドレスと重複しないネットワークアドレスを有するネットワーク１０００Ｂと接続関係を持つだけである。従って、図１に示す仮想ＮＷゲートウェイ処理部３０００Ａと同様に、ネットワークアドレスの重複回避処理を行う。このように、仮想ＮＷゲートウェイ処理部３０００と所属ホスト２０００が存在するネットワーク（１０００Ａ）が、他の仮想ＮＷゲートウェイ処理部３０００とその所属ホスト２０００が存在するネットワーク（１０００Ｂ）と接続関係を持っている場合でも、仮想ＮＷゲートウェイ処理部３０００の構成や動作、効果は変わらない。なお、同一のネットワーク上に仮想ＮＷゲートウェイ処理部３０００とそれぞれの所属ホスト２０００が存在する場合についても同様である。
【０１０７】
図１５に示す仮想ＮＷシステムは、図１３に示す仮想ＮＷシステムと比較すると、ホスト２０００Ｃが、自身の所属している仮想ＮＷゲートウェイ処理部３０００Ｂと同一のネットワーク１０００Ｂではなく、他のネットワーク１０００Ｅに存在している点で異なる。この場合、図１５に示す仮想ＮＷゲートウェイ処理部３０００Ｂは、図１３に示す仮想ＮＷゲートウェイ処理部３０００Ｂと同様の処理を行う。このように、仮想ＮＷゲートウェイ処理部３０００とその所属ホスト２０００とが同一ネットワーク上ではなく、異なるネットワーク上に存在していても、仮想ＮＷゲートウェイ処理部３０００の構成や動作、効果は、図１３に例示する場合と同様である。
【０１０８】
実施形態２．
第２の実施形態は、仮想ＮＷゲートウェイ処理部３０００に新規に所属ホスト２０００を追加した場合に、新規に追加した所属ホスト２０００に関係する基本ＮＷ１０００のネットワークアドレスと、構築済みの仮想ＮＷ５０００の（重複回避）仮想ＮＷアドレスとの重複を回避する実施形態である。
【０１０９】
まず、新規にホストが追加される際の状況について説明する。仮想ＮＷ５０００を構築した仮想ＮＷゲートウェイ処理部３０００にホスト２０００が新規に所属する場合のアドレスの例を図１６に示す。図１６（ａ）〜（ｄ）に示す各例では、ネットワーク１０００Ｆ（10.0.0.0/24 ）上の仮想ＮＷゲートウェイ処理部３０００Ｆは、仮想ＮＷ５０００（12.0.0.0/24 ）を構築済みである。そして、ネットワーク１０００Ｇ（11.0.0.0/24 ）上のホスト２０００Ｇは、仮想ＮＷゲートウェイ処理部３０００Ｆに所属している。なお、図１６（ｃ），（ｄ）に示す例では、本来の仮想ＮＷ５０００の仮想ＮＷアドレスが10.0.0.0/24 であるため、仮想ＮＷゲートウェイ処理部３０００Ｆが既に重複回避処理を行った状態を示している。
【０１１０】
図１６（ａ）〜（ｄ）に示す各状態において、ネットワーク１０００Ｈ上のホスト２０００Ｈが新規に仮想ＮＷゲートウェイ処理部３０００Ｆに所属するとする。ここで、図１６（ａ），（ｃ）に示す場合では、（重複回避）仮想ＮＷアドレスが12.0.0.0/24 であり、ネットワーク１０００Ｈのネットワークアドレスが11.0.0.0/24 である。従って、ホスト２０００Ｈが新規に仮想ＮＷゲートウェイ処理部３０００Ｆに所属しても、ネットワークアドレスの重複は生じないので問題はない。一方、図１６（ｂ），（ｄ）に示す場合では、（重複回避）仮想ＮＷアドレスが12.0.0.0/24 であり、ネットワーク１０００Ｈのネットワークアドレスが12.0.0.0/24 である。そのため、ホスト２０００Ｈが新規に仮想ＮＷゲートウェイ処理部３０００Ｆに所属すると、ネットワークアドレスの重複が生じてしまう。第２の実施形態は、図１６（ｂ），（ｄ）に例示するようなアドレス重複に対応するための実施形態である。
【０１１１】
図１７は、第２の実施形態における仮想ＮＷゲートウェイ処理部３０００の構成例を示すブロック図である。第２の実施形態における仮想ＮＷゲートウェイ処理部３０００は、第１の実施形態の仮想ＮＷゲートウェイ処理部３０００の各構成要素を備え、さらに、仮想ＮＷゲートウェイ処理部３０００内のアドレス重複回路処理部３０７０が所属ホスト間データ変換処理部３０７７を有する構成である。図１７において、第１の実施形態と同様の構成要素については、図６と同一の符号を付す。
【０１１２】
以下、本実施形態の仮想ＮＷゲートウェイ処理部３０００の構成要素に関し、第１の実施形態と異なる点について説明し、第１の実施形態と同様の点については説明を省略する。
【０１１３】
本実施形態における仮想ＮＷ情報管理部３０２０は、仮想ＮＷゲートウェイ処理部３０００と各所属ホスト２０００ごとに（重複回避）仮想ＮＷ情報３０２１を管理する。ここで、仮想ＮＷゲートウェイ処理部３０００の仮想ＮＷ情報３０２１と、各所属ホスト２０００の仮想ＮＷ情報３０２１は、仮想ＮＷゲートウェイ処理部３０００が仮想ＮＷ管理部４０００から受信した仮想ＮＷ情報４０１１からそれぞれ生成される。なお、仮想ＮＷゲートウェイ処理部３０００の（重複回避）仮想ＮＷ情報や、各所属ホスト２０００の（重複回避）仮想ＮＷ情報を、それぞれ、「仮想ＮＷゲートウェイ処理部３０００用」、「所属ホスト２０００用」という文言で表す場合がある。また、仮想ＮＷ情報管理部３０２０に保存される前の（重複回避）仮想ＮＷ情報には符号“４０１１”を用い、仮想ＮＷ情報管理部３０２０に保存された（重複回避）仮想ＮＷ情報には符号“３０２１”を用いる点ついては、既に説明したとおりである。
【０１１４】
仮想ＮＷゲートウェイ処理部３０００の仮想ＮＷ情報３０２１と、各所属ホスト２０００の仮想ＮＷ情報３０２１とでは、仮想ＮＷゲートウェイ情報テーブル（図４参照）および所属関係情報テーブル（図５参照）の内容は共通である。よって、仮想ＮＷゲートウェイ処理部３０００および各所属ホスト２０００の仮想ＮＷ情報３０２１において、仮想ＮＷゲートウェイ情報テーブルおよび所属関係情報テーブルを共有してもよい。一方、仮想ＮＷアドレス情報テーブル（図２参照）および仮想ホスト情報テーブル（図３参照）に関しては、それぞれ、第２の実施家形態における重複回避仮想ＮＷ情報生成処理の結果が反映される。仮想ＮＷアドレス情報テーブル（図２参照）および仮想ホスト情報テーブル（図３参照）のデータ構造自体は、共通である。
【０１１５】
例えば、図１の仮想ＮＷシステムにおいて、仮想ＮＷゲートウェイ処理部３０００ＡがホストＡに関する重複回避仮想ＮＷ情報３０２１を生成したとする。このホストＡの仮想ＮＷ情報３０２１において、仮想ＮＷアドレス情報テーブル（図２と同様のテーブル）の仮想ＮＷアドレスは、ホストＡ用の重複回避仮想ＮＷアドレスとなる。また、仮想ホスト情報テーブル（図３と同様のテーブル）の仮想ホストアドレスは、全てホストＡ用の重複回避仮想ＮＷアドレスに基づいた重複回避仮想ホストアドレスとなる。
【０１１６】
また、本実施形態における仮想ＮＷ情報管理部３０２０は、受信した仮想ＮＷ情報４０１１をそのまま仮想ＮＷ情報３０２１として別途管理してもよい。また、仮想ＮＷ情報管理部３０２０は、同じ内容の（重複回避）仮想ネットワーク情報３０２１に関しては１つにまとめて管理してもよい。
【０１１７】
また、仮想ＮＷゲートウェイ処理部３０００の仮想ＮＷ情報３０２１は、外部の仮想ＮＷゲートウェイ処理部から外部の仮想ＮＷゲートウェイ処理部へデータを転送する際に使用される。従って、仮想ＮＷゲートウェイ処理部３０００の仮想ＮＷ情報３０２１における仮想ホスト情報テーブル（図３と同様のテーブル）では、その所属ホスト２０００以外のホストについての情報のみ含まれていればよい。但し、仮想ＮＷゲートウェイ処理部３０００と同じ（重複回避）仮想ＮＷアドレスを使用する各所属ホスト２０００の（重複回避）仮想ＮＷ情報３０２１を１つにまとめて処理する場合には、仮想ホスト情報テーブルは全てのホスト情報を含む必要がある。また、仮想ＮＷゲートウェイ処理部３０００の仮想ＮＷ情報３０２１における仮想ＮＷアドレス情報テーブルは、各所属ホスト２０００に関する重複回避仮想ＮＷ情報を生成するかどうかの判断に使用する。
【０１１８】
本実施形態におけるトンネル処理部３０３０は、仮想ＮＷゲートウェイ処理部３０００用や各所属ホスト２０００用の（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１に基づいて、所属ホスト２０００以外の仮想ホスト用に外部トンネルを構築する。また、トンネル処理部３０３０は、各所属ホスト２０００用の（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１、および所属ホスト情報３０１１に基づいて、各所属ホスト２０００の仮想ホスト用に内部トンネルを構築し、その各所属ホスト２０００の内部トンネルインタフェースに各所属ホスト２０００の（重複回避）仮想ホストアドレスが設定されるように各所属ホスト２０００に通知する。
【０１１９】
本実施形態におけるルーティング情報処理部３０４０は、仮想ＮＷゲートウェイ処理部３０００用や各所属ホスト２０００用の（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１に基づいて、所属ホスト２０００以外の（重複回避）仮想ホストアドレス宛てのデータをトンネル処理部３０３０が構築した適切な外部トンネルに入れるように仮想ＮＷゲートウェイ処理部３０００のルーティングテーブルを設定する。また、ルーティング情報処理部３０４０は、各所属ホスト２０００用の（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１に基づいて、各所属ホスト２０００の（重複回避）仮想ホストアドレス宛てのデータをトンネル処理部３０３０が構築した適切な内部トンネルに入れるように仮想ＮＷゲートウェイ処理部３０００のルーティングテーブルを設定する。
【０１２０】
本実施形態におけるルーティング情報管理部３０６０は、仮想ＮＷゲートウェイ処理部３０００と各所属ホスト２０００ごとにルーティング情報３０６１を管理する。なお、各所属ホスト２０００用のルーティング情報３０６１には仮想ＮＷゲートウェイ処理部３０００用のルーティング情報３０６１の内容が含まれているが、仮想ＮＷゲートウェイ処理部３０００用のルーティング情報３０６１の内容を除外したルーティング情報３０６１を各所属ホスト２０００用のルーティング情報３０６１としてもよい。
【０１２１】
本実施形態におけるアドレス重複回避処理部３０７０は所属ホスト間データ変換処理部３０７７も有する。
【０１２２】
本実施形態における重複判定処理部３０７１は、仮想ＮＷゲートウェイ処理部３０００や各所属ホスト２０００ごとにネットワークアドレスの重複判定を行う。仮想ＮＷゲートウェイ処理部３０００に関して判定を行う場合、重複判定処理部３０７１は、受信した仮想ＮＷ情報４０１１の仮想ＮＷアドレスと仮想ＮＷゲートウェイ処理部３０００のルーティング情報３０６１の宛先ＮＷアドレスとに重複が生じているか否かを判定する。所属ホスト２０００に関して判定を行う場合、重複判定処理部３０７１は、仮想ＮＷゲートウェイ処理部３０００用の（重複回避）仮想ＮＷアドレスとその所属ホスト２０００のルーティング情報３０６１の宛先ＮＷアドレスに重複が生じているか否かを判定する。
【０１２３】
本実施形態におけるアドレス変換情報管理部３０７２は、仮想ＮＷゲートウェイ処理部３０００用や各所属ホスト２０００用に重複回避仮想ＮＷアドレスを生成する。仮想ＮＷゲートウェイ処理部３０００に関する処理を行う場合、アドレス変換情報管理部３０７２は、仮想ＮＷゲートウェイ処理部３０００のルーティング情報３０６１における宛先ＮＷアドレスと重複しないように、仮想ＮＷゲートウェイ処理部３０００用の重複回避仮想ＮＷアドレスを生成する。なお、所属ホスト２０００の重複判定においてネットワークアドレスに重複が生じていると判定される可能性を低減するために、仮想ＮＷゲートウェイ処理部３０００のルーティング情報３０６１だけでなく、各所属ホスト２０００のルーティング情報３０６１も使用してもよい。また、所属ホスト２０００に関する処理を行う場合、アドレス変換情報管理部３０７２は、仮想ＮＷゲートウェイ処理部３０００とその所属ホスト２０００のルーティング情報３０６１の宛先ＮＷアドレスと重複しない所属ホスト２０００用の重複回避仮想ＮＷアドレスを生成する。なお、アドレス変換情報管理部３０７２は、各所属ホスト２０００用のアドレス変換情報３０７３を参照するなどして、他の所属ホスト２０００と可能な限り同一の重複回避仮想ＮＷアドレスを生成してもよい。そのようにすれば、仮想ＮＷゲートウェイ処理部３０００の処理や管理が簡略化できる。
【０１２４】
また、アドレス変換情報管理部３０７２は、仮想ＮＷゲートウェイ処理部３０００用や各所属ホスト２０００用にアドレス変換情報３０７３を生成し、管理する。ここで、ネットワークアドレスに重複が生じていない所属ホスト２０００に関してアドレス変換情報３０７３を生成するときに、仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３が存在する場合には、アドレス変換情報管理部３０７２は、その所属ホスト２０００用のアドレス変換情報３０７３として、仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３と同内容の情報を生成し、管理する。なお、アドレス変換情報管理部３０７２は、同じ内容のアドレス変換情報３０７３を１つにまとめて管理してもよい。
【０１２５】
本実施形態における重複回避仮想ＮＷ情報生成処理部３０７４は、仮想ＮＷゲートウェイ処理部３０００用や各所属ホスト２０００用のアドレス変換情報３０７３に基づいて、仮想ＮＷ情報４０１１から仮想ＮＷゲートウェイ処理部３０００用や各所属ホスト２０００用の重複回避仮想ＮＷ情報４０１１を生成する。なお、重複回避仮想ＮＷ情報生成処理部３０７４は、同じ内容の重複回避仮想ＮＷ情報４０１１を１つにまとめて管理してもよい。
【０１２６】
本実施形態における外部トンネル構築情報変換処理部３０７５は、仮想ＮＷゲートウェイ処理部３０００用や各所属ホスト２０００用のアドレス変換情報３０７３に基づいて、トンネル処理部３０３０が外部トンネルを構築する際に送受信するトンネル構築情報に含まれる仮想ＮＷアドレスと、仮想ＮＷゲートウェイ処理部３０００用や各所属ホスト２０００用の重複回避仮想ＮＷアドレスとを相互変換する設定を行う。
【０１２７】
本実施形態における外部トンネルデータ変換処理部３０７６は、仮想ＮＷゲートウェイ処理部３０００用や各所属ホスト２０００用のアドレス変換情報３０７３に基づいて、トンネル処理部３０３０が構築した外部トンネルのインタフェースにおいて、データに含まれる仮想ＮＷアドレスと重複回避仮想ＮＷアドレスとを相互変換する設定を行う。
【０１２８】
外部トンネルデータ変換処理部３０７６は、仮想ＮＷゲートウェイ処理部３０００に関する処理を行う場合、以下のように処理を行う。すなわち、外部トンネルデータ変換処理部３０７６は、トンネル処理部３０３０が構築した外部トンネルのインタフェースにおいて、データの送信元と宛先のどちらも他の仮想ＮＷゲートウェイ処理部３０００に所属している仮想ホストであり、データが仮想ＮＷゲートウェイ処理部３０００を経由する場合に、データに含まれる仮想ＮＷアドレスと仮想ＮＷゲートウェイ処理部３０００用の重複回避仮想ＮＷアドレスとを相互変換する設定を行う。この設定は、仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３に基づいて行う。
【０１２９】
また、外部トンネルデータ変換処理部３０７６は、所属ホスト２０００に関する処理を行う場合、以下のように処理を行う。すなわち、外部トンネルデータ変換処理部３０７６は、トンネル処理部３０３０が構築した外部トンネルのインタフェースにおいて、データの送信元と宛先のどちらかがその所属ホスト２０００である場合に、データに含まれる仮想ＮＷアドレスとその所属ホスト２０００用の重複回避仮想ＮＷアドレスを相互変換する設定を行う。この設定は、その所属ホスト２０００用のアドレス変換情報３０７３に基づいて行う。
【０１３０】
本実施形態における所属ホスト間データ変換処理部３０７７は、異なる内容の（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１を用いる所属ホスト２０００の組み合わせを選択する。そして、その組み合わせにおける一方の所属ホスト２０００が送信元となっていて、他方の所属ホスト２０００が宛先となっているデータに関して、その二つの所属ホスト２０００用の（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１に基づいて、データに含まれている送信元の所属ホスト２０００用の（重複回避）仮想ＮＷアドレスを、宛先の所属ホスト２０００用の（重複回避）仮想ＮＷアドレスに変換する設定を行う。
【０１３１】
例えば、仮想ＮＷゲートウェイ処理部３０００にホストＡ，Ｂが所属しているとする。ここで、ホストＡの（重複回避）仮想ＮＷアドレスが「11.0.0.0/24 」であり、ホストＢの（重複回避）仮想ＮＷアドレスが「12.0.0.0/24 」であるとする。ホストＡがホストＢにデータを送信すると、そのデータにおいて、送信元アドレスはホストＡのアドレス（例えば、11.0.0.1）であり、宛先アドレスはホストＢのアドレス（例えば、11.0.0.2）である。一方、ホストＢが受信するデータにおいて、送信元のホストＡのアドレスは、例えば、12.0.0.1となっていて、宛先のホストＢのアドレスは、例えば、12.0.0.2になっていなければならない。所属ホスト間データ変換処理部３０７７は、所属ホスト間同士のデータの送受信におけるデータ内のアドレス変換を行うように設定する。
【０１３２】
所属ホスト間データ変換処理部３０７７は、例えば、プログラムに従って動作するコンピュータのＣＰＵによって実現される。この場合、ＣＰＵが、プログラムに従って、所属ホスト間データ変換処理部３０７７や、仮想ＮＷゲートウェイ処理部３０００内の他の各構成要素として動作すればよい。
【０１３３】
次に、本実施形態における仮想ＮＷゲートウェイ処理部３０００の重複回避仮想ＮＷ情報生成に関する動作を、図１８を参照して説明する。第１の実施形態における重複回避仮想ＮＷ情報生成に関する動作（図１０参照）と比較すると、ステップＳ１０９が追加されている点が異なるが、他の動作は図１０に示す処理と同様である。第１の実施形態と同様の動作に関しては、第１の実施形態と同一のステップ番号を付す。
【０１３４】
また、第２の実施形態では、仮想ＮＷゲートウェイ処理部３０００は、ステップＳ１０２以降の処理を、仮想ＮＷゲートウェイ処理部３０００や各所属ホスト２０００ごとに行う。なお、仮想ＮＷゲートウェイ処理部３０００は、仮想ＮＷ管理部４０００から仮想ＮＷ情報４０１１を初めて受信した場合には、仮想ＮＷゲートウェイ処理部３０００に関する処理を終えてから各所属ホスト２０００に関する処理を行う。
【０１３５】
まず、仮想ＮＷゲートウェイ処理部３０００に関して処理を行う場合について説明する。仮想ＮＷゲートウェイ処理部３０００は仮想ＮＷ管理部４０００から仮想ＮＷ情報４０１１を受信すると（ステップＳ１０１）、初めて仮想ＮＷゲートウェイ処理部３０００用の仮想ＮＷ情報４０１１を受信した場合（ステップＳ１０２のＹ）には、重複判定処理部３０７１が、その仮想ＮＷ情報４０１１の仮想ＮＷアドレスと、仮想ＮＷゲートウェイ処理部３０００のルーティング情報３０６１に含まれる宛先ＮＷアドレスとに重複が生じているか否かの判定する（ステップＳ１０３）。
【０１３６】
ステップＳ１０３の判定の結果、ネットワークアドレスに重複が生じている場合（ステップＳ１０４のＹ）、アドレス変換情報管理部３０７２が、仮想ＮＷゲートウェイ処理部３０００用の重複回避仮想ＮＷアドレスとして、仮想ＮＷゲートウェイ処理部３０００のルーティング情報３０６１に含まれる宛先ＮＷアドレスと重複しない重複回避仮想ＮＷアドレスを生成する（ステップＳ１０５）。続いて、アドレス変換情報管理部３０７２は、仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３として、仮想ＮＷアドレスと仮想ＮＷゲートウェイ処理部３０００用の重複回避仮想ＮＷアドレスとの間のアドレス変換情報を生成する（ステップＳ１０６）。
【０１３７】
そして、重複回避仮想ＮＷ情報生成処理部３０７４が、仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３に基づいて、仮想ＮＷ情報４０１１から、仮想ＮＷゲートウェイ処理部３０００用の重複回避仮想ＮＷ情報４０１１を生成する（ステップＳ１０７）。
【０１３８】
仮想ＮＷゲートウェイ処理部３０００用の仮想ＮＷ情報４０１１の受信が初めてでなく（ステップＳ１０２のＮ）、仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３が存在する場合（ステップＳ１０８のＹ）、重複回避仮想ＮＷ情報生成処理部３０７４は、ステップＳ１０７の処理を行う。また、仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３が存在しない場合（ステップＳ１０８のＮ）、受信した仮想ＮＷ情報４０１１を、仮想ＮＷゲートウェイ処理部３０００用の仮想ＮＷ情報４０１１とする。
【０１３９】
また、ステップＳ１０３の判定の結果、ネットワークアドレスに重複が生じていない場合には（ステップＳ１０４のＮ）、例えば、アドレス変換情報管理部３０７２が、仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３が存在しているかを判定する（ステップＳ１０９）。ただし、仮想ＮＷゲートウェイ処理部３０００に関する処理において、ステップＳ１０９に移行した場合には、仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３は存在しない（ステップＳ１０９のＮ）。この場合、受信した仮想ＮＷ情報４０１１を、仮想ＮＷゲートウェイ処理部３０００用の仮想ＮＷ情報４０１１とする。
【０１４０】
なお、上記のステップＳ１０２における、仮想ＮＷゲートウェイ処理部３０００用の仮想ＮＷ情報４０１１を初めて受信したか否かの判定は、少なくとも、仮想ＮＷゲートウェイ処理部３０００用の仮想ＮＷ情報３０２１が存在するか否かの判定によって行うことができる。すなわち、仮想ＮＷゲートウェイ処理部３０００用の仮想ＮＷ情報３０２１が保存されていなければ、初めての受信であると判定し、仮想ＮＷゲートウェイ処理部３０００用の仮想ＮＷ情報３０２１が保存されていれば、初めての受信ではないと判定することができる。
【０１４１】
また、ステップＳ１０３の判定処理では、重複判定処理部３０７１は、受信した仮想ＮＷ情報４０１１の仮想ＮＷアドレスと、仮想ＮＷゲートウェイ処理部３０００のルーティング情報３０６１に含まれる宛先ＮＷアドレスとの重複だけでなく、受信した仮想ＮＷ情報４０１１の仮想ＮＷアドレスと、所属ホスト２０００のルーティング情報３０６１とに重複が生じているか否かの判定を行ってもよい。
【０１４２】
また、ステップＳ１０５において、アドレス変換情報管理部３０７２は、仮想ＮＷゲートウェイ処理部３０００用の重複回避仮想ＮＷアドレスとして、仮想ＮＷゲートウェイ処理部３０００のルーティング情報３０６１に含まれる宛先ＮＷアドレス、および、所属ホスト２０００のルーティング情報３０６１に含まれる宛先ＮＷアドレスと重複しない重複回避仮想ＮＷアドレスを生成してもよい。
【０１４３】
次に、所属ホスト２０００に関して処理を行う場合について説明する。なお、所属ホスト２０００に関する処理を行う場合における、その所属ホストを該当所属ホストと記す場合がある。仮想ＮＷゲートウェイ処理部３０００は仮想ＮＷ管理部４０００から仮想ＮＷ情報４０１１を受信すると（ステップＳ１０１）、該当所属ホスト２０００用の仮想ＮＷ情報４０１１を初めて受信した場合（ステップＳ１０２のＹ）には、重複判定処理部３０７１が、仮想ＮＷゲートウェイ処理部３０００用の（重複回避）仮想ＮＷアドレスと、該当所属ホスト２０００のルーティング情報３０６１の宛先ＮＷアドレスとに重複が生じているか否かを判定する（ステップＳ１０３）。なお、仮想ＮＷゲートウェイ処理部３０００に関してアドレス重複が生じていた場合であっても、生じていない場合であっても、ステップＳ１０２で初めての受信と判定した場合には、ステップＳ１０３を実行することになる。
【０１４４】
ステップＳ１０３の判定の結果、ネットワークアドレスに重複が生じている場合（ステップＳ１０４のＹ）、アドレス変換情報管理部３０７２が、仮想ＮＷゲートウェイ処理部３０００のルーティング情報３０６１における宛先ＮＷアドレスおよび該当所属ホスト２０００のルーティング情報３０６１における宛先ＮＷアドレスと重複しない該当所属ホスト２０００用の重複回避仮想ＮＷアドレスを生成する（ステップＳ１０５）。続いて、アドレス変換情報管理部３０７２は、該当所属ホスト２０００用のアドレス変換情報３０７３として、仮想ＮＷアドレスと該当所属ホスト２０００用の重複回避仮想ＮＷアドレスとの間のアドレス変換情報３０７３を生成する（ステップＳ１０６）。
【０１４５】
そして、重複回避仮想ＮＷ情報生成処理部３０７４が、該当所属ホスト２０００用のアドレス変換情報３０７３に基づいて、仮想ＮＷ情報４０１１から、該当所属ホスト２０００用の重複回避仮想ＮＷ情報４０１１を生成する（ステップＳ１０７）。
【０１４６】
該当所属ホスト２０００用の仮想ＮＷ情報４０１１の受信が初めてでなく（ステップＳ１０２のＮ）、該当所属ホスト２０００用のアドレス変換情報３０７３が存在する場合（ステップＳ１０８のＹ）、重複回避仮想ＮＷ情報生成処理部３０７４は、ステップＳ１０７の処理を行う。また、該当所属ホスト２０００用のアドレス変換情報３０７３が存在しない場合（ステップＳ１０８のＮ）、受信した仮想ＮＷ情報４０１１を該当所属ホスト２０００用の仮想ＮＷ情報４０１１とする。
【０１４７】
また、ステップＳ１０３の判定の結果、ネットワークアドレスに重複が生じていない場合には（ステップＳ１０４のＮ）、例えば、アドレス変換情報管理部３０７２が、仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３が存在しているかを判定する（ステップＳ１０９）。仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３が存在する場合（ステップＳ１０９のＹ）、アドレス変換情報管理部３０７２は、該当所属ホスト２０００用のアドレス変換情報３０７３として、仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３と同じ内容のアドレス変換情報３０７３を生成し（ステップＳ１０６）、ステップＳ１０７に移行する。
【０１４８】
また、ステップＳ１０９において仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３が存在しない場合（ステップＳ１０９のＮ）、受信した仮想ＮＷ情報４０１１を、該当所属ホスト２０００用の仮想ＮＷ情報４０１１とする。
【０１４９】
なお、上記のステップＳ１０２における、該当所属ホスト２０００用の仮想ＮＷ情報４０１１を初めて受信したか否かの判定は、少なくとも、該当所属ホスト２０００用の仮想ＮＷ情報３０２１が存在するか否かの判定によって行うことができる。すなわち、該当所属ホスト２０００用の仮想ＮＷ情報３０２１が保存されていなければ、初めての受信であると判定し、保存されていれば初めての受信ではないと判定することができる。
【０１５０】
また、上記のステップＳ１０５におけるアドレス変換情報管理部３０７２による重複回避仮想ＮＷアドレスの生成は、以下のように行ってもよい。アドレス変換情報管理部３０７２は、仮想ＮＷゲートウェイ処理部３０００のルーティング情報３０６１および該当所属ホスト２０００のルーティング情報３０６１における宛先ＮＷアドレスと重複しない該当所属ホスト２０００用の重複回避仮想ＮＷアドレスとして、該当所属ホスト２０００以外の所属ホスト２０００と同一の重複回避仮想ＮＷアドレスを生成してもよい。このとき、アドレス変換情報管理部３０７２は、該当所属ホスト２０００以外の所属ホスト用のアドレス変換情報３０７３、重複回避仮想ＮＷアドレス、重複回避仮想ＮＷ情報４０１１、重複回避仮想ＮＷ情報３０２１のうち少なくともいずれか１つを参照すればよい。
【０１５１】
また、受信した仮想ＮＷ情報４０１１が差分情報であり、仮想ＮＷゲートウェイ処理部３０００用の（重複回避）仮想ＮＷ情報３０２１が存在する場合に、初めて仮想ＮＷ情報４０１１を受信した該当所属ホストに関しては、以下のように処理を行う。すなわち、ステップＳ１０２〜Ｓ１０７の処理の間、もしくは、ステップＳ１０９の処理の前後で、仮想ＮＷゲートウェイ処理部３０００は受信した仮想ＮＷ情報４０１１に仮想ＮＷ情報３０２１を追加することによって、その時点での全仮想ＮＷ情報を生成する。そして、その全仮想ＮＷ情報を、該当所属ホスト用の仮想ＮＷ情報４０１１とする。なお、仮想ＮＷ情報３０２１が、仮想ＮＷ情報管理部３０２０に管理されている場合には、その仮想ＮＷ情報３０２１を用いればよい。そうでない場合には、少なくとも仮想ＮＷゲートウェイ処理部３０００用の（重複回避）仮想ＮＷ情報３０２１とアドレス変換情報３０７３から仮想ＮＷ情報３０２１を生成し、その仮想ＮＷ情報３０２１を用いればよい。また、該当所属ホストに関する仮想ＮＷ情報４０１１を初めて受信した場合でも、アドレス変換情報３０７３の内容が同じ仮想ＮＷゲートウェイ処理部３０００や各所属ホスト２０００に関して１つにまとめて処理する場合には、以下のように処理すればよい。すなわち、アドレス変換情報管理部３０７２が、該当所属ホスト２０００用に新規のアドレス変換情報３０７３を生成した場合のみ、ステップＳ１０６とステップＳ１０７との間で、仮想ＮＷゲートウェイ処理部３０００は、仮想ＮＷ情報４０１１に仮想ＮＷ情報３０２１を追加することによって、その時点での全仮想ＮＷ情報４０１１を生成する。そして、その全仮想ＮＷ情報を、該当所属ホスト用の仮想ＮＷ情報４０１１とする。
【０１５２】
また、図１８に示す処理を仮想ＮＷゲートウェイ処理部３０００や各所属ホスト２０００ごとに行う態様として、以下の２通り考えられる。第１の態様は、仮想ＮＷゲートウェイ処理部３０００と、仮想ＮＷゲートウェイ処理部３０００が所属ホスト情報３０１１とルーティング情報３０６１で管理している各所属ホスト２０００毎に処理を行う態様である。第２の態様は、仮想ＮＷゲートウェイ処理部３０００と、仮想ＮＷゲートウェイ処理部３０００が受信する仮想ＮＷ情報４０１１に含まれている所属ホスト２０００と、仮想ＮＷ情報３０２１に示されている所属ホスト２０００毎に行う態様である。どちらの態様でも以下のように処理を行う。
【０１５３】
例えば、仮想ＮＷゲートウェイ処理部３０００の所属ホスト２０００がホストＡだけであり、仮想ＮＷゲートウェイ処理部３０００が初めて仮想ＮＷ情報４０１１を受信したとする。この仮想ＮＷ情報４０１１には、ホストＡの情報が含まれている。この場合、仮想ＮＷゲートウェイ処理部３０００は、仮想ＮＷゲートウェイ処理部３０００およびホストＡに関して、それぞれステップＳ１０２からＳ１０３に移行し、ステップＳ１０３以降の処理を行うことになる。
【０１５４】
この状態で、仮想ＮＷゲートウェイ処理部３０００が、別の仮想ＮＷゲートウェイ処理部３０００に所属しているホストＣの情報を含む仮想ＮＷ情報４０１１を受信したとする。この場合、仮想ＮＷゲートウェイ処理部３０００は、仮想ＮＷゲートウェイ処理部３０００およびホストＡに関する処理では、ステップＳ１０２からＳ１０８に移行して、ステップＳ１０８以降の処理を行うことになる。
【０１５５】
次に、仮想ＮＷゲートウェイ処理部３０００の所属ホストとしてホストＢが新規に追加されたとする。この状態で、仮想ＮＷゲートウェイ処理部３０００が、ホストＢの情報を含む仮想ＮＷ情報４０１１を受信したとする。この場合、仮想ＮＷゲートウェイ処理部３０００およびホストＡに関する処理では、ステップＳ１０２からＳ１０８に移行して、ステップＳ１０８以降の処理を行うことになる。一方、ホストＢに関しては、初めて仮想ＮＷ情報４０１１を受信していることになるので、ステップＳ１０２からＳ１０３に移行し、ステップＳ１０３以降の処理を行うことになる。
【０１５６】
次に、本実施形態における仮想ＮＷ５０００を構築する動作を、図１９を参照して説明する。仮想ＮＷゲートウェイ処理部３０００は、重複回避仮想ＮＷ情報を生成するフローチャート（図１８参照）の処理を終了後、仮想ＮＷゲートウェイ処理部３０００用や各所属ホスト２０００用の（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１、および所属ホスト情報３０１１に基づいて、仮想ＮＷ５０００を構築する。図１９は、この処理経過の例を示すフローチャートである。第１の実施形態における仮想ＮＷ５０００構築動作（図１１参照）と比較すると、ステップＳ２１１，Ｓ２１２が追加されている点が異なるが、他の動作は図１１に示す処理と同様である。第１の実施形態と同様の動作に関しては、第１の実施形態と同一のステップ番号を付す。
【０１５７】
第２の実施形態では、仮想ＮＷゲートウェイ処理部３０００は、図１９に示す全処理を、仮想ＮＷゲートウェイ処理部３０００や各所属ホスト２０００ごとに行う。なお、アドレス変換情報３０７３の内容が同じ仮想ＮＷゲートウェイ処理部３０００や各所属ホスト２０００に関しては、１つにまとめて処理してもよい。
【０１５８】
まず、仮想ＮＷゲートウェイ処理部３０００に関して処理を行う場合について説明する。仮想ＮＷゲートウェイ処理部３０００は、仮想ＮＷゲートウェイ処理部３０００用の（重複回避）仮想ＮＷ情報４０１１から、処理対象とする処理対象仮想ホストを決定する（ステップＳ２０１）。仮想ＮＷゲートウェイ処理部３０００は、仮想ＮＷゲートウェイ処理部３０００用の（重複回避）仮想ＮＷ情報４０１１における全ての処理対象仮想ホストに対して、ステップＳ２０１，Ｓ２０２，Ｓ２１１の処理、または、ステップＳ２０１，Ｓ２０２，Ｓ２０４〜Ｓ２０９の処理を実行する。そして、その後、ステップＳ２１０を実行する。
【０１５９】
ステップＳ２０１の次に、仮想ＮＷゲートウェイ処理部３０００は、決定した処理対象仮想ホストが、所属ホスト２０００であるか否かを判定する（ステップＳ２０２）。
【０１６０】
処理対象仮想ホストが所属ホストである場合（ステップＳ２０２のＹ）、仮想ＮＷゲートウェイ処理部３０００は、処理対象仮想ホストが、該当所属ホスト２０００であるか否かを判定する（ステップＳ２１１）。仮想ＮＷゲートウェイ処理部３０００に関して処理を行っている場合には、処理対象仮想ホストは該当所属ホスト２０００でないと判定する（ステップＳ２１１のＮ）。この場合、次の処理対象仮想ホストについて、ステップＳ２０１以降の処理を行う。ステップＳ２１０の処理は全ての処理対象仮想ホストの処理後に実行する。
【０１６１】
ステップＳ２０１で決定した処理対象仮想ホストが所属ホストでない場合には（ステップＳ２０２のＮ）、例えば、アドレス変換情報管理部３０７２が、仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３の有無を判定する（ステップＳ２０４）。
【０１６２】
仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３が存在する場合（ステップＳ２０４のＹ）、外部トンネル構築情報変換処理部３０７５は、仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３に基づいて、トンネル処理部３０３０が処理対象仮想ホスト用の外部トンネルを構築する際に送受信するトンネル構築情報に含まれる仮想ＮＷアドレスと仮想ＮＷゲートウェイ処理部３０００用の重複回避仮想ＮＷアドレスとを相互変換する設定を行う（ステップＳ２０５）。この設定は、第１の実施形態と同様に行えばよい。
【０１６３】
ステップＳ２０５の後、トンネル処理部３０３０は、仮想ＮＷゲートウェイ処理部３０００用の重複回避仮想ＮＷ情報４０１１や重複回避仮想ＮＷ情報３０２１に基づいて、処理対象仮想ホスト用の外部トンネルを構築する（ステップＳ２０６）。なお、既に処理対象仮想ホスト用の外部トンネル構築が完了している場合はこれらの処理を行わなくてもよい。
【０１６４】
仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３が存在しない場合（ステップＳ２０４のＮ）、外部トンネル構築情報変換処理部３０７５がステップＳ２０５の処理を実行せずに、トンネル処理部３０３０がステップＳ２０６を実行する。この場合においても、既に処理対象仮想ホスト用の外部トンネル構築が完了している場合はこの処理（ステップＳ２０６）を行わなくてもよい。
【０１６５】
なお、第１の実施形態で説明したように、トンネル処理部３０３０が処理対象仮想ホスト用の外部トンネルを構築する際にトンネル構築情報の送受信を行わない場合、処理対象仮想ホストが所属ホスト２０００ではないならば（ステップＳ２０２のＮ）、ステップＳ２０６に移行すればよい。
【０１６６】
ステップＳ２０６の後、仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３が存在する場合（ステップＳ２０７のＹ）、外部トンネルデータ変換処理部３０７６は、トンネル処理部３０３０が構築した処理対象仮想ホスト用の外部トンネルのインタフェースにおいて、所定のデータに含まれる仮想ＮＷアドレスと仮想ＮＷゲートウェイ処理部３０００用の重複回避仮想ＮＷアドレスを相互変換する設定を行う（ステップＳ２０８）。この所定のデータとは、仮想ＮＷゲートウェイ処理部３０００を経由するデータであって、データの送信元と宛先の組み合わせが処理対象仮想ホストと他の仮想ＮＷゲートウェイ処理部３０００に所属している仮想ホストの組み合わせとなっているデータである。外部トンネルデータ変換処理部３０７６は、ステップＳ２０８におけるアドレス相互変換の設定を、仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３に基づいて行えばよい。また、アドレス相互変換の設定は、第１の実施形態と同様に行えばよい。
【０１６７】
ステップＳ２０８の後、ルーティング情報処理部３０４０は、仮想ＮＷゲートウェイ処理部３０００用の重複回避仮想ＮＷ情報４０１１や重複回避仮想ＮＷ情報３０２１に基づいて、処理対象仮想ホスト宛てのデータをトンネル処理部３０３０が構築した処理対象仮想ホスト用の外部トンネルに入れるように、仮想ＮＷゲートウェイ処理部３０００のルーティングテーブルを設定する（ステップＳ２０９）。なお、既に処理対象仮想ホスト用の外部トンネルインタフェースへの相互変換の設定やルーティングテーブルの設定が完了している場合、完了している処理に関しては処理を行わなくてもよい。また、ルーティング情報処理部３０４０は、ステップＳ２０９の処理を、ステップＳ２０６とステップＳ２０７との間で行ってもよい。
【０１６８】
ステップＳ２０６の後、仮想ＮＷゲートウェイ処理部３０００用のアドレス変換情報３０７３が存在しない場合（ステップＳ２０７のＮ）、外部トンネルデータ変換処理部３０７６がステップＳ２０８の処理を実行せずに、ルーティング情報処理部３０４０がステップＳ２０９の処理を実行する。また、既にルーティングテーブルの設定が完了している場合はこの処理（ステップＳ２０９）を行わなくてもよい。この場合においても、ルーティング情報処理部３０４０は、ステップＳ２０９の処理を、ステップＳ２０６とステップＳ２０７との間で行ってもよい。
【０１６９】
全ての処理対象仮想ホストに対して、ステップＳ２０１，Ｓ２０２，Ｓ２１１の処理、または、ステップＳ２０１，Ｓ２０２，Ｓ２０４〜Ｓ２０９の処理が終わった後、仮想ＮＷ情報管理部３０２０は、仮想ＮＷゲートウェイ処理部３０００用の（重複回避）仮想ＮＷ情報４０１１を、仮想ＮＷゲートウェイ処理部３０００用の（重複回避）仮想ＮＷ情報３０２１として保存する（ステップＳ２１０）。なお、ステップＳ２１０の処理は、ＳＴＡＲＴからステップＳ２１０間のどこで実施してもよい。
【０１７０】
次に、所属ホスト２０００に関して処理を行う場合について説明する。仮想ＮＷゲートウェイ処理部３０００は、該当所属ホスト２０００用の（重複回避）仮想ＮＷ情報４０１１から処理対象とする処理対象仮想ホストを決定する（ステップＳ２０１）。仮想ＮＷゲートウェイ処理部３０００は、該当所属ホスト２０００用の（重複回避）仮想ＮＷ情報４０１１における全ての処理対象仮想ホストに対して、ステップＳ２０１，Ｓ２０２，Ｓ２１１，Ｓ２０３，Ｓ２１２の処理（ステップＳ２１１でＮと判定されステップＳ２０３に移行しない場合も含む。）、または、ステップＳ２０１，Ｓ２０２，Ｓ２０４〜Ｓ２０９の処理を実行する。そして、その後、ステップＳ２１０を実行する。
【０１７１】
ステップＳ２０１の次に、仮想ＮＷゲートウェイ処理部３０００は、決定した処理対象仮想ホストが、所属ホスト２０００であるか否かを判定する（ステップＳ２０２）。
【０１７２】
処理対象仮想ホストが所属ホストである場合（ステップＳ２０２のＹ）、仮想ＮＷゲートウェイ処理部３０００は、処理対象仮想ホストが、該当所属ホストであるか否かを判定する（ステップＳ２１１）。
【０１７３】
処理対象仮想ホストが該当所属ホスト２０００である場合（ステップＳ２１１のＹ）、トンネル処理部３０３０およびルーティング情報処理部３０４０は、処理対象仮想ホストであるその所属ホスト２０００が仮想ＮＷ５０００に参加するための処理を行う（ステップＳ２０３）。ステップＳ２０３において、トンネル処理部３０３０は、まず、該当所属ホスト２０００用の（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ネットワーク情報３０２１と、所属ホスト情報３０１１とに基づいて、処理対象仮想ホストである所属ホスト２０００と内部トンネルを構築する（ステップＳ２０３−１）。次に、トンネル処理部３０３０は、その所属ホスト２０００の内部トンネルインタフェースに処理対象仮想ホストの（重複回避）仮想ホストアドレスが設定されるようにその所属ホスト２０００に通知する（ステップＳ２０３−２）。そして、ルーティング情報処理部３０４０が、該当所属ホスト２０００用の（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１に基づいて、処理対象仮想ホスト宛てのデータを、ステップＳ２０３−１でトンネル処理部３０３０が構築した内部トンネルに入れるように仮想ＮＷゲートウェイ処理部３０００のルーティングテーブルを設定する（Ｓ２０３−３）。
【０１７４】
さらに、所属ホスト間データ変換処理部３０７７は、該当所属ホスト２０００以外の所属ホスト２０００を選択する。そして、所属ホスト間データ変換処理部３０７７は、該当所属ホスト２０００用、および、選択した所属ホスト２０００用の（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１に基づいて、データに含まれる該当所属ホスト２０００用の（重複回避）仮想ＮＷアドレスを、選択した所属ホスト２０００用の（重複回避）仮想ＮＷアドレスに変換する設定を行う。もしくは、データに含まれる選択した所属ホスト２０００用の（重複回避）仮想ＮＷアドレスを該当所属ホスト２０００用の（重複回避）仮想ＮＷアドレスに変換する設定を行う。もしくはそれら両方を行う（ステップＳ２１２）。
【０１７５】
ステップＳ２１２では、（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１の内容が該当所属ホスト２０００と他の所属ホスト２０００とで異なっている場合にのみ、上記のような設定を行ってもよい。
【０１７６】
なお、既に処理対象仮想ホスト用の内部トンネル構築や仮想ホストアドレスの設定、ルーティングテーブルの設定、所属ホスト間データの宛先の所属ホスト２０００用の（重複回避）仮想ＮＷアドレスへの変換設定が完了している場合、完了している処理に関しては処理を行わなくてもよい。また、ステップＳ２０３−２とステップＳ２０３−３の処理はどちらが先であってもよい。また、ステップＳ２１２の処理は、ステップＳ２０３−３の後に限らず、ステップＳ２１１でＹと判定した後であればよい。例えば、ステップＳ２０３−１の前または後、あるいは、ステップＳ２０３−２の前または後、あるいは、ステップＳ２０３−３の前または後で、ステップＳ２１２を行ってもよい。
【０１７７】
また、ステップＳ２１１において、処理対象仮想ホストが該当所属ホスト２０００でないと判定した場合（ステップＳ２１１のＮ）、この場合、次の処理対象仮想ホストについて、ステップＳ２０１以降の処理を行う。ステップＳ２１０の処理はまとめて実行する。
【０１７８】
ステップＳ２０１で決定した処理対象仮想ホストが所属ホスト２０００でない場合には（ステップＳ２０２のＮ）、例えば、アドレス変換情報管理部３０７２が、該当所属ホスト２０００用のアドレス変換情報３０７３の有無を判定する（ステップＳ２０４）。
【０１７９】
該当所属ホスト２０００用のアドレス変換情報３０７３が存在する場合（ステップＳ２０４のＹ）、外部トンネル構築情報変換処理部３０７５は、該当所属ホスト２０００用のアドレス変換情報３０７３に基づいて、トンネル処理部３０３０が処理対象仮想ホスト用の外部トンネルを構築する際に送受信するトンネル構築情報に含まれる仮想ＮＷアドレスと該当所属ホスト２０００用の重複回避仮想ＮＷアドレスとを相互変換する設定を行う（ステップＳ２０５）。この設定は、第１の実施形態と同様に行えばよい。
【０１８０】
ステップＳ２０５の後、トンネル処理部３０３０は、該当所属ホスト２０００用の重複回避仮想ＮＷ情報４０１１や重複回避仮想ＮＷ情報３０２１に基づいて、処理対象仮想ホスト用の外部トンネルを構築する（ステップＳ２０６）。なお、既に処理対象仮想ホスト用の外部トンネル構築が完了している場合はこれらの処理を行わなくてもよい。
【０１８１】
なお、既に説明したように、トンネル処理部３０３０が処理対象仮想ホスト用の外部トンネルを構築する際にトンネル構築情報の送受信を行わない場合、処理対象仮想ホストが所属ホスト２０００ではないならば（ステップＳ２０２のＮ）、ステップＳ２０６に移行すればよい。
【０１８２】
ステップＳ２０６の後、該当所属ホスト２０００用のアドレス変換情報３０７３が存在する場合（ステップＳ２０７のＹ）、外部トンネルデータ変換処理部３０７６は、トンネル処理部３０３０が構築した処理対象仮想ホスト用の外部トンネルのインタフェースにおいて、所定のデータに含まれる仮想ＮＷアドレスと該当所属ホスト２０００用の重複回避仮想ＮＷアドレスを相互変換する設定を行う（ステップＳ２０８）。この所定のデータとは、データの送信元と宛先の組み合わせが処理対象仮想ホストと該当所属ホスト２０００の仮想ホストの組み合わせとなっているデータである。外部トンネルデータ変換処理部３０７６は、ステップＳ２０８におけるアドレス相互変換の設定を、該当所属ホスト２０００用のアドレス変換情報３０７３に基づいて行えばよい。また、アドレス相互変換の設定は、第１の実施形態と同様に行えばよい。
【０１８３】
ステップＳ２０８の後、ルーティング情報処理部３０４０は、該当所属ホスト２０００用の重複回避仮想ＮＷ情報４０１１や重複回避仮想ＮＷ情報３０２１に基づいて、処理対象仮想ホスト宛てのデータをトンネル処理部３０３０が構築した処理対象仮想ホスト用の外部トンネルに入れるように、仮想ＮＷゲートウェイ処理部３０００のルーティングテーブルを設定する（ステップＳ２０９）。なお、既に処理対象仮想ホスト用の外部トンネルインタフェースへの相互変換の設定やルーティングテーブルの設定が完了している場合、完了している処理に関しては処理を行わなくてもよい。また、ルーティング情報処理部３０４０は、ステップＳ２０９の処理を、ステップＳ２０６とステップＳ２０７との間で行ってもよい。
【０１８４】
ステップＳ２０６の処理後に、該当所属ホスト２０００用のアドレス変換情報３０７３が存在しない場合（ステップＳ２０７のＮ）、外部トンネルデータ変換処理部３０７６がステップＳ２０８の処理を実行せずに、ルーティング情報処理部３０４０がステップＳ２０９の処理を実行する。また、既にルーティングテーブルの設定が完了している場合はこの処理（ステップＳ２０９）を行わなくてもよい。この場合においても、ルーティング情報処理部３０４０は、ステップＳ２０９の処理を、ステップＳ２０６とステップＳ２０７との間で行ってもよい。
【０１８５】
全ての処理対象仮想ホストに対して、ステップＳ２０１，Ｓ２０２，Ｓ２１１，Ｓ２０３，Ｓ２１２の処理（ステップＳ２１１でＮと判定されステップＳ２０３に移行しない場合も含む。）、または、ステップＳ２０１，Ｓ２０２，Ｓ２０４〜Ｓ２０９の処理が終わった後、仮想ＮＷ情報管理部３０２０は、該当所属ホスト２０００用の（重複回避）仮想ＮＷ情報４０１１を該当所属ホスト２０００用の（重複回避）仮想ＮＷ情報３０２１として保存する（ステップＳ２１０）。なお、ステップＳ２１０の処理は、ＳＴＡＲＴからステップＳ２１０間のどこで実施してもよい。
【０１８６】
次に、本実施形態において、仮想ＮＷ５０００の構築後に、仮想ＮＷゲートウェイ処理部３０００が受信したデータを転送する際の動作を説明する。図２０は、この動作の例を示すフローチャートである。第１の実施形態におけるデータ転送時の動作（図１２参照）と比較すると、ステップＳ３１２が追加されている点が異なるが、他の動作は図１２に示す処理と同様である。第１の実施形態と同様の動作に関しては、第１の実施形態と同一のステップ番号を付す。ステップＳ３１２以外の動作は、第１の実施形態と同様である。
【０１８７】
本実施形態では、ステップＳ３０３において、データの送信元が所属ホスト２０００であると判定した場合（ステップＳ３０３のＹ）、仮想ＮＷゲートウェイ処理部３０００は以下に示すステップＳ３１２の処理を実行する。すなわち、仮想ＮＷゲートウェイ処理部３０００は、データの宛先が所属ホスト２０００である場合に、所属ホスト間データ変換処理部３０７７が行った設定に基づいて、データをデータの宛先の所属ホスト２０００用の（重複回避）仮想ＮＷアドレスに変換する（ステップＳ３１２）。そして、データ転送処理部３０５０が、ルーティングテーブルに基づいて、データの宛先アドレスに応じて適切にルーティングする（ステップＳ３０６）。なお、ステップＳ３１２の処理において、データの送信元の所属ホスト２０００に関するデータの宛先の所属ホスト２０００用の（重複回避）仮想ＮＷアドレスへの変換は、ステップＳ３０６からステップＳ３１１までの間に行ってもよい。
【０１８８】
本実施形態では、仮想ＮＷゲートウェイ処理部３０００が所属ホスト間データ変換処理部３０７７を備え、仮想ＮＷゲートウェイ処理部３０００や各所属ホスト２０００ごとにネットワークアドレスの重複回避処理を行うので、仮想ＮＷゲートウェイ処理部３０００に新規に所属ホスト２０００を追加した場合でもアドレス重複を回避できる。
【０１８９】
実施形態３．
第３の実施形態は、仮想ＮＷ５０００が複数存在する場合の実施形態である。本実施形態おける仮想ＮＷシステムは、第１の実施形態と同様に、ホスト２０００と、仮想ＮＷゲートウェイ処理部３０００と、仮想ＮＷ管理部４０００とを含む。仮想ＮＷゲートウェイ処理部３０００の構成は、第１の実施形態と同様である（図６参照）。
【０１９０】
ただし、本実施形態では、仮想ＮＷ管理部４０００が仮想ＮＷゲートウェイ処理部３０００に送信する仮想ＮＷ情報４０１１内の仮想ＮＷアドレス情報テーブルおよび仮想ホスト情報テーブルは、複数の仮想ＮＷ５０００に関する情報を含む。
【０１９１】
図２１は、第３の実施形態における仮想ＮＷ情報４０１１内の仮想ＮＷアドレス情報テーブルの一例を示す。第３の実施形態では、仮想ＮＷアドレス情報テーブルは、図２１に示すように、例えば、仮想ＮＷの識別子と仮想ＮＷアドレスとを対応付け、仮想ＮＷ毎の仮想ＮＷアドレスを含む。以下、仮想ＮＷの識別子を“仮想ＮＷ  ＩＤ”と記す。図２１では、仮想ＮＷ５０００が２つ存在し、一方の仮想ＮＷ「Ａ」の仮想ＮＷアドレスが“10.0.0.0/24 ”であり、他方の仮想ＮＷ「Ｂ」の仮想ＮＷアドレスが「10.0.1.0/24 」である場合を例示している。なお、仮想ＮＷ５０００の数は特に限定されず、３つ以上存在していてもよい。
【０１９２】
図２２は、第３の実施形態における仮想ＮＷ情報４０１１内の仮想ホスト情報テーブルの一例を示す。第３の実施形態では、仮想ホスト情報テーブルは、“仮想ＮＷ  ＩＤ”毎に（すなわち、仮想ＮＷ毎に）仮想ホストＩＤと仮想ホストアドレスとの対応関係を示す。仮想ホストは仮想ＮＷ５０００毎に仮想ホストアドレスが割り当てられており、仮想ＮＷ５０００毎に参加できる仮想ホストが決められている。本実施形態における仮想ホスト情報テーブルは、仮想ＮＷ毎に、その仮想ＮＷに参加できる仮想ホストおよびその仮想ホストの仮想ホストアドレスを示している。なお、仮想ＮＷ５０００に参加できる仮想ホストの数は制限されない。図２２では、仮想ＮＷ「Ａ」に、ホストＡ、ホストＢ、ホストＣが所属している場合を例示している。同様に、仮想ＮＷ「Ｂ」に、ホストＢ、ホストＣ、ホストＤが所属している場合を例示している。
【０１９３】
第１の実施形態と比較すると、本実施形態では、各仮想ＮＷゲートウェイ処理部３０００が仮想ＮＷ管理部４０００から受信する仮想ＮＷ情報４０１１には、図２に例示する仮想ＮＷアドレス情報テーブルの代わりに図２１に例示する仮想ＮＷアドレス情報テーブルが含まれる。また、図３に例示する仮想ホスト情報テーブルの代わりに図２１に例示する仮想ホスト情報テーブルが含まれる。なお、各仮想ＮＷゲートウェイ処理部３０００が受信する仮想ＮＷ情報４０１１のうち、仮想ＮＷアドレス情報テーブルおよび仮想ホスト情報テーブル以外の情報は、第１の実施形態と同様である。
【０１９４】
各仮想ＮＷゲートウェイ処理部３０００の重複回避仮想ＮＷ情報の生成に関する動作、および、仮想ＮＷ５０００を構築する際の動作は、仮想ＮＷ５０００毎に行う点以外は、第１の実施形態と同様である。また、仮想ＮＷゲートウェイ処理部３０００が行う他の動作は、第１の実施形態と同様である。
【０１９５】
また、仮想ＮＷゲートウェイ処理部３０００が重複回避仮想ＮＷ情報を生成する場合、ステップＳ１０５（図１０参照）において、以下のように処理を行ってもよい。
【０１９６】
すなわち、ステップＳ１０５で、アドレス変換情報管理部３０７２が、ルーティング情報３０６１内の宛先ＮＷアドレスと重複しない重複回避仮想ＮＷアドレスを生成する際に、処理対象としている仮想ＮＷの宛先ＮＷアドレスだけでなく、他の仮想ＮＷの（重複回避）仮想ＮＷアドレスとも重複しない重複回避仮想ＮＷアドレスを生成してもよい。この重複回避仮想ＮＷアドレスは、処理対象としている仮想ＮＷ用の重複回避仮想ＮＷアドレスである。ステップＳ１０５で、このように重複回避仮想ＮＷアドレスを生成することで、処理対象としている仮想ＮＷ用の重複回避仮想ＮＷアドレスが、他の仮想ＮＷ５０００用の（重複回避）仮想ＮＷアドレスと重複する可能性を低減できる。なお、仮想ＮＷゲートウェイ処理部３０００が処理対象としている仮想ＮＷ以外の仮想ＮＷ５０００を既に構築している場合、ルーティング情報３０６１には、既に構築されているその仮想ＮＷ５０００の仮想ＮＷアドレスが含まれている。既に構築済みの仮想ＮＷ５０００の仮想ＮＷアドレスをルーティング情報３０６１に含める処理は、例えば、ルーティング情報管理部３０６０が行えばよい。
【０１９７】
第３の実施形態によれば、仮想ＮＷ５０００が複数存在する場合でも、第１の実施形態と同様の効果を得ることができる。
【０１９８】
上記の第３の実施形態では、第１の実施形態において、図２１および図２２に例示するテーブルを含む仮想ＮＷ情報４０１１を用いた場合を示した。第２の実施形態において、図２１および図２２に例示するテーブルを含む仮想ＮＷ情報４０１１を用いてもよい。この場合においても、各仮想ＮＷゲートウェイ処理部３０００が、重複回避仮想ＮＷ情報の生成に関する動作、および、仮想ＮＷ５０００を構築する際の動作を、仮想ＮＷ５０００毎に行えばよい。
【０１９９】
実施形態４．
第４の実施形態は、アドレス変換情報管理部３０７２が１つ以上の重複回避仮想ＮＷアドレスを生成する実施形態である。
【０２００】
例えば、図１に例示する仮想ＮＷシステムにおいて、ネットワーク１０００Ａのネットワークアドレスが10.0.0.0/25 であるとする。また、仮想ＮＷアドレスは10.0.0.0/24 である。この場合、アドレス変換情報管理部３０７２は、１つの重複回避仮想ＮＷアドレス10.0.1.0/24 を生成してもよいし、２つの重複回避仮想ＮＷアドレス10.0.0.128/25 と10.0.1.0/25 とを生成してもよい。また、３つ、４つ、・・・、２５６個などのように、さらに多くの重複回避仮想ＮＷアドレスを生成してもよい。ここで、生成する重複回避仮想ＮＷアドレスは互いに重複してはならない。また、生成するすべての重複回避仮想ＮＷアドレスのアドレス空間の合計は仮想ＮＷ５０００のネットワークアドレス空間と同じ大きさであるか、あるいは、それ以上の大きさでなくてはならない。なお、ここでは２つ以上の重複回避仮想ＮＷアドレスを生成する場合はネットワークアドレスやブロードキャストアドレスに関しては除外して考えている。また、この場合の10.0.0.128/25 のように元々ネットワークアドレスが重複していないネットワークアドレスに関しては、アドレス変換情報管理部３０７２は生成しなくてもよいが、ここでは便宜上生成するとしている。
【０２０１】
第４の実施形態における仮想ＮＷゲートウェイ処理部３０００の構成は、第１の実施形態と同様である（図６参照）。本実施形態では、アドレス変換情報管理部３０７２が１つ以上の重複回避仮想ＮＷアドレスを生成する。
【０２０２】
各仮想ＮＷゲートウェイ処理部３０００の重複回避仮想ＮＷ情報の生成に関する動作は、アドレス変換情報管理部３０７２が１つ以上の重複回避仮想ＮＷアドレスを生成する点で第１の実施形態と同様である。ここで、アドレス変換情報管理部３０７２が１つ以上の重複回避仮想ＮＷアドレスを生成できる場合は、重複判定処理部３０７１が受信した仮想ＮＷ情報４０１１に含まれる仮想ホストアドレス単位でネットワークアドレスの重複判定処理を行ってもよい。この場合は、ステップＳ１０２（図１０参照）以降の処理を仮想ＮＷ情報４０１１に含まれる仮想ホストごとに行う。以下、図１０を参照して、第４の実施形態におけるこの場合の重複回避仮想ＮＷ情報の生成動作を説明する。
【０２０３】
仮想ＮＷゲートウェイ処理部３０００が仮想ＮＷ管理部４０００から仮想ＮＷ情報４０１１を受信すると（Ｓ１０１）、以下の処理を行う。仮想ＮＷ情報４０１１に含まれる仮想ホストに関する情報のうち、初めて受信した情報（仮想ホストに関する情報）がある場合（ステップＳ１０２のＹ）、重複判定処理部３０７１は、その仮想ホストの仮想ホストアドレスと、ルーティング情報３０６１内の宛先ＮＷアドレスとに重複が生じているか否かを判定する（ステップＳ１０３）。なお、ステップＳ１０２の処理は、例えば、仮想ＮＷ情報管理部３０２０が行えばよい。
【０２０４】
着目している仮想ホストの仮想ホストアドレスとルーティング情報３０６１内の宛先ＮＷアドレスとに重複が生じている場合（ステップＳ１０４のＹ）、アドレス変換情報管理部３０７２は、着目している仮想ホスト用の重複回避仮想ホストアドレスとして、ルーティング情報３０６１の宛先ＮＷアドレスと重複しない重複回避仮想ホストアドレスを生成する（ステップＳ１０５）。そして、アドレス変換情報管理部３０７２は、着目している仮想ホストの仮想ホストアドレスと、その仮想ホスト用の重複回避仮想ホストアドレスとの間のアドレス変換情報３０７３を生成する（ステップＳ１０６）。ステップＳ１０６では、着目している仮想ホストの仮想ホストアドレスと、その仮想ホスト用の重複回避仮想ホストアドレスとを対応付けることによりアドレス変換情報３０７３を生成すればよい。
【０２０５】
仮想ＮＷ情報４０１１に含まれる仮想ホストに関する情報のうち、初めて受信する仮想ホストに関する情報がない場合（ステップＳ１０２のＮ）、仮想ＮＷ情報４０１１に含まれる仮想ホストのうち着目する仮想ホストに関して、アドレス変換情報３０７３が存在しているならば（ステップＳ１０８のＹ）、ステップＳ１０７の処理を行うこととする。また、着目する仮想ホストに関して、アドレス変換情報３０７３が存在しないならば（ステップＳ１０８のＮ）、その仮想ホストに関して処理を終了する。また、ステップＳ１０４において重複が生じていない場合にも、着目している仮想ホストに関して処理を終了する。
【０２０６】
仮想ＮＷ情報４０１１に含まれる全ての仮想ホストに対して、ステップＳ１０２〜Ｓ１０６の処理（ステップＳ１０４でＮと判定する場合も含む）、または、ステップＳ１０２，Ｓ１０８の処理が完了した後に、重複回避仮想ＮＷ情報生成処理部３０７４は、アドレス変換情報に基づいて、仮想ＮＷ情報４０１１から重複回避仮想ＮＷ情報４０１１を生成する（ステップＳ１０７）。なお、ステップＳ１０７の処理は、着目している仮想ホストに対するステップＳ１０２〜Ｓ１０６の処理（ステップＳ１０４でＮと判定する場合も含む）、または、ステップＳ１０２，Ｓ１０８の処理が完了する毎に随時行ってもよい。
【０２０７】
なお、ステップＳ１０２の判定は、少なくとも、以下に例示する方法で行うことができる。すなわち、仮想ＮＷ情報３０２１が存在しない場合、または、受信した仮想ＮＷ情報４０１１に含まれている仮想ホストに関する情報であって、仮想ＮＷ情報３０２１に含まれていない情報がある場合に、仮想ＮＷ情報管理部３０２０は、その仮想ホストに関して、初めての受信であると判定すればよい。また、受信した仮想ＮＷ情報４０１１に含まれている仮想ホストに関する情報が仮想ＮＷ情報３０２１に含まれていれば、仮想ＮＷ情報管理部３０２０は、その仮想ホストに関して、初めての受信でないと判定すればよい。
【０２０８】
重複回避仮想ＮＷ情報の生成以外に関する仮想ＮＷゲートウェイ処理部３０００の動作は、第１の実施形態と同様である。
【０２０９】
本実施形態によれば、重複回避仮想ＮＷアドレスとして、１つ以上の重複回避仮想ＮＷアドレスを生成できるので、ネットワークアドレス空間の有効利用を図ることが可能となる。
【０２１０】
上記の例では、１つ以上の重複回避仮想ＮＷアドレス生成を、第１の実施形態に適用した場合を例にして説明したが、１つ以上の重複回避仮想ＮＷアドレス生成を第２の実施形態に適用してもよい。
【０２１１】
実施形態５．
第５の実施形態は、仮想ＮＷゲートウェイ処理部３０００が所属ホスト上に存在する実施形態である。
【０２１２】
図２３は、第５の実施形態における仮想ＮＷゲートウェイ処理部３０００の構成例を示すブロック図である。第５の実施形態における仮想ＮＷゲートウェイ処理部３０００は、所属ホスト上に設けられ、また、第１の実施形態の仮想ＮＷゲートウェイ処理部３０００の各構成要素に加えて、仮想インタフェース処理部３０８０も備える。図２３において、第１の実施形態と同様の構成要素については、図６と同一の符号を付し説明を省略する。
【０２１３】
仮想インタフェース処理部３０８０は、仮想ＮＷゲートウェイ処理部３０００が設けられている所属ホスト２０００に仮想インタフェースを作成し、作成した仮想インタフェースにその所属ホスト２０００の（重複回避）仮想ホストアドレスを設定する。このとき、仮想インタフェース処理部３０８０は、仮想インタフェースに対する（重複回避）仮想ホストアドレスの設定を、（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１に基づいて行う。
【０２１４】
仮想インタフェースは、物理ネットワークインタフェースを仮想化したネットワークインタフェースであり、仮想ネットワークインタフェースと呼ぶことができる。仮想インタフェースの目的は、処理対象仮想ホストと、仮想ＮＷゲートウェイ処理部３０００が設けられた所属ホスト２０００とが一致する場合に、その処理対象仮想ホスト宛のデータをその所属ホスト２０００で終端し、また、他の仮想ホスト宛にデータを送信する際に、そのデータの送信元アドレスを、処理対象仮想ホストの仮想ホストアドレスにすることである。
【０２１５】
仮想インタフェース処理部３０８０は、例えば、プログラムに従って動作するコンピュータのＣＰＵによって実現される。この場合、ＣＰＵが、プログラムに従って、仮想インタフェース処理部３０８０や、仮想ＮＷゲートウェイ処理部３０００内の他の各構成要素として動作すればよい。
【０２１６】
次に、本実施形態における仮想ＮＷ５０００構築時の動作を、第１の実施形態と異なる点に関して説明する。本実施形態では、仮想ＮＷゲートウェイ処理部３０００は、ステップＳ２０２（図１１参照）において、所属対象仮想ホストが所属ホスト２０００であると判定した場合に、所属対象仮想ホストに該当するその所属ホスト２０００が、仮想ＮＷゲートウェイ処理部３０００が設けられている所属ホストであるか否かを判定する。
【０２１７】
所属対象仮想ホストに該当する所属ホスト２０００と、仮想ＮＷゲートウェイ処理部３０００が設けられている所属ホストとが異なっているならば、第１の実施形態で説明したステップＳ２０３以降の処理（図１１参照）を実行すればよい。
【０２１８】
一方、所属対象仮想ホストに該当する所属ホスト２０００と、仮想ＮＷゲートウェイ処理部３０００が設けられている所属ホストとが一致している場合、仮想インタフェース処理部３０８０が、以下に示すステップＳ２０３−４，Ｓ２０３−５の処理を実行する。図２４は、仮想インタフェース処理部３０８０の処理経過の例を示すフローチャートである。
【０２１９】
まず、仮想インタフェース処理部３０８０は、処理対象仮想ホストに該当する所属ホスト２０００に仮想インタフェースを作成する（ステップＳ２０３−４）。なお、その所属ホスト２０００の仮想インタフェースを作成済みである場合には、ステップＳ２０３−４の処理を行わなくてもよい。
【０２２０】
次に、仮想インタフェース処理部３０８０は、（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１に基づいて、処理対象仮想ホストに該当している所属ホスト２０００の（重複回避）仮想ホストアドレスを、ステップＳ２０３−４で作成した仮想インタフェースに設定する（ステップＳ２０３−５）。なお、既にこの設定が完了している場合には、ステップＳ２０３−５の処理を行わなくてもよい。
【０２２１】
このように、所属対象仮想ホストに該当する所属ホスト２０００と、仮想ＮＷゲートウェイ処理部３０００が設けられている所属ホストとが一致するか否かを判定し、一致する場合にステップＳ２０３−４，Ｓ２０３−５の処理を行う。そして、（重複回避）仮想ＮＷ情報４０１１における全ての処理対象仮想ホストに対して、ステップＳ２０１，Ｓ２０２，Ｓ２０３の処理、あるいは、ステップＳ２０１，Ｓ２０２，Ｓ２０３−４，Ｓ２０３−５、あるいは、ステップＳ２０１，Ｓ２０２，Ｓ２０４〜Ｓ２０９の処理が終わった後、仮想ＮＷ情報管理部３０２０はステップＳ２１０（図１１参照）を実行する。なお、ステップＳ２１０の処理は、ＳＴＡＲＴからステップＳ２１０間のどこで実施してもよい。
【０２２２】
他の動作に関しては、第１の実施形態と同様である。
【０２２３】
また、重複回避仮想ＮＷ情報の生成に関する動作やデータ転送時の動作は、第１の実施形態と同様である。
【０２２４】
なお、本実施形態において、仮想ＮＷゲートウェイ処理部３０００の所属ホストが、その仮想ＮＷゲートウェイ処理部３０００が設けられている所属ホストのみであるならば、仮想ＮＷゲートウェイ処理部３０００は所属ホスト情報管理部３０１０を備えず、所属ホスト情報３０１１を保持しない構成であってもよい。
【０２２５】
本実施形態によれば、仮想ＮＷゲートウェイ処理部３０００が所属ホスト２０００上に存在してもよいので、仮想ＮＷシステムの構成の自由度が高くなる。また、仮想ＮＷゲートウェイ処理部３０００の所属ホストが、その仮想ＮＷゲートウェイ処理部３０００が設けられている所属ホストのみである場合には、所属ホスト情報管理部３０１０を備えていなくてもよいので構成をさらに簡略化することができる。
【０２２６】
また、上記の説明では、第１実施形態における仮想ＮＷゲートウェイ処理部３０００に仮想インタフェース処理部３０８０を追加し、所属ホスト２０００に仮想ＮＷゲートウェイ処理部３０００を設ける場合を例にして説明した。同様に、第２の実施形態における仮想ＮＷゲートウェイ処理部３０００に仮想インタフェース処理部３０８０を追加し、所属ホスト２０００に仮想ＮＷゲートウェイ処理部３０００を設けてもよい。
【０２２７】
実施形態６．
第６の実施形態は、所属ホスト２０００が仮想ＮＷ５０００に参加するために、仮想ＮＷゲートウェイ処理部３０００がＮＡＴ処理を行う実施形態である。
【０２２８】
図２５は、第６の実施形態における仮想ＮＷゲートウェイ処理部３０００の構成例を示すブロック図である。第６の実施形態における仮想ＮＷゲートウェイ処理部３０００は、第１の実施形態の仮想ＮＷゲートウェイ処理部３０００の各構成要素に加えて、ＮＡＴ処理部３０９０と、ルーティング情報広告処理部３１００とを備える。図２５において、第１の実施形態と同様の構成要素については、図６と同一の符号を付し説明を省略する。
【０２２９】
ＮＡＴ処理部３０９０は、仮想ＮＷゲートウェイ処理部３０００が受信したデータの送信元アドレスが所属ホスト２０００の基本ホストアドレスである場合に、データに含まれる所属ホスト２０００の基本ホストアドレスをその所属ホスト２０００の（重複回避）仮想ホストアドレスに変換するための設定を行う。また、ＮＡＴ処理部３０９０は、仮想ＮＷゲートウェイ処理部３０００が受信したデータの宛先アドレスが所属ホスト２０００の（重複回避）仮想ホストアドレスである場合に、データに含まれる所属ホスト２０００の（重複回避）仮想ホストアドレスをその所属ホスト２０００の基本ホストアドレスに変換するための設定を行う。ＮＡＴ処理部３０９０は、（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１、所属ホスト情報３０１１に基づいて、これらの設定を行う。
【０２３０】
ルーティング情報広告処理部３１００は、（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１、所属ホスト情報３０１１に基づいて、仮想ＮＷ５０００に関するルーティング情報を、所属ホスト２０００や、所属ホスト２０００が存在するネットワーク上のルータや、所属ホスト２０００と仮想ＮＷゲートウェイ処理部３０００の経路上にあるルータなどに対して広告する設定を行う。ここで、広告されるルーティング情報（仮想ＮＷ５０００に関するルーティング情報）として、例えば、宛先アドレスが（重複回避）仮想ＮＷアドレスである場合に関する情報、宛先アドレスが（重複回避）仮想ホストアドレスである場合に関する情報、送信元アドレスが所属ホスト２０００の基本ホストアドレスであり宛先アドレスが（重複回避）仮想ＮＷアドレスである場合に関する情報、送信元アドレスが所属ホスト２０００の基本ホストアドレスであり宛先アドレスが（重複回避）仮想ホストアドレスである場合に関する情報などが挙げられる。この「仮想ＮＷ５０００に関するルーティング情報」は、ルーティング情報管理部３０６１が管理するルーティング情報３０６１とは異なる情報である。以下、ルーティング情報３０６１と区別するために、「仮想ＮＷ５０００に関するルーティング情報」を仮想ＮＷルーティング情報と記す。
【０２３１】
ＮＡＴ処理部３０９０およびルーティング情報広告処理部３１００は、例えば、プログラムに従って動作するコンピュータのＣＰＵによって実現される。この場合、ＣＰＵが、プログラムに従って、ＮＡＴ処理部３０９０、ルーティング情報広告処理部３１００、および仮想ＮＷゲートウェイ処理部３０００内の他の各構成要素として動作すればよい。
【０２３２】
本実施形態において、仮想ＮＷゲートウェイ処理部３０００の重複回避仮想ＮＷ情報の生成に関する動作は、第１の実施形態におけるステップＳ１０１〜Ｓ１０８（図１０参照）と同様である。
【０２３３】
次に、本実施形態における仮想ＮＷ５０００構築時の動作を、第１の実施形態と異なる点に関して説明する。本実施形態では、仮想ＮＷゲートウェイ処理部３０００がステップＳ２０２（図１１参照）において所属対象仮想ホストが所属ホスト２０００であると判定した場合に、ＮＡＴ処理部３０９０は、処理対象仮想ホストがＮＡＴ処理を行う対象の所属ホスト２０００であるか否かを判定する。ここで、所属ホスト２０００がＮＡＴ処理を行う対象の所属ホスト２０００となるためには、その所属ホスト２０００の基本ホストアドレスのプロトコルと（重複回避）仮想ＮＷアドレスのプロトコルが変換可能であるという条件を満たす必要がある。
【０２３４】
処理対象仮想ホストがＮＡＴ処理を行う対象の所属ホスト２０００ではない場合、トンネル処理部３０３０およびルーティング情報処理部３０４０が第１の実施形態と同様に、ステップＳ２０３−１，Ｓ２０３−２，Ｓ２０３−３を行う。
【０２３５】
また、処理対象仮想ホストがＮＡＴ処理を行う対象の所属ホスト２０００である場合、ステップＳ２０３の例外として、ステップＳ２０３−２の代わりに、ＮＡＴ処理の設定を行うようにした処理を行う。すなわち、トンネル処理部３０３０がステップＳ２０３−１の処理を実行する。そして、ＮＡＴ処理部３０９０が、ＮＡＴ処理の設定（ステップＳ２０３−６と記す。）を行う。そして、ルーティング情報処理部３０４０がステップＳ２０３−３の処理を実行する。
【０２３６】
ステップＳ２０３−６においては、ＮＡＴ処理部３０９０は、データの送信元アドレスが、処理対象仮想ホストとなっている所属ホスト２０００の基本ホストアドレスである場合に、データに含まれるその所属ホスト２０００の基本ホストアドレスを、その所属ホスト２０００の（重複回避）仮想ホストアドレスに変換するための設定を行う。また、ＮＡＴ処理部３０９０は、データの宛先アドレスが、処理対象仮想ホストとなっている所属ホスト２０００の（重複回避）仮想ホストアドレスである場合に、データに含まれるその所属ホスト２０００の（重複回避）仮想ホストアドレスを、その所属ホスト２０００の基本ホストアドレスに変換するための設定を行う。ＮＡＴ処理部３０９０は、（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１、所属ホスト情報３０１１に基づいて、これらの設定を行う。
【０２３７】
また、第６の実施形態では、ステップＳ２１０（図１１参照）の処理を行う前に、ＮＡＴ処理の設定を行った所属ホスト２０００に関して、仮想ＮＷルーティング情報の広告処理（ステップＳ２１３と記す。）を行う点で、第１の実施形態と異なる。本実施形態では、（重複回避）仮想ＮＷ情報４０１１における全ての処理対象仮想ホストに対して、ステップＳ２０１，Ｓ２０２〜Ｓ２０３−３の処理、あるいは、ステップＳ２０１，Ｓ２０２，Ｓ２０４〜Ｓ２０９の処理が終わった後、ルーティング情報広告処理（ステップＳ２１３）を行ってからステップＳ２１０を実行する。なお、ステップＳ２１０の処理は、ＳＴＡＲＴからステップＳ２１０間のどこで実施してもよい。
【０２３８】
ステップＳ２１３においては、ルーティング情報広告処理部３１００は、（重複回避）仮想ＮＷ情報４０１１や（重複回避）仮想ＮＷ情報３０２１、所属ホスト情報３０１１に基づいて、仮想ＮＷルーティング情報を、ＮＡＴ処理の設定を行った所属ホスト２０００や、ＮＡＴ処理の設定を行った所属ホスト２０００が存在するネットワーク上のルータや、ＮＡＴ処理の設定を行った所属ホスト２０００と仮想ＮＷゲートウェイ処理部３０００の経路上にあるルータなどに対して広告する設定を行う。
【０２３９】
仮想ＮＷ５０００構築時の他の動作は、第１の実施形態と同様である。
【０２４０】
次に、仮想ＮＷゲートウェイ処理部３０００が受信したデータを転送する際の動作を、第１の実施形態と異なる点に関して説明する。本実施形態では、ステップＳ３０３においてデータの送信元が所属ホスト２０００であると判定されてステップＳ３０６に移行する場合、および、ステップＳ３０４，Ｓ３０５からステップＳ３０６に移行する場合に、ステップＳ３０６の前にＮＡＴ処理（ステップＳ３１３と記す。）を行う点で、第１の実施形態と異なる。データ転送時の他の動作は第１の実施形態と同様である。
【０２４１】
ステップＳ３１３においては、仮想ＮＷゲートウェイ処理部３０００は、データの送信元アドレスが所属ホスト２０００の基本ホストアドレスである場合に、上記のステップＳ２０３−６の設定に基づいて、データに含まれる所属ホスト２０００の基本ホストアドレスをその所属ホスト２０００の（重複回避）仮想ホストアドレスに変換する。また、仮想ＮＷゲートウェイ処理部３０００は、データの宛先アドレスが所属ホスト２０００の（重複回避）仮想ホストアドレスである場合に、上記のステップＳ２０３−６の設定に基づいて、データに含まれる所属ホスト２０００の（重複回避）仮想ホストアドレスをその所属ホスト２０００の基本ホストアドレスに変換する。
【０２４２】
なお、本実施形態の仮想ＮＷゲートウェイ処理部３０００は、所属ホスト２０００上に存在していてもよい。仮想ＮＷゲートウェイ処理部３０００が所属ホスト２０００上に存在する場合、仮想ＮＷゲートウェイ処理部３０００はその所属ホスト２０００に対しては、仮想ＮＷルーティング情報の広告処理を行わない。従って、仮想ＮＷゲートウェイ処理部３０００が所属ホスト２０００上に存在し、その仮想ＮＷゲートウェイ処理部３０００の所属ホストが他に存在していなければ、ルーティング情報広告処理部３１００はなくてもよい。
【０２４３】
また、本実施形態の仮想ＮＷゲートウェイ処理部３０００がルータ上に存在し、仮想ＮＷゲートウェイ処理部３０００と所属ホスト２０００が同一のネットワーク上に存在し、所属ホスト２０００のデフォルトルートが仮想ＮＷゲートウェイ処理部３０００の存在するルータであるならば、その仮想ＮＷゲートウェイ処理部３０００は、ルーティング情報広告処理部３１００を備えていなくてよい。
【０２４４】
第６の実施形態によれば、仮想ＮＷゲートウェイ処理部３０００においてＮＡＴ処理を行うことによっても所属ホスト２０００を仮想ＮＷ５０００に参加させることが可能となる。
【０２４５】
上記の説明では、第１実施形態における仮想ＮＷゲートウェイ処理部３０００にＮＡＴ処理部３０９０およびルーティング情報広告処理部３１００を追加する場合を例にして説明した。同様に、第２の実施形態における仮想ＮＷゲートウェイ処理部３０００にＮＡＴ処理部３０９０およびルーティング情報広告処理部３１００を追加してもよい。
【０２４６】
また、第３、第４、第５、および第６の実施形態の一部または全部を組み合わせてもよい。
【０２４７】
以上のような各実施形態で説明した発明によれば、仮想ＮＷゲートウェイ処理部３０００や所属ホスト２０００に関係する基本ＮＷ１０００のネットワークアドレスと仮想ＮＷアドレスとが重複していた場合に、仮想ＮＷゲートウェイ処理部３０００は、重複回避仮想ＮＷアドレスを生成する。仮想ＮＷゲートウェイ処理部３０００は、その重複回避仮想ＮＷアドレスと仮想ＮＷアドレスとの間のアドレス変換情報３０７３を生成し、そのアドレス変換情報３０７３に基づいて仮想ＮＷ情報４０１１から重複回避仮想ＮＷ情報４０１１を生成する。そして、その重複回避仮想ＮＷ情報４０１１に基づいて仮想ＮＷ５０００を構築する。また、仮想ＮＷゲートウェイ処理部３０００は、外部トンネルインタフェースにおいて、アドレス変換情報３０７３に基づいて、データに含まれる仮想ＮＷアドレスと重複回避仮想ＮＷアドレスとを相互変換する設定を行う。
【０２４８】
従って、仮想ＮＷゲートウェイ処理部３０００や所属ホスト２０００が、基本ＮＷ１０００や仮想ＮＷ５０００上の通信相手に意図した通りにデータを送信できる。
【０２４９】
また、本発明では、ネットワークアドレスの重複に関係する仮想ＮＷゲートウェイ処理部３０００のみが、自動的にネットワークアドレスの重複を回避する。
【０２５０】
従って、ネットワークアドレスの重複が生じないように事前設定するための綿密な調査が必要でなくなる。また、ネットワークアドレスの重複が生じた場合に、ネットワークアドレスの重複に関係する仮想ＮＷゲートウェイ処理部や所属ホストの基本ネットワークにおいて基本ネットワークアドレス、基本ホストアドレスを再設定したり、または既に全仮想ＮＷゲートウェイ処理部に付与されている仮想ネットワークアドレス、仮想ホストアドレスを再設定したりしなくて済む。
【０２５１】
また、ネットワークアドレスの重複に関係する仮想ＮＷゲートウェイ処理部３０００は、ネットワークアドレスの重複を回避するために仮想ＮＷ管理部４０００や他の仮想ＮＷゲートウェイ処理部３０００と、基本ＮＷ１０００に関する情報の送受信をしなくてよい。
【０２５２】
従って、ネットワークアドレスの重複に関係する仮想ＮＷゲートウェイ処理部３０００がネットワークアドレスの重複を回避する処理をしたとしても、仮想ＮＷ管理部４０００や他の仮想ＮＷゲートウェイ処理部３０００は、影響を受けない。また、この効果の付随効果として、仮想ＮＷのルーティングに混乱が起きないことが挙げられる。さらに、他の仮想ＮＷゲートウェイ処理部３０００との情報の送受信がないので、情報漏洩を防止することができる。
【０２５３】
次に、本発明の最小構成を説明する。図２６は、本発明の最小構成を示すブロック図である。本発明によるネットワークアドレス重複回避装置は、アドレス重複判定手段９１と、重複回避仮想ネットワークアドレス生成手段９２と、アドレス変換情報生成手段９３と、重複回避仮想ネットワーク情報生成手段９４と、データ中継手段９５とを備える。
【０２５４】
アドレス重複判定手段９１は、ネットワークアドレス重複回避装置、および、ネットワークアドレス重複回避装置に所属する所属ホストが宛先とする可能性がある基本ネットワークアドレスである宛先ネットワークアドレスを含むルーティング情報と、仮想ネットワークの構成情報である仮想ネットワーク情報とを用いて、ルーティング情報に含まれている宛先ネットワークアドレスと、仮想ネットワーク情報に含まれている仮想ネットワークアドレスとが重複しているか否かを判定する。
【０２５５】
重複回避仮想ネットワークアドレス生成手段９２は、アドレス重複判定手段９１によって重複していると判定された場合、宛先ネットワークアドレスと重複しない仮想ネットワークアドレスである重複回避仮想ネットワークアドレスを生成する。
【０２５６】
アドレス変換情報生成手段９３は、仮想ネットワーク情報に含まれている仮想ネットワークアドレスと重複回避仮想ネットワークアドレスとの間のアドレス変換情報を生成する。
【０２５７】
重複回避仮想ネットワーク情報生成手段９４は、アドレス変換情報に基づいて、仮想ネットワーク情報から、アドレス重複を回避した仮想ネットワーク情報である重複回避仮想ネットワーク情報を生成する。
【０２５８】
データ中継手段９５は、重複回避仮想ネットワーク情報に基づいた設定により基本ネットワークと仮想ネットワークとの間のデータ中継を行う。
【０２５９】
そのような構成により、仮想ＮＷアドレスと実アドレスとが重複する場合であっても、各ネットワークのゲートウェイとして動作する機器同士が情報の授受を行わずにアドレス重複を回避できる。
【０２６０】
また、上記の各実施形態には、以下のような構成のネットワークアドレス重複回避装置が開示されている。
【０２６１】
（１）１以上のネットワークを含む基本ネットワークと仮想ネットワークとの間のデータ中継を行い、基本ネットワークのネットワークアドレスである基本ネットワークアドレスと、仮想ネットワークのアドレスである仮想ネットワークアドレスとの重複を回避するネットワークアドレス重複回避装置であって、当該ネットワークアドレス重複回避装置、および、当該ネットワークアドレス重複回避装置に所属する所属ホストが宛先とする可能性がある基本ネットワークアドレスである宛先ネットワークアドレスを含むルーティング情報と、仮想ネットワークの構成情報である仮想ネットワーク情報とを用いて、ルーティング情報に含まれている宛先ネットワークアドレスと、仮想ネットワーク情報に含まれている仮想ネットワークアドレスとが重複しているか否かを判定するアドレス重複判定手段（例えば、重複判定処理部３０７１）と、アドレス重複判定手段によって重複していると判定された場合、宛先ネットワークアドレスと重複しない仮想ネットワークアドレスである重複回避仮想ネットワークアドレスを生成する重複回避仮想ネットワークアドレス生成手段（例えば、アドレス変換情報管理部３０７２）と、仮想ネットワーク情報に含まれている仮想ネットワークアドレスと重複回避仮想ネットワークアドレスとの間のアドレス変換情報を生成するアドレス変換情報生成手段（例えば、アドレス変換情報管理部３０７２）と、アドレス変換情報に基づいて、仮想ネットワーク情報から、アドレス重複を回避した仮想ネットワーク情報である重複回避仮想ネットワーク情報を生成する重複回避仮想ネットワーク情報生成手段（例えば、重複回避仮想ＮＷ情報生成処理部３０７４）と、重複回避仮想ネットワーク情報に基づいた設定により基本ネットワークと仮想ネットワークとの間のデータ中継を行うデータ中継手段（例えば、データ転送処理部３０５０）とを備えることを特徴とするネットワークアドレス重複回避装置。
【０２６２】
（２）アドレス重複判定手段が、ネットワークアドレス重複回避装置に関して、ネットワークアドレス重複回避装置の宛先ネットワークアドレスと仮想ネットワークアドレスとが重複しているかを判定し、重複回避仮想ネットワークアドレス生成手段が、アドレスが重複していると判定されたネットワークアドレス重複回避装置に関して、ネットワークアドレス重複回避装置の宛先ネットワークアドレスと重複しないネットワークアドレス重複回避装置用の重複回避仮想ネットワークアドレスを生成し、アドレス変換情報生成手段が、アドレスが重複していると判定されたネットワークアドレス重複回避装置に関して、仮想ネットワークアドレスと重複回避仮想ネットワークアドレスとの間のアドレス変換情報を生成し、重複回避仮想ネットワーク情報生成手段が、アドレスが重複していると判定されたネットワークアドレス重複回避装置に関して、アドレス変換情報に基づいて仮想ネットワーク情報から重複回避仮想ネットワーク情報を生成し、アドレス重複判定手段が、ネットワークアドレス重複回避装置の各所属ホストに関して、所属ホスト毎に、所属ホストの宛先ネットワークアドレスと、ネットワークアドレス重複回避装置用の仮想ネットワークアドレスとが重複しているかを判定し、重複回避仮想ネットワークアドレス生成手段が、アドレスが重複していると判定された所属ホストに関して、ネットワークアドレス重複回避装置および所属ホストの宛先ネットワークアドレスと重複しない所属ホスト用の重複回避仮想ネットワークアドレスを生成し、アドレス変換情報生成手段が、アドレスが重複していると判定された所属ホストに関して、仮想ネットワークアドレスと重複回避仮想ネットワークアドレスとの間のアドレス変換情報を生成し、重複回避仮想ネットワーク情報生成手段が、アドレスが重複していると判定された所属ホストに関して、所属ホスト用に生成されたアドレス変換情報に基づいて仮想ネットワーク情報から重複回避仮想ネットワーク情報を生成し、アドレスが重複していないと判定された所属ホストであって、ネットワークアドレス重複回避装置に関してはアドレスが重複していると判定されている所属ホストに関して、所属ホスト用に生成されたアドレス変換情報に基づいて仮想ネットワーク情報から重複回避仮想ネットワーク情報を生成し、データ中継手段が、各重複回避仮想ネットワーク情報に基づいた設定により基本ネットワークと仮想ネットワークとの間のデータ中継を行うネットワークアドレス重複回避装置。
【０２６３】
（３）アドレス重複判定手段が、ネットワークアドレス重複回避装置に関して、ネットワークアドレス重複回避装置の宛先ネットワークアドレスおよびその所属ホストの宛先ネットワークアドレスと、仮想ネットワークアドレスとが重複しているかを判定するネットワークアドレス重複回避装置。
【０２６４】
（４）重複回避仮想ネットワークアドレス生成手段が、ネットワークアドレス重複回避装置に関して、ネットワークアドレス重複回避装置の宛先ネットワークアドレスおよびその所属ホストの宛先ネットワークアドレスと重複しないネットワークアドレス重複回避装置用の重複回避仮想ネットワークアドレスを生成するネットワークアドレス重複回避装置。
【０２６５】
（５）重複回避仮想ネットワークアドレス生成手段が、所属ホスト用の重複回避仮想ネットワークアドレスを生成する際に、他の所属ホスト用のアドレス変換情報、他の所属ホスト用の重複回避仮想ＮＷアドレス、および、他の所属ホスト用の重複回避仮想ネットワーク情報のうちの少なくともいずれか１つを参照して、他の所属ホスト用の重複回避仮想ネットワークアドレスと同一の重複回避仮想ネットワークアドレスを生成するネットワークアドレス重複回避装置。
【０２６６】
（６）データの送信元と宛先の組み合わせがいずれもネットワークアドレス重複回避装置の所属ホストである場合に、データに含まれる送信元の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスを、宛先の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスに変換する設定を行う変換設定手段（例えば、所属ホスト間データ変換処理部３０７７）を備えるネットワークアドレス重複回避装置。
【０２６７】
（７）変換設定手段が、データに含まれる送信元の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスを、データの宛先の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスに変換する設定を、データの送信元の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスと、データの宛先の所属ホスト用の仮想ネットワークアドレスもしくは重複回避仮想ネットワークアドレスとが異なる場合にのみ行うネットワークアドレス重複回避装置。
【０２６８】
（８）アドレス重複判定手段が、仮想ネットワーク情報に含まれる仮想ネットワーク毎に判定を行い、重複回避仮想ネットワークアドレス生成手段が、仮想ネットワーク情報に含まれる仮想ネットワーク毎に重複回避仮想ネットワークアドレスを生成し、アドレス変換情報生成手段が、仮想ネットワーク情報に含まれる仮想ネットワーク毎にアドレス変換情報を生成し、重複回避仮想ネットワーク情報生成手段が、仮想ネットワーク情報に含まれる仮想ネットワーク毎に重複回避仮想ネットワーク情報を生成するネットワークアドレス重複回避装置。
【０２６９】
（９）アドレス重複判定手段が、仮想ネットワーク情報に含まれる仮想ネットワーク毎に判定を行い、重複回避仮想ネットワークアドレス生成手段が、仮想ネットワーク情報に含まれる仮想ネットワーク毎に重複回避仮想ネットワークアドレスを生成し、アドレス変換情報生成手段が、仮想ネットワーク情報に含まれる仮想ネットワーク毎にアドレス変換情報を生成し、変換設定手段が、仮想ネットワーク情報に含まれる仮想ネットワーク毎にアドレスを変換する設定を行い、重複回避仮想ネットワーク情報生成手段が、仮想ネットワーク情報に含まれる仮想ネットワーク毎に重複回避仮想ネットワーク情報を生成するネットワークアドレス重複回避装置。
【０２７０】
（１０）重複回避仮想ネットワークアドレス生成手段は、重複回避仮想ネットワークアドレスとして、仮想ネットワーク情報に含まれる他の仮想ネットワークの仮想ネットワークアドレスおよび重複回避仮想ネットワークアドレスと重複しないネットワークアドレスを生成するネットワークアドレス重複回避装置。
【０２７１】
（１１）重複回避仮想ネットワークアドレス生成手段は、重複回避仮想ネットワークアドレスとして、互いに重複しないネットワークアドレスであって、当該ネットワークアドレスのアドレス空間の合計が仮想ネットワークアドレス空間の合計以上であるという条件を満たす１以上のネットワークアドレスを生成するネットワークアドレス重複回避装置。
【０２７２】
（１２）重複回避仮想ネットワークアドレス生成手段は、仮想ネットワークアドレスとは異なるプロトコルの重複回避仮想ネットワークアドレスを生成するネットワークアドレス重複回避装置。
【０２７３】
（１３）アドレス重複判定手段によってアドレスが判定された場合に、ネットワークアドレス重複回避装置が他のネットワークアドレス重複回避装置と構築するトンネルに関して、アドレス変換情報に基づいて、仮想ネットワークアドレスと重複回避仮想ネットワークアドレスとの相互変換を設定するアドレス相互変換設定手段（例えば、外部トンネルデータ変換処理部３０７６）を備えるネットワークアドレス重複回避装置。
【０２７４】
（１４）アドレス重複判定手段によってアドレスが判定された場合に、アドレス変換情報に基づいて、ネットワークアドレス重複回避装置が他のネットワークアドレス重複回避装置と送受信するトンネル構築情報に含まれる仮想ネットワークアドレスと重複回避仮想ネットワークアドレスとの相互変換を設定するトンネル構築情報内アドレス相互変換設定手段（例えば、外部トンネル構築情報変換処理部３０７５）を備えるネットワークアドレス重複回避装置。
【産業上の利用可能性】
【０２７５】
本発明は、基本ネットワークと仮想ネットワークでデータを中継する装置におけるアドレス重複回避のために好適に適用される。
【符号の説明】
【０２７６】
１０００  基本ネットワーク
２０００  ホスト
３０００  仮想ＮＷゲートウェイ処理部
３０１０  所属ホスト情報管理部
３０２０  仮想ＮＷ情報管理部
３０３０  トンネル処理部
３０４０  ルーティング情報処理部
３０５０  データ転送処理部
３０６０  ルーティング情報管理部
３０７０  アドレス重複回避処理部
３０７１  重複判定処理部
３０７２  アドレス変換情報管理部
３０７４  重複回避仮想ＮＷ情報生成処理部
３０７５  外部トンネル構築情報変換処理部
３０７６  外部トンネルデータ変換処理部
３０７７  所属ホスト間データ変換処理部
３０８０  仮想インタフェース処理部
３０９０  ＮＡＴ処理部
３１００  ルーティング情報広告処理部
４０００  仮想ＮＷ管理部
４０１０  仮想ＮＷ情報管理部
５０００  仮想ネットワーク
【図１】
2011019007.tif 000003
【図２】
2011019007.tif 000004
【図３】
2011019007.tif 000005
【図４】
2011019007.tif 000006
【図５】
2011019007.tif 000007
【図６】
2011019007.tif 000008
【図７】
2011019007.tif 000009
【図８】
2011019007.tif 000010
【図９】
2011019007.tif 000011
【図１０】
2011019007.tif 000012
【図１１】
2011019007.tif 000013
【図１２】
2011019007.tif 000014
【図１３】
2011019007.tif 000015
【図１４】
2011019007.tif 000016
【図１５】
2011019007.tif 000017
【図１６】
2011019007.tif 000018
【図１７】
2011019007.tif 000019
【図１８】
2011019007.tif 000020
【図１９】
2011019007.tif 000021
【図２０】
2011019007.tif 000022
【図２１】
2011019007.tif 000023
【図２２】
2011019007.tif 000024
【図２３】
2011019007.tif 000025
【図２４】
2011019007.tif 000026
【図２５】
2011019007.tif 000027
【図２６】
2011019007.tif 000028