(57)【要約】【課題】ＩＰ−ＶＰＮを介した接続によって構築されるネットワーク空間全体に対して、１つ１つのノードを特定すること。【解決手段】ルータ１１０は、一方でゲートウェイ１００にアクセスし、他方でＰＣ１１１〜１１３を含むＬＡＮ１１４に接続し、ＰＣ１１１〜１１３のそれぞれをプライベートアドレスを用いて識別することにより、ＬＡＮ１１４内のノード間の通信を制御する。ゲートウェイ１００に接続されるＬＡＮ１１４、ＬＡＮ１２４、１３４を含むネットワークの全体において、ＬＡＮ１１４に割り当てられるプライベートアドレスの範囲を示す割当範囲情報を、ゲートウェイ１００から受信し、受信した割当範囲情報が示す範囲内で、ＰＣ１１１〜１１３に対応したプライベートアドレスを設定する。【選択図】        図１
2006129090.tif 000002
【特許請求の範囲】
【請求項１】
一方でインターネットを介して外部の通信管理装置にアクセスし、他方で複数のノードにより構成される内部ネットワークに接続し、前記複数のノードのそれぞれを、プライベートアドレスを用いて識別することにより前記ノード間の通信を制御する通信装置であって、
前記通信管理装置に接続される複数のローカルエリアネットワークにより構成されるネットワークの全体において、前記内部ネットワークに割り当てられるプライベートアドレスの範囲を示す割当範囲情報を、前記通信管理装置から受信する受信手段と、
前記受信手段によって受信された前記割当範囲情報が示す範囲内で、前記ノードに対応したプライベートアドレスを設定する設定手段と、
を備えることを特徴とする通信装置。
【請求項２】
前記内部ネットワークに含まれるノードから送信されるパケットの宛先を判定する判定手段と、
前記判定手段によって、前記パケットの宛先が前記内部ネットワーク内のノードでないと判定された場合、前記パケットをカプセル化して前記通信管理装置に送信するパケット送信手段と、
を備えることを特徴とする請求項１に記載の通信装置。
【請求項３】
前記ノード間の通信を制御するために、前記プライベートアドレスと前記ノードとの対応関係を記憶する記憶手段を備え、
前記設定手段は、前記受信手段によって受信された前記割当範囲情報が示すプライベートアドレスを、前記記憶手段に記憶させることを特徴とする請求項１または２に記載の通信装置。
【請求項４】
前記通信管理装置から送信されたパケットを受信するパケット受信手段と、
前記パケット受信手段で受信したパケットのカプセル化を解除し、カプセル化を解除されたパケットのヘッダに記述されるプライベートアドレスに基づいて、前記内部ネットワーク内の宛先ノードを特定し、特定された宛先ノードに該カプセル化を解除されたパケットを配信する配信手段と、
を備えることを特徴とする請求項１〜３のいずれか一つに記載の通信装置。
【請求項５】
インターネットを介して接続される通信装置からの要求を受信する受信手段と、
前記受信手段によって前記要求を受信した場合に、前記通信装置によって管理されるネットワーク内のノードであることを特定するプライベートアドレスの範囲を、前記通信装置に割り当てる割当手段と、
前記割当手段によって割り当てられたプライベートアドレスの範囲を示す情報を前記通信装置に送信する送信手段と、
を備えることを特徴とする通信管理装置。
【請求項６】
一方でインターネットを介して通信管理装置にアクセスし、他方で複数のノードにより構成される内部ネットワークに接続する通信装置において、前記複数のノードのそれぞれを、プライベートアドレスを用いて識別することにより前記ノード間の通信を制御する通信方法であって、
前記通信管理装置に接続される複数のローカルエリアネットワークにより構成されるネットワークの全体において、前記内部ネットワークに割り当てられるプライベートアドレスの範囲を示す割当範囲情報を、前記通信管理装置から受信する受信工程と、
前記受信工程によって受信された前記割当範囲情報が示す範囲内で、前記ノードに対応したプライベートアドレスを設定する設定工程と、
を含むことを特徴とする通信方法。
【請求項７】
前記内部ネットワークに含まれるノードから送信されるパケットの宛先を判定する判定工程と、
前記判定工程によって、前記パケットの宛先が前記内部ネットワーク内のノードでないと判定された場合、前記パケットをカプセル化して前記通信管理装置に送信するパケット送信工程と、
を含むことを特徴とする請求項６に記載の通信方法。
【請求項８】
前記通信管理装置から送信されたパケットを受信するパケット受信工程と、
前記パケット受信工程で受信したパケットのカプセル化を解除し、カプセル化を解除されたパケットのヘッダに記述されるプライベートアドレスに基づいて、前記内部ネットワーク内の宛先ノードを特定し、特定された宛先ノードに該カプセル化を解除されたパケットを配信する配信工程と、
を備えることを特徴とする請求項６または７に記載の通信方法。
【請求項９】
通信管理装置と、一方でインターネットを介して該通信管理装置にアクセスし、他方で複数のノードにより構成される内部ネットワークに接続する通信装置の間における通信方法であって、
前記通信管理装置が、前記通信管理装置に接続される複数のローカルエリアネットワークにより構成されるネットワークの全体における、前記内部ネットワークに割り当てられるプライベートアドレスの範囲を前記通信装置に割り当てる割当工程と、
前記通信管理装置が、前記プライベートアドレスの範囲を示す割当範囲情報を、前記通信装置に送信する送信工程と、
前記通信装置が、前記プライベートアドレスの範囲を示す割当範囲情報を、前記通信管理装置から受信する受信工程と、
前記通信装置が、前記送信工程によって送信された前記割当範囲情報が示す範囲内で、前記ノードに対応したプライベートアドレスを設定する設定工程と、
前記通信管理装置が、該通信管理装置に接続される他の通信装置からパケットを受信した場合に、受信したパケットが前記割当工程によって前記通信装置に割り当てられたプライベートアドレスを宛先とするか否かを判定する判定工程と、
前記通信管理装置が、前記判定工程によって前記他の通信装置から受信したパケットが前記通信装置に割り当てられたプライベートアドレスを宛先とすると判定された場合に、前記外部の通信装置から受信したパケットの前記プライベートアドレスを含むデータ部をカプセル化して前記通信装置に送信するパケット送信工程と、
前記通信装置が、前記パケット送信工程によって送信されたパケットを受信して、前記パケットに含まれるプライベートアドレスで特定される宛先のノードに、前記パケットを配信する配信工程と、
を含むことを特徴とする通信方法。
【請求項１０】
インターネットを介して通信管理装置にアクセスし、複数のノードにより構成される内部ネットワークに接続する通信装置において、前記複数のノードのそれぞれを、プライベートアドレスを用いて識別することにより前記ノード間の通信を制御させる通信制御プログラムであって、
前記通信管理装置に接続される複数のローカルエリアネットワークにより構成されるネットワークの全体において、前記内部ネットワークに割り当てられるプライベートアドレスの範囲を示す割当範囲情報を、前記通信管理装置から受信させる受信工程と、
前記受信工程によって受信された前記割当範囲情報が示す範囲内で、前記ノードに対応したプライベートアドレスを設定させる設定工程と、
を含むことを特徴とする通信制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゲートウェイを介して複数のローカルエリアネットワーク間で通信する通信装置、通信管理装置、通信方法および通信制御プログラムに関する。
【背景技術】
【０００２】
複数地点に分散する拠点（ユーザ拠点）を有する企業等が各ユーザ拠点のローカルエリアネットワーク（ＬＡＮ）を接続して社内ネットワーク等を構築するためのＬＡＮ間接続技術として、従来からさまざまな方法が採られてきた。
【０００３】
例えば、各ユーザ拠点間を専用線で接続する専用線サービスが挙げられる。ところが、専用線サービスは非常に高価であり課金が距離に比例して行われる。そこで、ユーザ企業は、利用回線距離をできるだけ節約するために、拠点を珠数つなぎにする形態のＬＡＮ間接続を行っていた。
【０００４】
その後、インターネットの普及により、インターネットを利用して、分散する各ユーザ拠点のＬＡＮ（以降、ユーザネットワークと称する。）を接続することが可能になった。このようなサービスは、インターネットＶＰＮと呼ばれ、物理的な接続拠点数により課金される。なお、ＶＰＮはＶｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋの略であり、仮想閉域網と称される。
【０００５】
次に、このインターネットＶＰＮの仕組みについて説明する。複数のユーザネットワーク拠点間でグローバルインターネットを経由した通信を行うためには、いわゆるトンネル技術が用いられる。各ユーザネットワークにおいて、トンネルを始終端可能な（カプセル化／カプセル化解除可能な）装置であるルータを用意する。
【０００６】
ユーザネットワークからインターネットへパケットを送信する際は、まず、送信元のユーザネットワーク内のルータが、パケットをカプセル化する。すなわち、パケットをそのままデータとして、その上にヘッダを付加する。そして、このカプセル化されたパケットを、インターネットを経由して宛先ユーザネットワークへ送信する。宛先ユーザネットワーク側のルータでは、このパケットを受信すると同時にカプセル化を解除し、宛先ユーザネットワーク内の宛先のノードへルーティングする。
【０００７】
ここで、ＶＰＮとアドレスの関係について説明する。ユーザネットワーク内部では、互いにプライベートアドレスが割り当てられており、この割り当てられたプライベートアドレスにより、相互に通信することが可能である。しかし、このプライベートアドレスは、インターネット全体で使用されるグローバルアドレスとは別のものである。ユーザネットワークの外部ではグローバルアドレスを使用して通信が行われるが、ユーザネットワークの外部からユーザネットワークの内部にアクセスするとき、ユーザネットワークの内部の各ノードにはグローバルアドレスが割り当てられていないので、そのままではアクセスすることができない。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
すなわち、インターネットＶＰＮ（ＩＰ−ＶＰＮ）において、各ユーザネットワークでは、それぞれプライベートアドレスを使用しているため、そのままでは異なるユーザネットワークに属するノード同士で互いにアクセスすることはできない。
【０００９】
このプライベートアドレスが使用されている理由として、グローバルアドレスの枯渇問題がある。グローバルアドレスの数には限界があるので、膨大な数のノードの１つ１つにグローバルアドレスを割り当てるには数が足りない。そこで、インターネットにアクセスするルータやファイアウォールにグローバルアドレスを割り当てておき、一方、このルータやファイアウォールで分けられるユーザネットワークの各ノードにプライベートアドレスを割り当てておく。そしてユーザネットワーク内部では、プライベートアドレスを用いて相互にアクセスが行われる。一方、ユーザネットワーク外部には、グローバルアドレスが割り当てられたルータやファイアウォールを代理（プロキシ）としてアクセスが行われる。
【００１０】
つまり、ユーザネットワーク外部からユーザネットワーク内部にアクセスするとき、ユーザネットワーク内部のどのノードにアクセスする場合であっても、グローバルアドレスによって特定される１つのノードとしてしか見ることができない。すなわち内部ネットワークのノードのそれぞれを外部ノードから特定することができず、したがって、内部ネットワークのノードと、外部ネットワークを構成する１つの閉じたネットワークに含まれるノードを、ピアトゥピアで接続させようとした場合であっても、相互に接続させることができなかった。また、１つ１つのノードが外部から特定できるアドレスを持っていなかったので、他のノードからパケットを受信することができてしまい、セキュリティ上問題があった。
【００１１】
この発明は、上述した従来技術による問題点を解消するため、ＩＰ−ＶＰＮを介した接続によって構築されるネットワーク空間全体に対して、１つ１つのノードを特定し、その特定されたノード間で互いに通信することができる通信装置、通信管理装置、通信方法および通信制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上述した課題を解決し、目的を達成するため、請求項１の発明にかかる通信装置は、一方でインターネットを介して外部の通信管理装置にアクセスし、他方で複数のノードにより構成される内部ネットワークに接続し、前記複数のノードのそれぞれを、プライベートアドレスを用いて識別することにより前記ノード間の通信を制御する通信装置であって、前記通信管理装置に接続される複数のローカルエリアネットワークにより構成されるネットワークの全体において、前記内部ネットワークに割り当てられるプライベートアドレスの範囲を示す割当範囲情報を、前記通信管理装置から受信する受信手段と、前記受信手段によって受信された前記割当範囲情報が示す範囲内で、前記ノードに対応したプライベートアドレスを設定する設定手段と、を備えることを特徴とする。
【００１３】
この請求項１の発明によれば、外部のネットワークに割り当てられているプライベートアドレスと共通のアドレス体系を構築することができる。その結果、共通のアドレス体系が構築されているネットワーク空間全体に対して、１つ１つのノードを特定することができるので、同一のローカルエリアネットワークに属さないノード同士でも、互いに相手を特定して相互に通信することができる。
【００１４】
また、請求項２の発明にかかる通信装置は、請求項１に記載の発明において、前記内部ネットワークに含まれるノードから送信されるパケットの宛先を判定する判定手段と、前記判定手段によって、前記パケットの宛先が前記内部ネットワーク内のノードでないと判定された場合、前記パケットをカプセル化して前記通信管理装置に送信するパケット送信手段と、を備えることを特徴とする。
【００１５】
この請求項２の発明によれば、通信装置に接続されたノードから、ローカルエリアネットワーク外のノードを宛先としてパケットを送信する場合、パケットはカプセル化して送信される。したがって、ユーザは、ローカルエリアネットワークの内外どちらにパケットを送るのかを特に区別せずにパケットを送信することができ、ローカルエリアネットワークの外のノードについても内部ネットワークと同様に相互に通信することができる。
【００１６】
また、請求項３の発明にかかる通信装置は、請求項１または２に記載の発明において、前記ノード間の通信を制御するために、前記プライベートアドレスと前記ノードとの対応関係を記憶する記憶手段を備え、前記設定手段は、前記受信手段によって受信された前記割当範囲情報が示すプライベートアドレスを、前記記憶手段に記憶させることを特徴とする。
【００１７】
この請求項３の発明によれば、ノード間の通信を制御するのに用いられる、プライベートアドレスとノードとの対応関係を使用して、プライベートアドレスを設定することができるので、この記憶手段の更新により既存の通信装置の仕組みを利用して共通のアドレス体系を割り当てることができる。
【００１８】
また、請求項４の発明にかかる通信装置は、請求項１〜３のいずれか一つに記載の発明において、前記通信管理装置から送信されたパケットを受信するパケット受信手段と、前記パケット受信手段で受信したパケットのカプセル化を解除し、カプセル化を解除されたパケットのヘッダに記述されるプライベートアドレスに基づいて、前記内部ネットワーク内の宛先ノードを特定し、特定された宛先ノードに該カプセル化を解除されたパケットを配信する配信手段と、を備えることを特徴とする。
【００１９】
この請求項４の発明によれば、共通のアドレス体系をもった他のネットワークからパケットを受信した場合でも、そのパケットにより特定されるノードと宛先との間で通信させることができる。
【００２０】
また、請求項５の発明にかかる通信管理装置は、インターネットを介して接続される通信装置からの要求を受信する受信手段と、前記受信手段によって前記要求を受信した場合に、前記通信装置によって管理されるネットワーク内のノードであることを特定するプライベートアドレスの範囲を、前記通信装置に割り当てる割当手段と、前記割当手段によって割り当てられたプライベートアドレスの範囲を示す情報を前記通信装置に送信する送信手段と、を備えることを特徴とする。
【００２１】
この請求項５の発明によれば、通信管理装置に接続される通信装置のそれぞれに固有のプライベートアドレスの範囲を割り当てることができる。したがって、通信管理装置の管理下にある各ノードにプライベートアドレスを割り当てることができ、各ノードを特定して通信させることができる。
【００２２】
また、請求項６の発明にかかる通信方法は、一方でインターネットを介して通信管理装置にアクセスし、他方で複数のノードにより構成される内部ネットワークに接続する通信装置において、前記複数のノードのそれぞれを、プライベートアドレスを用いて識別することにより前記ノード間の通信を制御する通信方法であって、前記通信管理装置に接続される複数のローカルエリアネットワークにより構成されるネットワークの全体において、前記内部ネットワークに割り当てられるプライベートアドレスの範囲を示す割当範囲情報を、前記通信管理装置から受信する受信工程と、前記受信工程によって受信された前記割当範囲情報が示す範囲内で、前記ノードに対応したプライベートアドレスを設定する設定工程と、を含むことを特徴とする。
【００２３】
この請求項６の発明によれば、外部のネットワークに割り当てられているプライベートアドレスと共通のアドレス体系を構築することができる。その結果、共通のアドレス体系が構築されているネットワーク空間全体に対して、１つ１つのノードを特定することができるので、同一のローカルエリアネットワークに属さないノード同士でも、互いに相手を特定して相互に通信することができる。
【００２４】
また、請求項７の発明にかかる通信方法は、請求項６に記載の発明において、前記内部ネットワークに含まれるノードから送信されるパケットの宛先を判定する判定工程と、前記判定工程によって、前記パケットの宛先が前記内部ネットワーク内のノードでないと判定された場合、前記パケットをカプセル化して前記通信管理装置に送信するパケット送信工程と、を含むことを特徴とする。
【００２５】
この請求項７の発明によれば、通信装置に接続されたノードから、ローカルエリアネットワーク外のノードを宛先としてパケットを送信する場合、パケットはカプセル化して送信される。したがって、ユーザは、ローカルエリアネットワークの内外どちらにパケットを送るのかを特に区別せずにパケットを送信することができ、ローカルエリアネットワークの外のノードについても内部ネットワークと同様に相互に通信することができる。
【００２６】
また、請求項８の発明にかかる通信方法は、請求項６または７に記載の発明において、前記通信管理装置から送信されたパケットを受信するパケット受信工程と、前記パケット受信工程で受信したパケットのカプセル化を解除し、カプセル化を解除されたパケットのヘッダに記述されるプライベートアドレスに基づいて、前記内部ネットワーク内の宛先ノードを特定し、特定された宛先ノードに該カプセル化を解除されたパケットを配信する配信工程と、を備えることを特徴とする。
【００２７】
この請求項８の発明によれば、共通のアドレス体系をもった他のネットワークからパケットを受信した場合でも、そのパケットにより特定されるノードと宛先との間で通信させることができる。
【００２８】
また、請求項９の発明にかかる通信方法は、通信管理装置と、一方でインターネットを介して該通信管理装置にアクセスし、他方で複数のノードにより構成される内部ネットワークに接続する通信装置の間における通信方法であって、前記通信管理装置が、前記通信管理装置に接続される複数のローカルエリアネットワークにより構成されるネットワークの全体における、前記内部ネットワークに割り当てられるプライベートアドレスの範囲を前記通信装置に割り当てる割当工程と、前記通信管理装置が、前記プライベートアドレスの範囲を示す割当範囲情報を、前記通信装置に送信する送信工程と、前記通信装置が、前記プライベートアドレスの範囲を示す割当範囲情報を、前記通信管理装置から受信する受信工程と、前記通信装置が、前記送信工程によって送信された前記割当範囲情報が示す範囲内で、前記ノードに対応したプライベートアドレスを設定する設定工程と、前記通信管理装置が、該通信管理装置に接続される他の通信装置からパケットを受信した場合に、受信したパケットが前記割当工程によって前記通信装置に割り当てられたプライベートアドレスを宛先とするか否かを判定する判定工程と、前記通信管理装置が、前記判定工程によって前記他の通信装置から受信したパケットが前記通信装置に割り当てられたプライベートアドレスを宛先とすると判定された場合に、前記外部の通信装置から受信したパケットの前記プライベートアドレスを含むデータ部をカプセル化して前記通信装置に送信するパケット送信工程と、前記通信装置が、前記パケット送信工程によって送信されたパケットを受信して、前記パケットに含まれるプライベートアドレスで特定される宛先のノードに、前記パケットを配信する配信工程と、を含むことを特徴とする。
【００２９】
この請求項９の発明によれば、通信管理装置にアクセスするノードの間で、共通のアドレス体系を構築することができる。その結果、共通のアドレス体系が構築されているネットワーク空間全体に対して、１つ１つのノードを特定することができるので、同一のローカルエリアネットワークに属さないノード同士でも、互いに相手を特定して相互に通信することができる。
【００３０】
また、請求項１０の発明にかかる通信制御プログラムは、インターネットを介して通信管理装置にアクセスし、複数のノードにより構成される内部ネットワークに接続する通信装置において、前記複数のノードのそれぞれを、プライベートアドレスを用いて識別することにより前記ノード間の通信を制御させる通信制御プログラムであって、前記通信管理装置に接続される複数のローカルエリアネットワークにより構成されるネットワークの全体において、前記内部ネットワークに割り当てられるプライベートアドレスの範囲を示す割当範囲情報を、前記通信管理装置から受信させる受信工程と、前記受信工程によって受信された前記割当範囲情報が示す範囲内で、前記ノードに対応したプライベートアドレスを設定させる設定工程と、を含むことを特徴とする。
【００３１】
この請求項１０の発明によれば、外部のネットワークに割り当てられているプライベートアドレスと共通のアドレス体系を構築することができる。その結果、共通のアドレス体系が構築されているネットワーク空間全体に対して、１つ１つのノードを特定することができるので、同一のローカルエリアネットワークに属さないノード同士でも、互いに相手を特定して相互に通信することができる。
【発明の効果】
【００３２】
本発明にかかる通信装置、通信管理装置、通信方法および通信制御プログラムによれば、外部のネットワークに割り当てられているプライベートアドレスと共通のアドレス体系を構築することができる。その結果、共通のアドレス体系が構築されているネットワーク空間全体に対して、１つ１つのノードを特定することができるので、同一のローカルエリアネットワークに属さないノード同士でも、互いに相手を特定して相互に通信することができるという効果を奏する。
【発明を実施するための最良の形態】
【００３３】
以下に添付図面を参照して、この発明にかかる通信装置、通信管理装置、通信方法および通信制御プログラムの好適な実施の形態を詳細に説明する。
【００３４】
（実施の形態）
図１は、本発明の実施の形態にかかるネットワークを説明するブロック図である。ゲートウェイ１００を中心に、ルータ１１０、１２０、１３０が接続されている。ゲートウェイ１００およびルータ１１０、１２０、１３０は、いずれもルーティング機能を持つ通信装置であり、受け取ったパケットのヘッダ情報に基づいて転送先を決定し、転送先に応じてヘッダ情報を書き換えてパケットを転送する。１つのゲートウェイ１００にルータ１１０、１２０、１３０が接続されることによるネットワークについて説明するが、ゲートウェイを複数用意して、ゲートウェイ間で相互に接続し、各ゲートウェイに同様にルータを接続する構成にすることもできる。この場合、一方のゲートウェイに接続されるルータから、他のゲートウェイに接続されるルータの間で通信することができる。
【００３５】
ルータ１１０は、ＰＣ１１１〜１１３の間のパケットの転送を制御している。それにより、ルータ１１０は、ＬＡＮ１１４を構成している。同様に、ルータ１２０は、ＰＣ１２１〜１２３の間のパケット転送制御により、ＬＡＮ１２４を構成している。また、ルータ１３０は、ＰＣ１３１〜１３３の間のパケット転送制御により、ＬＡＮ１３４を構成している。
【００３６】
ルータ１１０、１２０、１３０は、いずれもファイアウォール機能を有している。したがって、ルータ１１０、１２０、１３０がインターネットにアクセスすることができる一方で、ＬＡＮ１１４、１２４、１３４は、外部に対してセキュリティが確保されている。
【００３７】
以上のように、ルータ１１０、１２０、１３０に接続されるノードを、ＰＣ１１１〜１１３、ＰＣ１２１〜１２３、ＰＣ１３１〜１３３として説明するが、このノードの例はパーソナルコンピュータに限るものではなく、スキャナ、複写機、プリンタ、およびこれらを含む多機能印刷装置、携帯電話、ＰＤＡ、サーバなど様々な装置とすることができる。
【００３８】
次に、ルータ１１０、１２０、１３０の機能を説明する。ルータ１１０、１２０、１３０は、パケットを受信するとパケットのヘッダに記述されている宛先ＩＰアドレスを参照する。そして、内部に記憶されているルーティングテーブルの検索処理を行い、宛先ＩＰアドレスに対応するノードを決定する。ルーティングテーブルには、ルータ１１０、１２０、１３０に接続されているノードのＭＡＣアドレスとプライベートアドレスが書き込まれている。この実施の形態の場合、このプライベートアドレスが、仮想グローバルアドレスに置き換えられている。
【００３９】
ルータ１１０、１２０、１３０は、宛先ＩＰアドレスに対応させて、パケットのヘッダ部にある宛先ＭＡＣアドレスを、宛先のノードに対応するＭＡＣアドレスに書き換える。さらに、パケットはその他のデータリンクレイヤ処理、電気・光信号処理など物理レイヤ処理をされた後にネットワーク媒体に送出される。
【００４０】
また、ゲートウェイ１００と、ルータ１１０、１２０、１３０のそれぞれの間は、インターネットＶＰＮを用いて接続される。後述するように、ルータ１１０、１２０、１３０は、それぞれ暗号化などの処理を行ってゲートウェイ１００との間にトンネリングを実行する。ここで、パケットをカプセル化して暗号化し、カプセル化されたパケットにヘッダを付加して送信する。カプセル化するとは、このようにパケットをそのままデータ部として、その上にヘッダを付加することをいう。
【００４１】
ゲートウェイ１００は、送信されたパケットを受信する。そして、ゲートウェイ１００は、受け取ったパケットのカプセル化を解除し、宛先となるネットワークを判別する。そして宛先となるネットワーク（例えば、ＬＡＮ１３４とする。）との間で同様にトンネリングを実行し、暗号化などの処理を行ってパケットを送信する。
【００４２】
図２は、ゲートウェイと、ゲートウェイに接続されたＬＡＮの１つの接続構成を説明するブロック図である。ゲートウェイ１００のグローバルアドレス２０１は、「２１０．ｚ．ｗ．１」である。ルータ１１０のグローバルアドレス２０２は、「２１０．ｘ．ｙ．１」である。ゲートウェイ１００とルータ１１０は、インターネットで接続されているので、このグローバルアドレス２０１および２０２に基づいて互いに通信することができる。
【００４３】
一方、ゲートウェイ１００、ルータ１１０およびＰＣ１１１〜１１３には、仮想グローバルアドレス２１１〜２１５が割り当てられる。この仮想グローバルアドレス２１１〜２１５は、プライベートアドレスが割り当てられる。後述するように、この仮想グローバルアドレス２１１〜２１５は、ＬＡＮ１１４だけでなく、ＬＡＮ１２４および１３４を含めた、ゲートウェイ１００との間でＶＰＮ接続が可能な空間全体で使用されるアドレスである。したがって、多くのノードに割り当てる必要があるので、ここではクラスＡのプライベートアドレスを使用する。ＬＡＮ１１４、１２４および１３４で、共通のクラスＡのプライベートアドレスを使用することにより、インターネット空間で隔てられたネットワーク空間に属するノード同士でも、互いに把握することができ、相互にアクセスすることができる。
【００４４】
ＬＡＮ１１４内では、プライベートアドレスである仮想グローバルアドレス２１２〜２１５を用いて通信するが、このプライベートアドレスはインターネット空間では使用することができない。そこでルータ１１０は、ＶＰＮによるトンネリングを実行する。すなわち、受け取ったパケットを全部カプセル化して、送信するパケットのヘッダのＩＰアドレスには、グローバルアドレス２０１および２０２を使用する。それにより、インターネット空間を介してゲートウェイ１００にパケットを送信することができる。
【００４５】
ここで、プライベートアドレスについて説明する。ユーザネットワーク内に接続されるノードには、グローバルアドレスとして割り当てられたクラスのそれぞれに、予約されたアドレスを割り当てていくことができる。グローバルアドレスは３２ビットの情報で構成される。また、ＩＰｖ６の場合、１２８ビットのアドレスで表現される。ここでＩＰｖ４を例に挙げて説明すると、このうち、割り当てられるアドレスは、次のクラスＡ〜クラスＣのいずれかである。
【００４６】
クラスＡは「１０．０．０．０」〜「１０．２５５．２５５．２５５」の約１６００万台分である。クラスＢは、「１７２．１６．０．０」〜「１７２．３１．２５５．２５５」の約６．５万台分である。クラスＣは、「１９２．１６８．０．０」〜「１９２．１６８．２５５．２５５」の約２５４台分である。これらのクラスごとに予約されているアドレスを、プライベートＩＰアドレス、またはプライベートアドレスという。
【００４７】
図３は、ルータ１１０の機能をＢＢルータ３１０とローカルルータ３２０に分けた場合の接続構成を説明するブロック図である。ＢＢルータ３１０は、光ネットワークやＡＤＳＬを介してゲートウェイ１００に接続する。ＢＢルータ３１０は、もう一方でＬＡＮ１１４に含まれる装置との間でパケットを転送制御する。通常のブロードバンドへのアクセスの場合は、ＢＢルータ３１０は、ゲートウェイ１００に接続されるとともに、ＰＣ１１１〜１１３に接続され、ＰＣ１１１〜１１３のインターネット接続を制御する。
【００４８】
この実施の形態においては、ＢＢルータ３１０とＰＣ１１１〜１１３との間に、ローカルルータ３２０を設置する。ローカルルータ３２０は、ＢＢルータ３１０との間にＬＡＮを形成する。すなわち、クラスＣのアドレスが、ＢＢルータ３１０とローカルルータ３２０に割り当てられ、ＢＢルータ３１０のプライベートアドレス３０１は「１９２．１６８．１．１」となり、ローカルルータ３２０のプライベートアドレス３０２は「１９２．１６８．１．２」となる。プライベートアドレス３０１および３０２を用いて、ＢＢルータ３１０およびローカルルータ３２０は相互に通信する。またＢＢルータ３１０のグローバルアドレス２０２は、「２１０．ｘ．ｙ．１」である。このグローバルアドレス２０２を用いて、ＢＢルータ３１０は、インターネット空間に接続を行う。
【００４９】
プライベートアドレスをもつノードから外部のインターネットのサーバにアクセスするに当たっては、ＮＡＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｏｒ）の機能を実現する通信装置を利用して、プロキシと呼ばれる代行処理を行う。ＮＡＴ機能を持つ通信装置は、グローバルアドレスを持っているので、外部のインターネットにアクセスできる。その処理結果は、アクセス要求のあったノードに返される。
【００５０】
ＢＢルータ３１０は、上述のＮＡＴの機能を持つ。ＢＢルータ３１０は、ＮＡＴの機能によりローカルルータ３２０にパケットを渡す。ＢＢルータ３１０は、グローバルアドレスが付加されたパケットを、ＮＡＴの機能を使用してプライベートアドレスに変換する。
【００５１】
このプライベートアドレスにより特定されるネットワークを構成するのは、ＢＢルータ３１０とローカルルータ３２０だけなので、この２つにだけプライベートアドレスが割り当てられる。２台だけなので、クラスＣにより割り当てられ、ＢＢルータ３１０のプライベートアドレスは、「１９２．１６８．１．１」であり、ローカルルータ３２０のプライベートアドレスは、「１９２．１６８．１．２」である。ＢＢルータ３１０は、いわゆるＮＡＴトラバーサルの機能を用いてローカルルータ３２０にパケットを渡すので、ゲートウェイからローカルルータ３２０までがＶＰＮトンネリングの区間ということになる。
【００５２】
この実施の形態における受信処理について説明する。ＢＢルータ３１０は、ゲートウェイ１００からパケットを受信する。そして、受信したパケットのヘッダを、ＮＡＴの機能によりグローバルアドレス２０２およびプライベートアドレス３０１に基づいて書き換える。ＢＢルータ３１０は、ヘッダを書き換えたパケットを、ローカルルータ３２０に送る。
【００５３】
ローカルルータ３２０は、受け取ったパケットのカプセル化を解除し、受信したパケットのデータ部に記述される仮想グローバルヘッダを参照する。そして、仮想グローバルヘッダで記述されるノードにパケットを送信する。
【００５４】
トンネリングの区間はゲートウェイ１００からローカルルータ３２０まで形成されているので、ローカルルータ３２０は、カプセル化された状態でパケットを受け取る。そして、ローカルルータ３２０は、受け取ったパケットのカプセル化を解除する。カプセル化を解除されたパケットは、ヘッダ部のＩＰアドレスが仮想グローバルアドレスで記述されている。この仮想グローバルアドレスは、ローカルルータ３２０およびＰＣ１１１〜１１３により構築されるＬＡＮ１１４のプライベートアドレスとして機能する。
【００５５】
ローカルルータ３２０には、事前にこの仮想グローバルアドレスと各ノードを関係付けて、ローカルルータ３２０内部のルーティングテーブルを書き込んでおく。ローカルルータ３２０は、この仮想グローバルアドレスが反映されたルーティングテーブルを参照して、パケットの宛先を特定する。そして、特定された宛先にパケットを送信する。
【００５６】
このように、ＬＡＮ１１４、１２４、１３４内の各ノードは、仮想グローバルアドレスを使用することにより、複数のＬＡＮにより構築されるネットワーク内でのアドレスが特定されるので、インターネットを隔てたノード間で互いにアクセスすることができる。また、インターネット空間においては、トンネリングによりカプセル化されるので、仮想グローバルアドレスが参照されず、したがって途中のルーティングにおいて混乱が生じない。カプセル化したパケットのヘッダには、グローバルアドレスが書き込まれるので、このグローバルアドレスに基づいて、宛先のネットワークにパケットが届けられる。宛先ではカプセル化が解除され、仮想グローバルアドレスを用いて、宛先ネットワークのノードに送信される。
【００５７】
図４は、ゲートウェイを挟んだローカルエリアネットワーク間でのパケットの送受信を説明するブロック図である。ＰＣ１１１は、まずパケット４１０を作成する。ＰＣ１１１は、送信元の仮想グローバルアドレス２１３および宛先の仮想グローバルアドレス４０１を、パケット４１０のヘッダ４１１に書き込む。パケット４１０は、このヘッダ４１１とデータ部４１２により構成される。そしてＰＣ１１１は、仮想グローバルアドレスが２１２であるルータ１１０に、パケット４１０を送信する。
【００５８】
ルータ１１０は、ＰＣ１１１からパケット４１０を受信し、ヘッダ４１１を判別する。ヘッダ４１１から、宛先がＬＡＮ１１４に含まれるノードであることが判別された場合、ルータ１１０は、ＬＡＮ１１４内のヘッダ４１１により特定されるノードにパケット４１０を送信する。このように、宛先がＬＡＮ１１４の内か外かを判別して、外の場合にパケット４１０をカプセル化することにより、内外のノードをユーザ側からは区別することなく通信することができる。
【００５９】
ルータ１１０は、宛先がＬＡＮ１１４に含まれないノードであることが判別された場合、ゲートウェイ１００にパケット４１０を送ることを決定する。ルータ１１０は、ゲートウェイ１００との間でトンネリングを形成すべく、パケット４１０をカプセル化する。パケット４１０は、暗号化され、パケット４２０のデータ部にカプセル化され、ヘッダ４２１を付加されることにより、パケット４２０が作成される。作成されたパケット４２０は、仮想グローバルアドレスが２１１であるゲートウェイ１００に送信される。
【００６０】
ゲートウェイ１００は、カプセル化されているパケット４２０を受信する。ゲートウェイ１００は、パケット４２０のカプセル化を解除し、データ部にあるパケット４１０のヘッダ４１１を参照して、宛先の仮想グローバルアドレス４０１を判別する。そして、ゲートウェイ１００のルーティングテーブルを参照して、判別した仮想グローバルアドレス４０１が属するネットワーク（ＬＡＮ１２４）を判定する。仮想グローバルアドレス４０１には、グローバルアドレス４０２が対応しているので、ゲートウェイ１００は、宛先アドレスをグローバルアドレス４０２としてヘッダ４３１を作成する。ゲートウェイ１００は、パケット４１０を再びカプセル化し、ヘッダ４３１が付加されたパケット４３０を作成して、仮想グローバルアドレスが４０３であるルータ１２０に送信する。
【００６１】
ルータ１２０は、カプセル化されているパケット４３０を受信する。ルータ１２０は、パケット４３０のカプセル化を解除し、データ部にあるパケット４１０のヘッダ４１１を参照して、宛先の仮想グローバルアドレス４０１を判別する。そして、ルータ１２０のルーティングテーブルを参照して、宛先であるＰＣ１２１にパケット４１０を送信する。そして、ＰＣ１２１は、送信されたパケット４１０を受信するので、セキュリティが確保された状態でＰＣ１１１から受信することが可能となる。
【００６２】
図５は、通信制御装置のハードウェア構成を説明するブロック図である。ここで説明する通信制御装置５００は、ゲートウェイ１００、ルータ１１０、１２０、１３０、ＢＢルータ３１０、およびローカルルータ３２０を総称したものであり、ＣＰＵ５０１、ＲＯＭ５０２、ＲＡＭ５０３、ＨＤＤ５０４、ネットワークＩ／Ｆ５０６およびバス５１０によって構成される。ＣＰＵ５０１は、装置全体を制御する中央演算処理装置である。ＲＯＭ５０２は、ルーティング制御やアドレス管理などの制御プログラムや、ブートプログラムなどを記憶する不揮発性記憶領域である。ＲＡＭ５０３は、ＣＰＵ５０１がＲＯＭ５０２から読み出したプログラムを実行するためのワークエリアとして使用される揮発性記憶領域である。
【００６３】
ＨＤＤ５０４は、ＣＰＵ５０１の制御にしたがって、ＨＤ５０５に対するリード／ライトを制御する。ＨＤ５０５は、ＨＤＤ５０４の制御にしたがって書き込まれたデータを記憶する不揮発性記憶領域である。ネットワークＩ／Ｆ５０６は、ネットワークに接続され、接続先のネットワークと装置内部との間でパケットなどのデータを送受信するインターフェースである。バス５１０は、ＣＰＵ５０１、ＲＯＭ５０２、ＲＡＭ５０３、ＨＤＤ５０４およびネットワークＩ／Ｆ５０６を相互に接続する。
【００６４】
図６−１は、ルータの機能的構成を説明するブロック図である。ルーティング部６０１は、受信したパケットをＬＡＮ１１４に属する適切なノードに転送する。パケットはＬＡＮ１１４から送信される場合と、ゲートウェイ１００から送信される場合がある。ルーティングテーブル（記憶部）６０２は、パケットの送受信先であるノードのプライベートアドレスと、ＭＡＣアドレスやポート番号などのそのノードを特定する情報を対応付けて記憶している記憶部である。
【００６５】
設定部６０３は、ゲートウェイ１００によって割り当てられたアドレス範囲の仮想グローバルアドレスで、ルーティングテーブル６０２に書き込まれたプライベートアドレスを更新する。要求部６０４は、ルータ１１０に接続されるノードに割り当てる仮想グローバルアドレスが足りない場合に、不足分に対する割当を要求する。
【００６６】
トンネリング部６０５は、送信するパケットをカプセル化して、暗号化などのＩＰｓｅｃに沿った処理を行う。また、パケットを受信した場合、受信したパケットのカプセル化を解除してルーティング部６０１にわたす。送受信部６０６は、カプセル化したパケットをゲートウェイ１００に送り、ゲートウェイ１００からパケットが送信された場合、パケットを受信してトンネリング部６０５にわたす。
【００６７】
図６−２は、ルータによる仮想グローバルアドレスの割当処理を説明するフローチャートである。まず、要求部６０４は、ゲートウェイ１００に送信するための、ＬＡＮ１１４で割り当てるのに必要なアドレスの範囲を決定する（ステップＳ６０１）。たとえば５個のノードがルータ１１０に接続される場合は、必要なアドレスの範囲を５とする。
【００６８】
このステップは、最初にルータ１１０に各ノードを接続して、接続された各ノードの仮想グローバルアドレスを決定することによって開始しても良い。また、すでにノードが接続され仮想グローバルアドレスが割り当てられている状態で、新しくノードを接続することによって開始しても良い。新たにノードを例えば３つ接続した場合は、必要なアドレスの範囲を３とする。
【００６９】
次に、送受信部６０６は、必要なアドレスの範囲について、ゲートウェイ１００に割当要求を送信する（ステップＳ６０２）。送信した割当要求に対し、ゲートウェイ１００は割当アドレスの範囲を返信するので、送受信部６０６は、この割当アドレスの範囲を受信する（ステップＳ６０３）。
【００７０】
送受信部６０６は、アドレスの割り当てが必要なノード数に対し、受信した割当アドレスの範囲が十分か否かを判定する（ステップＳ６０４）。割当アドレスの範囲が不十分と判定された場合（ステップＳ６０４：Ｎｏ）、割当が不十分であるとの情報を返信し（ステップＳ６０５）、ステップＳ６０２に戻る。
【００７１】
割当アドレスの範囲が十分と判定された場合（ステップＳ６０４：Ｙｅｓ）、送受信部６０６は、割当アドレスの範囲が十分であるとの情報をゲートウェイ１００に返信する（ステップＳ６０６）。次に、設定部６０３は、割当アドレスの範囲でアドレスを各ノードに設定する（ステップＳ６０７）。すなわち、受け取った仮想グローバルアドレスの範囲に基づき、ＬＡＮ１１４全体の仮想グローバルアドレスを割り当てる。
【００７２】
ルーティングテーブル６０２には、宛先のＩＰアドレスと、これに対応するポート番号やＭＡＣアドレスなど、接続先のノードを特定する情報が書き込まれている。このルーティングテーブル６０２に書かれる宛先のＩＰアドレスを、各ノードに割り当てられる仮想グローバルアドレスとして書き込むことで、ユーザネットワーク内部のアドレス体系が再構築される。
【００７３】
図７−１は、このルーティングテーブルの概要を説明する説明図である。ここでは、図２に示したルータ１１０の、ルーティングテーブル６０２について説明する。プライベートアドレス７０１は、プライベートアドレスの一覧であり、これに対してノード情報７０２がそれぞれ割り当てられている。
【００７４】
ノード情報７０２は、接続先のノードを特定する情報であり、実際には、ポート番号やＭＡＣアドレスなどである。ルータ１１０は、このルーティングテーブル６０２を参照し、パケットのヘッダに書かれているプライベートアドレスに対応するノード情報７０２を特定する。そしてノード情報７０２にしたがってパケットは転送される。
【００７５】
この実施の形態では、このプライベートアドレス７０１を仮想グローバルアドレス７０３に書き換える。仮想グローバルアドレス７０３も、実際にはプライベートアドレスであって、これを転用したものであるが、通常のプライベートアドレスは、そのノードが属するネットワーク中で固有のものである。この実施の形態では、ゲートウェイ１００を用いて構築されるネットワーク全体でプライベートアドレスを共通に用い、これを仮想グローバルアドレスと呼んでいる。そしてこの実施の形態では、この仮想グローバルアドレス７０３を、通常のＬＡＮで使用していたプライベートアドレス７０１に置き換える。
【００７６】
図７−２は、他のルーティングテーブルの概要を説明する説明図である。ここでは、図３に示したように、ルータ１１０が、ＢＢルータ３１０とローカルルータ３２０に分けた場合について説明する。プライベートアドレス７０１およびノード情報７０２は、図７−１で説明したものと同じである。
【００７７】
ここで、ローカルルータ３２０は、ＢＢルータ３１０とローカルエリアネットワークで接続されたままである。その一方で、ＢＢルータ３１０を切り離した別個のローカルエリアネットワークを、割り当てられた仮想グローバルアドレスを用いて作ることになる。ここで、図７−１の場合と同様に、このプライベートアドレス７０１を仮想グローバルアドレス７０３に書き換える。その一方で、ローカルルータ３２０は、ルーティングテーブル６０２に、プライベートアドレス７０４と装置情報７０５との対応を残す。
【００７８】
したがって、ローカルルータ３２０は、ＢＢルータ３１０との間では、プライベートアドレス７０４と装置情報７０５に基づいて通信する。一方、ＬＡＮ１１４においては、ノード情報７０２と仮想グローバルアドレス７０３に基づいて通信する。
【００７９】
図８は、ゲートウェイの機能的構成を説明するブロック図である。受信部８０１は、インターネットを介して送信されたパケットを受信する。パケットはＬＡＮ１１４、１２４、１３４から送信される。トンネリング部８０２は、送信するパケットを宛先管理部８０４から受け取ってカプセル化して、暗号化などのＩＰｓｅｃに沿って処理する。また、受信したパケットのカプセル化を解除して宛先管理部８０４にわたす。
【００８０】
宛先管理テーブル８０３は、ゲートウェイ１００で管理するノードのプライベートアドレスの範囲と、このノードにＶＰＮを介してパケットを送信するときの宛先となるルータのグローバルアドレスを対応付けて記憶している記憶部である。
【００８１】
宛先管理部８０４は、宛先管理テーブル８０３に書き込まれているプライベートアドレスの範囲とグローバルアドレスの対応関係を参照して、受信したパケットの転送先となるグローバルアドレスを決定する。決定したグローバルアドレスは、カプセル化したパケットのヘッダに宛先ＩＰアドレスとして記述される。
【００８２】
割当部８０５は、ルータ１１０，１２０，１３０からアドレスの割当要求があった場合、割当要求で指定されるアドレス数に応じて割り当てるアドレス範囲を決定する。そして、割当要求があったルータとの間で確認が取れた後に、宛先管理テーブル８０３に記憶されるプライベートアドレスの範囲とルータのグローバルアドレスの対応関係を、割り当てたアドレス範囲と割当先のグローバルアドレスに応じて書き換える。
【００８３】
送信部８０６は、トンネリング部８０２でカプセル化したパケットを、ヘッダに記述されたグローバルアドレスで特定されたルータに送信する。
【００８４】
図９は、ゲートウェイによる仮想グローバルアドレスの割当処理を説明するフローチャートである。ゲートウェイ１００には、ゲートウェイ１００自身の仮想グローバルアドレスが設定されている。このアドレスを「１０．２．１．１」とする。
【００８５】
まず、受信部８０１は、ルータ１１０から割当要求を受信する（ステップＳ９０１）。次に、割当部８０５は、割当要求によって指定されている範囲に応じて、ＬＡＮ１１４に対して割り当てるアドレスの範囲を決定する（ステップＳ９０２）。
【００８６】
アドレスの範囲の決定について説明する。ルータ１１０において、５つのノードに対する割り当てが要求されている場合、割当部８０５は、５つの仮想グローバルアドレスを割り当てると決定する。割り当て範囲の最初は、「１０．２．１．２」であり、これを含めて５つがＬＡＮ１１４に割り当てられるので、割り当て範囲の最後は「１０．２．１．６」となる。したがって、割り当てるアドレスの範囲は「１０．２．２．２−６」となる。
【００８７】
以上のように、ルータ１１０では、「１０．２．２．２−６」がアドレスの範囲として割り当てられた場合、ＬＡＮ１１４の各ノードには、「１０．２．２．２」、「１０．２．２．３」、・・・、「１０．２．２．６」と、仮想グローバルアドレスが割り当てられていく。そしてこの割り当てた仮想グローバルアドレスに合わせて、ルータ１１０のルーティングテーブル６０２が更新される。
【００８８】
ルータ１１０は、仮想グローバルアドレスが付加されたパケットを受け取った場合、仮想グローバルアドレスと接続先のノードを特定する情報との対応関係を参照する。そして、仮想グローバルアドレスにより特定されるノードにパケットを送信する。
【００８９】
ここで、５つのノードへの割り当てに対し、５つの仮想グローバルアドレスを割り当てているが、余分にアドレスを割り当てておくこともできる。たとえば、１度に割り当てる仮想グローバルアドレスの最小数を８と決めておき、８より少ない場合は８個の仮想グローバルアドレスを割り当てることができる。また、８以上の場合は、要求されるグローバルアドレスの範囲より大きくなる範囲で８の倍数とすることができる。例えば、要求数が１４の場合は割り当てる数を１６に、要求数が１６の場合は割り当てる数を２４にすることができる。なお、この８という値はもちろん別の値とすることができ、１０の倍数でも、１６の倍数でも良い。
【００９０】
割り当てる仮想グローバルアドレスの最初は、ここでは「１０．２．１．２」としたが、割り当て先に応じてこの開始アドレスを変えることもできる。例えば、「１０．２．１．２」〜「１０．２．１．６」について仮想グローバルアドレスが割り当てられているネットワーク（たとえば、ＬＡＮ１１４。）から、再度３つの仮想グローバルアドレスの割当が要求された場合、「１０．２．１．７」から開始するのが望ましい。そこで、割り当てる仮想グローバルアドレスの最初を、「１０．２．１．７」とする。
【００９１】
一方、別のネットワーク（たとえば、ＬＡＮ１２４。）から仮想グローバルアドレスの割当が要求された場合、「１０．２．３．１」からはじめることができる。このようにすることで、仮想グローバルアドレスの割当が虫食い状態になることを防ぐことができる。その結果、仮想グローバルアドレスとネットワークの関係が明瞭になり、仮想グローバルアドレスの割り当て処理やルーティング処理への負担が軽減される。
【００９２】
送信部８０６は、以上のように決定されたアドレスの範囲を、ルータ１１０に送信する（ステップＳ９０３）。送信後、割当部８０５は、ルータ１１０からの返答を待ち、ＬＡＮ１１４における割当が十分か否かを判定する（ステップＳ９０４）。すなわち、ルータ１１０が、図６−２のステップＳ６０５で説明した割当が十分でないことを示す情報を返信したか、または図６のステップＳ６０６で説明した割当が十分であることを示す情報を返信したかを判定する。
【００９３】
割当が不十分の場合（ステップＳ９０４：Ｎｏ）、ステップＳ９０２に戻る。割当が十分の場合（ステップＳ９０４：Ｙｅｓ）、割当部８０５は、宛先管理テーブル８０３を書き換える（ステップＳ９０５）。すなわち、転送先であるルータ１１０のグローバルアドレスと、ルータ１１０に接続されているＬＡＮ１１４の仮想グローバルアドレスの範囲を対応付けて記憶する。
【００９４】
このゲートウェイ１００には、新規にネットワークを構築する場合は、割り当てられている仮想グローバルアドレスが存在しない。一方、すでに他のゲートウェイが存在して、存在するゲートウェイに接続することによりネットワークを構築する場合には、既存のネットワークにおける空いた仮想グローバルアドレスの範囲を受け取ることにより、割当可能な仮想グローバルアドレスを確保する。この場合、ゲートウェイ１００自身の仮想グローバルアドレスは、この割当可能な仮想グローバルアドレスの範囲内で設定される。
【００９５】
図１０は、ゲートウェイの宛先管理テーブルの概要を説明する説明図である。宛先管理テーブル８０３は、転送先ネットワークにおける仮想グローバルアドレスの範囲１００１を、転送先ネットワークのグローバルアドレス１００２に対応付けて記憶する。仮想グローバルアドレスのアドレス範囲１００１は、受け取ったパケットが示す仮想グローバルアドレスと参照する上で使用される。そして、アドレス範囲１００１のうち、受け取ったパケットが示す仮想グローバルアドレスが含まれるものに対応するグローバルアドレス１００２が選択される。
【００９６】
ゲートウェイ１００は、受け取ったパケットのカプセル化を解除するが、このルーティングテーブル６０２に基づいて、宛先となるグローバルアドレス１００２を決定する。そして、カプセル化を解除されたパケットを再びカプセル化して、ヘッダ部にグローバルアドレス１００２を宛先として書き込む。
【００９７】
次に、図１１〜図１３を用いて、ＩＰｖ６のアドレスでカプセル化する場合のパケットの構成およびアドレスの形式について説明する。図１１は、パケットの構成例を説明する説明図である。パケット１１００は、発信側アドレス１１０１、受信側アドレス１１０２、ヘッダ１１０３、データ１１０４によって構成される。
【００９８】
発信側アドレス１１０１および受信側アドレス１１０２には、ＩＰアドレスが書き込まれ、データ形式はＩＰｖ４とＩＰｖ６の両方が考えられる。データ１１０４は、あて先のノードで実際に処理される形式で記述される、たとえばパケット１１００が印刷データの場合は、ページ記述言語などの実際に受信側で処理される形式で記述される。
【００９９】
図１２は、ＩＰｖ６のヘッダをつける場合のアドレスを説明する説明図である。ここまでは、各ノードに割り当てられるアドレスを、パケットにＩＰｖ４アドレスを付加する場合を想定して説明してきたが、ここではパケットにＩＰｖ６アドレスを付加する場合を想定して説明する。
【０１００】
ＩＰｖ６では、各ノードに固有のアドレスを割り当てることができる。このＩＰｖ６のアドレスは、ＧＲＰ（グローバル・ルーティング・プレフィックス）によって識別されるアドレスを含み、ＩＰｖ４におけるグローバルアドレスに相当する。このＧＲＰによる識別により、ネットワークを特定して通信する、相互に直接通信が可能になる。
【０１０１】
ＩＰｖ４のアドレスをＩＰｖ６でカプセル化する場合のアドレスの構成は、アドレス１２００に示す通りであり、一方ＩＰｖ６のアドレスをＩＰｖ６でカプセル化する場合のアドレスの構成は１２１０に示す通りである。このアドレス１２００およびアドレス１２１０において、前半の６４ビットには通常の処理に従ってアドレスが割り当てられ、残り６４ビットに、この実施の形態にあわせてアドレスが割り当てられる。
【０１０２】
まずアドレス１２００について説明する。先頭の３ビットには、アドレス形式プリフィックス１２０１が割り当てられる。具体的には、「０００」が記述される。この「０００」を識別することにより、ＩＰｖ４のアドレスにより特定されるパケットをカプセル化していることが識別される。
【０１０３】
次の２３ビットは、空ビット１２０２で、２３ビット分の０によって構成される。アドレス１２００の前半部は６４ビットであるのに対し、このうち、ＩＰｖ４グローバル・アドレス１２０３は３２ビット分、サブネット１２０４は６ビット分なので、残りの２３ビットを空ビット１２０２の０で埋めることで、６４ビット全体を構成することができる。
【０１０４】
次の３２ビットには、ＩＰｖ４グローバル・アドレス１２０３が割り当てられる。この３２ビットは、発信側または受信側のネットワークに割り当てられているＩＰｖ４のグローバル・アドレスである。さらに、次の６ビットには、サブネット１２０４が割り当てられる。このサブネット１２０４は、ＩＰｖ４グローバル・アドレス１２０３の３２ビットに対応させて６ビットとなっている。以上の６４ビットにより、各ノードが属するネットワークのグローバル・アドレスが特定される。そして、残りの６４ビットは、インタフェースＩＤ１２０５によって構成される。
【０１０５】
次にアドレス１２１０について説明する。先頭の３ビットには、アドレス形式プリフィックス１２１１が割り当てられる。具体的には、「００１」が記述される。この「００１」を識別することにより、ＩＰｖ６のアドレスにより特定されるパケットをカプセル化していることが識別される。
【０１０６】
次の４５ビットには、ＧＲＰ（グローバル・ルーティング・プレフィックス）アドレス１２１２が割り当てられる。この４５ビットは、最上位階層集約子ＴＬＡ＿ＩＤが１３ビット分、予約アドレスが８ビット分、次階層集約子ＮＬＡ＿ＩＤが２４ビット分を占める。さらに、次の１６ビットには、サイト階層集約子ＳＬＡ＿ＩＤであるサブネット１２１３が割り当てられる。以上の６４ビットにより、各ノードが属するネットワークのグローバル・アドレスが特定される。そして、残りの６４ビットは、アドレス１２００を構成するものと同じ、インタフェースＩＤ１２０５によって構成される。
【０１０７】
次に、インタフェースＩＤ１２０５について説明する。インタフェースＩＤ１２０５を構成する６４ビット中３２ビットには、上述したＩＰｖ４プライベートアドレス１２０３がそのまま割り当てられる。そして、残り３２ビットは、各装置に割り当てられたデバイスＩＤ１２３０を割り当てることができる。
【０１０８】
デバイスＩＤ１２３０としては、たとえば、３２ビット中の８ビットに、ＵＳＢデバイス・アドレス１２３１を割り当てることもできる。また、デバイスＩＤ１２３０の３２ビット中の８ビットに、ＩＥＥＥ１３９４デバイス・アドレス１２３２を割り当てることもできる。また、残り３２ビット中必要なビット長に、携帯電話番号やＦＡＸ番号の、ＶｏＩＰの電話番号を記述するアドレス情報１２３３に割り当てることができる。このように、後半の６４ビットに、各ネットワーク内の各ノードに関する情報を割り当てることができる。
【０１０９】
このように、ＩＰｖ６によるアドレスを構築し、この中でデバイスＩＤ１２３０を含めたアドレスを割り当てることにより、各プライベートネットワークに属するローカルデバイスに対して、ＶＰＮを介して外部ネットワークから直接処理要求を送信することができる。
【０１１０】
たとえば、ＰＣ１２１から、ＬＡＮ１１４に含まれるプリンタに印刷要求をする場合、このプリンタがＵＳＢで接続されている場合はＵＳＢデバイス・アドレス１２３１を、ＩＥＥＥ１３９４で接続されている場合にはＩＥＥＥ１３９４デバイス・アドレスを、受信側アドレスに含まれるデバイスＩＤ１２３０として送信する。
【０１１１】
図１１に示したデータ１１０４は、たとえばＵＳＢの場合であれば、実際にＵＳＢ端子から入力されるデータの集合である。したがってデバイスＩＤ１２３０によってデバイスを特定することにより、途中のネットワークを介して送受信すべきデータに変換することなく、直接的に対象となるローカルデバイスにパケットを送り込むことができる。
【０１１２】
図１３は、ＩＰｖ６のアドレスが割り当てられたネットワークの構成を説明する説明図である。送受信されるパケットのヘッダに付加されるアドレスは、図１２で説明したように、１２８ビット中前半の６４ビットがグローバル空間上で参照され、該当するプライベートネットワークにパケットが送信される。各プライベートネットワーク上では、後半の６４ビットであるインタフェースＩＤ１２０５を参照することにより、パケットを各ノードに送信する。
【０１１３】
このネットワークには、ゲートウェイ１３００（ＶＰＮ−００）に、ルータ１３１０（ＶＰＮ−０１）、ルータ１３２０（ＶＰＮ−０２）、ルータ１３３０（ＶＰＮ−０３）、ルータ１３４０（ＶＰＮ−０４）、ルータ１３５０（ＶＰＮ−０５）が接続されている。ゲートウェイ１３００は、ＶＰＮサービスプロバイダであり、各ルータとの間の接続を管理している。ルータ１３１０〜ルータ１３５０に対しては、それぞれ図１２で説明したＧＲＰアドレス１２１２が割り当てられ、それぞれＩＰｖ６ＧＲＰ０１〜ＩＰｖ６ＧＲＰ０５である。
【０１１４】
さらに、ルータ１３１０〜１３５０には、それぞれＩＰｖ４のプライベートアドレスが割り当てられている。具体的には、ルータ１３１０には、１９２．１６８．０．ｘ、ルータ１３２０には、１９２．１６８．０．ｘ、ルータ１３３０には、１９２．１６８．１．ｘ、ルータ１３４０には、１０．０．１．ｘ、ルータ１３５０には、１０．１．１．ｘが割り当てられている。これらのプライベートアドレスは、上述のようにグローバルネットワークで用いられるものではなく、各ルータによって管理されるプライベートネットワーク内で使用されるアドレスである。
【０１１５】
ルータ１３１０にはＰＣ１３１４が接続され、ＰＣ１３１４を介してスキャナ１３１５と接続される。このスキャナ１３１５は、読み込んだ画像を他のネットワークに属する他のノードに送信したり、他のノードからの処理指示を受けて読み込み動作を行ったりする。スキャナ１３１５はＵＳＢで接続されているので、スキャナ１３１５のアドレスには図１２に示したＵＳＢデバイス・アドレス１２３１が含まれる。
【０１１６】
ルータ１３２０にはＰＣ１３２４が接続され、ＰＣ１３２４を介してプリンタ１３２５と接続される。このプリンタ１３２５が、他のネットワークに属する他のノードからデータを受け取って印刷したり、印刷に関する双方向処理を行ったりする。プリンタ１３２５はＩＥＥＥ１３９４で接続されているので、プリンタ１３２５のアドレスには図１２に示したＩＥＥＥ１３９４デバイス・アドレス１２３２が含まれる。
【０１１７】
ルータ１３３０にはＰＣ１３３４が接続され、また多機能機１３３５と接続される。この多機能機１３３５が、他のネットワークに属する他のノードからデータを受け取ってデータに応じた処理を行ったり、その他の双方向処理を行ったりする。
【０１１８】
ルータ１３４０にはＦＡＸ１３４５が接続される。このＦＡＸ１３４５は、ＶｏＩＰを用いて送受信を行うＦＡＸ装置である。ＦＡＸ１３４５はＶｏＩＰを利用するので、ＦＡＸ１３４５のアドレスには図１２に示したアドレス情報１２３３が含まれる。
【０１１９】
ルータ１３５０は携帯電話１３５５との間で通信処理を行う。この携帯電話１３５５は、ＶｏＩＰを用いて音声通信を行う。携帯電話１３５５はＶｏＩＰを利用するので、携帯電話１３５５のアドレスには図１２に示したアドレス情報１２３３が含まれる。
【０１２０】
以上のようにアドレスを構成することにより、各ノードのデバイスＩＤ１２３０を特定してデータを送受信することができる。それにより、パケットにＵＳＢやＩＥＥＥ１３９４のフレームを入れることができる。この各インタフェース固有のデータをパケット中に含めて通信することにより、外部のネットワークから、たとえばＵＳＢやＩＥＥＥ１３９４で接続されたプリンタやスキャナなどの周辺機器に対しても、外部のネットワークから遠隔操作することが可能になる。そして、ＶＰＮで接続されたネットワーク全体で、１つのネットワークであるかのように周辺機器などへの処理の指示を送信することができる。
【０１２１】
以上説明したように、本発明にかかる通信装置、通信管理装置、通信方法および通信制御プログラムによれば、外部のネットワークに割り当てられているプライベートアドレスと共通のアドレス体系を構築することができる。その結果、共通のアドレス体系が構築されているネットワーク空間全体に対して、１つ１つのノードを特定することができるので、同一のローカルエリアネットワークに属さないノード同士でも、互いに相手を特定して相互に通信することができる。
【産業上の利用可能性】
【０１２２】
以上のように、本発明にかかる通信装置、通信管理装置、通信方法および通信制御プログラムは、ゲートウェイを介して複数のローカルエリアネットワークで通信する場合に有用であり、特に、異なるネットワークに属するノード間での通信に適している。
【図面の簡単な説明】
【０１２３】
【図１】本発明の実施の形態にかかるネットワークを説明するブロック図である。
【図２】ゲートウェイと、ゲートウェイに接続されたＬＡＮの１つの接続構成を説明するブロック図である。
【図３】ルータ１１０の機能をＢＢルータ３１０とローカルルータ３２０に分けた場合の接続構成を説明するブロック図である。
【図４】ゲートウェイを挟んだローカルエリアネットワーク間でのパケットの送受信を説明するブロック図である。
【図５】通信制御装置のハードウェア構成を説明するブロック図である。
【図６−１】ルータの機能的構成を説明するブロック図である。
【図６−２】ルータによる仮想グローバルアドレスの割当処理を説明するフローチャートである。
【図７−１】ルーティングテーブルの概要を説明する説明図である。
【図７−２】他のルーティングテーブルの概要を説明する説明図である。
【図８】ゲートウェイの機能的構成を説明するブロック図である。
【図９】ゲートウェイによる仮想グローバルアドレスの割当処理を説明するフローチャートである。
【図１０】ゲートウェイの宛先管理テーブルの概要を説明する説明図である。
【図１１】パケットの構成例を説明する説明図である。
【図１２】ＩＰｖ６のヘッダをつける場合のアドレスを説明する説明図である。
【図１３】ＩＰｖ６のアドレスが割り当てられたネットワークの構成を説明する説明図である。
【符号の説明】
【０１２４】
１００  ゲートウェイ
１１０，１２０，１３０  ルータ
３１０  ＢＢルータ
３２０  ローカルルータ
６０１  ルーティング部
６０２  ルーティングテーブル
６０３  設定部
６０４  要求部
６０５  トンネリング部
６０６  送受信部
【図１】
2006129090.tif 000003
【図２】
2006129090.tif 000004
【図３】
2006129090.tif 000005
【図４】
2006129090.tif 000006
【図５】
2006129090.tif 000007
【図６−１】
2006129090.tif 000008
【図６−２】
2006129090.tif 000009
【図７−１】
2006129090.tif 000010
【図７−２】
2006129090.tif 000011
【図８】
2006129090.tif 000012
【図９】
2006129090.tif 000013
【図１０】
2006129090.tif 000014
【図１１】
2006129090.tif 000015
【図１２】
2006129090.tif 000016
【図１３】
2006129090.tif 000017