(57)【要約】【課題】  ネットワークを複数経路を用いて外部と接続する場合、複数の回線を用いて外部ネットワークと接続を行うことはできないという従来問題の解決。【解決手段】  通信装置１は送信元アドレスと自装置がネットワークに接続しているアドレスを通知する探索パケットの送信を行い、通信装置２は受信した探索パケットから通信装置１がネットワークと接続しているアドレスを読み取り、そのアドレスを宛先アドレスとし、通信装置２がネットワークと接続しているアドレスを送信元アドレスとした提案パケットを通信装置２が接続しているネットワークに送信し、通信装置１は提案パケットを受信し、自装置のアドレスと提案パケットの送信元アドレスの組を作成し、そこから１つ組を選択し、通信装置１から通信装置２へ送信する通信パケットを、選択した組で示される通信装置２のアドレスを宛先として転送する。【選択図】      図１
2005210588.tif 000002
【特許請求の範囲】
【請求項１】
第一の通信装置および第二の通信装置がそれぞれ複数のネットワークに物理的あるいは論理的に接続され、前記第一の通信装置と前記第二の通信装置が前記ネットワークを介してパケット通信を行う通信方法において、
前記第一の通信装置は、通信パケットを送信する際に、前記通信パケットの送信元アドレスおよび自装置が前記ネットワークに接続しているアドレスを通知する探索パケットを、前記通信パケットの宛先に向けて送信を行い、
前記第二の通信装置は、前記探索パケットを受信した場合に、前記探索パケットから前記第一の通信装置がネットワークと接続しているアドレスを読み取り、
前記読み取ったアドレスを宛先アドレスとし、前記第二の通信装置が前記ネットワークと接続しているアドレスを送信元アドレスとした提案パケットを前記第二の通信装置が接続しているネットワークのうち少なくとも一つに送信し、
前記第一の通信装置は、前記提案パケットを受信した場合に、前記提案パケットを受信した自装置のアドレスと前記提案パケットの送信元アドレスを用いてアドレスの組を作成し、前記アドレスの組から１つアドレスの組を選択し、前記第一の通信装置から前記第二の通信装置へ送信する通信パケットを、前記選択したアドレスの組で示される前記第二の通信装置のアドレスを宛先として転送する
ことを特徴とする通信方法。
【請求項２】
第一の通信装置および第二の通信装置がそれぞれ複数のネットワークに物理的あるいは論理的に接続され、前記第一の通信装置と前記第二の通信装置が前記ネットワークを介してパケット通信を行う通信方法において、
前記第一の通信装置は、通信パケットを送信する際に、前記通信パケットの送信元アドレスおよび自装置が前記ネットワークに接続しているアドレスと前記ネットワークを識別する識別子の組を通知する探索パケットを、前記通信パケットの宛先に向けて送信を行い、
前記第二の通信装置は、前記探索パケットを受信した場合に、前記探索パケットから前記第一の通信装置がネットワークと接続しているアドレスとネットワークの識別子の組を読み取り、その組から前記第二の通信装置が接続しているネットワークと同じ識別子を有する少なくとも１つの組を選択し、 
前記選択した組の前記第一の通信装置のアドレスを宛先アドレスとし、前記第二の通信装置が前記選択した組のネットワークと接続しているアドレスを送信元アドレスとした提案パケットを、前記選択した組のネットワークを介して送信し、
前記第一の通信装置は、前記提案パケットを受信した場合に、前記通信パケットに記載されている前記第二の通信アドレスを読み取り、
前記第一の通信装置から前記第二の通信装置へ送信する通信パケットを、前記読み取った前記第二の通信装置のアドレスを宛先として転送する
ことを特徴とする通信方法。
【請求項３】
請求項１または２に記載の通信方法において、
前記探索パケットに、前記第一の通信装置がネットワークと接続しているアドレスおよび通信プロトコルの組が記載されており、前記記載された通信プロトコルにより前記第一の通信装置が前記第二の通信装置と該当ネットワークで通信を行うときに使用するプロトコルを通知し、
前記第二の通信装置は、前記探索パケットに記載された通信プロトコルをも読み取り、自装置が対応している通信プロトコルに対してのみ通信を行う
ことを特徴とする通信方法。
【請求項４】
請求項１から３いずれかに記載の通信方法において、
前記探索パケットに、前記第一の通信装置が作成した数値列が記載されており、前記第二の通信装置は、前記探索パケットを受信した場合、前記数値列を読み取り、前記提案パケットに前記読み取った数値列を記載して送信する
ことを特徴とする通信方法。
【請求項５】
第一の通信装置が複数のネットワークに物理的あるいは論理的に接続されており、第一のネットワークと接続されている第二の通信装置および第二のネットワークと接続されている第三の通信装置とパケット通信を行う通信方法において、
前記第一の通信装置は、前記第二の通信装置と通信を行う通信パケットを送信する際に、請求項１から４いずれかに記載の探索パケットを送信し、
前記第二の通信装置は、前記探索パケットを受信した場合、請求項１から４いずれかに記載の提案パケットに、前記第三の通信装置が接続している前記第二のネットワークの識別子と前記第三の通信装置が前記第二のネットワークと接続しているアドレスを含むリダイレクト指示を記載して送信し、
前記第一の通信装置は、前記リダイレクト指示が記載された提案パケットを受信した場合には、前記第一の通信装置から前記第二の通信装置に送信する通信パケットを前記リダイレクト指示に記載された前記第三の通信装置のアドレスを宛先として、前記リダイレクト指示に記載された第二のネットワークを介して転送する
ことを特徴とする通信方法。
【請求項６】
請求項５に記載の通信方法において、
前記第二のネットワークに該第二のネットワークに接続している通信端末および転送装置のアドレスを管理する管理装置を有し、
前記第一の通信装置には、あらかじめ前記管理装置のアドレスが設定されており、
前記第一の通信装置は、前記リダイレクト指示が記載された提案パケットを受信した場合に、前記リダイレクト指示されたネットワークの識別子およびリダイレクト先のアドレスを読み取り、前記リダイレクト指示に記載されたネットワークに対応する前記管理装置に対して前記リダイレクト指示に記載されたアドレスが管理されているかどうか問い合わせを行い、
前記管理装置は、前記第一の通信装置からの問い合わせに対して、応答を行い、
前記第一の通信装置は、前記応答の結果にしたがって、前記リダイレクト指示に従って前記第一の通信装置から前記第二の通信装置に送信する通信パケットを前記リダイレクト指示に記載された前記第三の通信装置のアドレスを宛先として、前記リダイレクト指示に記載された第二のネットワークを介して転送するかどうかを決定する
ことを特徴とする通信方法。
【請求項７】
パケット通信を行う通信装置において、
第一のネットワークあるいは端末と接続する物理的あるいは論理的な第一のインタフェースと、物理的あるいは論理的に第一のネットワークあるいは端末と異なる複数のネットワークと接続する第二から第N（Nは三以上の整数）のインタフェースを有し、
前記第一のインタフェースよりパケットを受信した場合に経路テーブルを検索し、出力インタフェースを決定するルーティング処理部と、
前記経路テーブルに経路情報がなかった場合、第二から第Nのインタフェースのうち少なくとも一つから、第二から第Nのインタフェースのアドレスの必ずしも全部ではない１つあるいは複数のアドレスを含む探索パケットを送信する探索パケット送信部と、
前記探索パケットを送信してから一定時間の間、提案パケットの受信を待ち、提案パケットを受信した場合、その内容を判定する提案パケット受信部と、
前記提案パケット受信部からの判定を受け取り、経路テーブルを作成、追加、修正を行う経路テーブル作成部を有する
ことを特徴とする通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット通信技術に属し、特に、ホームネットワークなどの小規模のネットワークが、複数の外部ネットワークと接続されている形態において、いずれのネットワークを介して外部と通信を行うかについて選択を行う技術に属する。
【背景技術】
【０００２】
一つの通信端末が複数のネットワークに接続する形態は、主に通信回線や機器の障害にそなえるためや、通信装置に冗長をもたせるために行われてきた。このような冗長化技術についてはVRRP（Virtual Router Redundancy Protocol）やECMP(Equal-Cost Multi-path）などの技術が提案されている。
【０００３】
VRRPは、IETFのRFC2338(非特許文献１)で述べられており、あるネットワークに接続している２台のルータのうち１台を現用系として動作させ、残りの１台を予備系として待機状態にすることにより、ネットワークの出口であるルータの冗長化を行うものである。
【０００４】
またECMPは、IP（インタネットプロトコル）ルーティングにおいて、あるルータからある宛先に転送する場合に転送コストの等しい複数のネクストホップが存在する状況を指し、ルータの実装によって経路の負荷分散が可能となる。一般的には、IETFのRFC2991(非特許文献)に示されるように、IPヘッダ情報のハッシュ計算を行い、どの経路に転送するかを決めることで、トラフィックの分散を行う。
【０００５】
近年、IPを用いた映像配信やIP電話など、IPを用いた様々なサービス提供が考えられている。これに伴い、それぞれのサービス提供に適した専用のIPネットワークが構築されていくと考えられ、複数のIPネットワークへ同時接続する技術が必要となる。例えば、コンテンツ配信網（CDN： Contents Delivery Network）は、インタネットでは提供ができない高品質の映像の配信を行う専用のIPネットワークとして検討が行われている。
【０００６】
しかし、インタネットとCDNを両方使用する場合に、利用の度に接続先ネットワークの切り替えを行うのでは利便性が損なわれる。このため、複数のネットワークに同時に接続を行い、それらを利用する度にシームレスに使い分ける方式が必要となる。しかし、前記のVRRPやECMPは一つの宛先アドレスにたどり着くために複数の経路がある場合についての技術であり、複数のネットワークを目的などに応じて使い分けることはできない。
【０００７】
このように、従来の技術では、複数の独立したネットワークに同時に接続した場合に、簡易に経路を決めることができなかった。
【０００８】
【非特許文献１】S. Knight他, "RFC 2238: Virtual Router Redundancy Protocol" April 1998, ftp://ftp.rfc-editor.org/in-notes/rfc2338.txt
【非特許文献２】D. Thaler, C. Hopps,"RFC2991: Multipath Issues in Unicast and Multicast Next-Hop Selection", November 2000, ftp://ftp.rfc-editor.org/in-notes/rfc2991.txt
【発明の開示】
【発明が解決しようとする課題】
【０００９】
IP（インタネットプロトコル）パケットの転送を行うルータは、受信したパケットの出力先を経路テーブルを参照して決定する。経路テーブルは、あらかじめルータに設定される場合と、ダイナミック・ルーティング・プロトコルによって動的に設定される場合がある。
【００１０】
ダイナミック・ルーティング・プロトコルとしては、RIP（ルーティング・インフォメーション・プロトコル）、OSPF（オープン・ショーテスト・パス・ファスト）、BGP（ボーダ・ゲートウエイ・プロトコル）などがあり、LAN（ローカル・エリア・ネットワーク）やインタネットにおけるISP（インタネット・サービス・プロバイダ）等のネットワークの規模に応じて使用されている。
【００１１】
ダイナミック・ルーティング・プロトコルにおいては、自ネットワークや自ルータの有する経路情報を他のネットワークや他のルータに通知し合うため、誤った経路情報が通知されてしまった場合には、ネットワーク全体の経路に問題が生じる可能性がある。このため、ネットワークの知識を有した管理者が設定を行うのが一般的である。
【００１２】
一方、一般的な家庭のユーザやSOHO（スモール・オフィス・ホーム・オフィス）等においてインタネット接続を行う場合においては、例えば端末の数が１台から数台といった具合に比較的ネットワークの規模が小さい場合には、ダイナミック・ルーティング・プロトコルを設定するようなネットワークの知識を有した管理者がいることはまれである。
【００１３】
また複雑な処理が必要なダイナミック・ルーティング・プロトコルが動作するルータは比較的高価であり、このようなルータを設置する場合もまれである。このような事情から、規模の小さいネットワークにおいては、デフォルトの経路のみを設定し、自ネットワーク外と通信する場合には、全ての通信がデフォルトの経路を経由するように設定することが一般的に行われている。
【００１４】
しかし、このようなデフォルト経路を用いる従来の技術では、複数の回線を用いて外部ネットワークと接続を行うことはできなかった。すなわち、複数の回線があったとしても、そのうち一つをデフォルト経路として設定し外部ネットワークとの接続に使用するために、残りの回線が使用されないという問題があった。
【００１５】
これを解決するためには、複雑なダイナミック・ルーティング・プロトコルを動作させるか、あらかじめネットワーク管理者が通信先を特定し、いずれの回線を使用すべきかを決定し、ルータに経路テーブルを設定するといった設定作業を行う必要があり、いずれにせよ、複雑な設定が必要であるといった問題があった。
【００１６】
ここでは、プロトコルにIPを用いる場合について例をとり、インタネットおよび社内網のような閉域ネットワークに同時に接続する場合について従来の技術の説明を行う。
【００１７】
本例では、従来の技術を用いた通信装置は、図１０に示すように、ルータ１、ルータ２を介してそれぞれインタネット、および閉域網に接続されているとする。ルータ１、２、従来の通信装置および閉域網で使用するIPアドレスは図１０に示すようになっているものとする。
【００１８】
従来の技術を用いた場合には、従来の通信装置に、デフォルトルートをルータ１のアドレスであるA.A.A.1とし、閉域網内で使用しているアドレスC.C.C.0/24を宛先アドレスとして転送する場合の出力先（ネクスト・ホップ）をルータ２のアドレスであるB.B.B.1に転送するといった図１１に示すようなルーティングテーブルを設定する。このように設定することにより、端末側から受信したパケットの宛先アドレスを読み取りルーティングテーブルに従った出力先に転送することが可能である。
【００１９】
すなわち、図１１に示すC.C.C.0/24のネットワークに対する出力先を何らかの方法で従来のパケット転送装置に設定する必要がある。この方法として、ネットワーク管理者から書面などで通知されたアドレスを従来のパケット転送装置に機器管理者が設定するということ、あるいは、ダイナミック・ルーティング・プロトコルを用いて、ルータ２で保有しているルーティングテーブルを通知してもらう必要があった。
【００２０】
また、ダイナミック・ルーティング・プロトコルを用いる場合には、通信装置からインタネット側および閉域網側に、その通信装置が保有するルーティング情報が通知されるために、通信装置の設定に誤りがある場合には、ネットワーク全体のルーティング情報に影響を及ぼし、最悪の場合はネットワーク全体が通信不能の状況となる。このために、従来の通信端末はインタネット側および閉域網側の両方と矛盾しない設定を行う必要があるといった、高度な設定が必要であるという問題があった。
【００２１】
また、図１０に示す閉域網の規模が大きく、複数のアドレスブロックを閉域網内で用いるような場合には、ルータ２が保有するルーティングテーブルの規模が膨大となり、従来の通信装置はこのような膨大な規模のルーティングテーブルを保有する必要があるといった問題があった。
【００２２】
さらに図１０に示す閉域網がインタネットに接続されている場合には、インタネット側のルータ１および閉域網側のルータ２の両方からインタネットへ転送するルーティング情報が得られるために、いずれのルーティング情報を使用するかについて、ダイナミック・ルーティング・プロトコルに基づく高度なルーティングアルゴリズムを動作させる必要があった。
【００２３】
本発明の目的は、自動的に経路を設定する通信装置および通信方法に関し、ネットワークを複数の経路を用いて外部と接続する場合に、デフォルト経路を用いる従来の技術において複数の回線を用いて外部ネットワークと接続を行うことはできないといった問題を解決することである。
【００２４】
本発明の目的は、さらに、複数の回線を用いて外部ネットワークと接続を行う場合に、通信経路の決定やルーティング・プロトコル等の複雑な設定を管理者が行う必要があるといった課題を解決することである。
【００２５】
本発明の目的は、さらに、ダイナミック・ルーティング・プロトコルを用いることにより、膨大な規模のルーティングテーブルを保有する必要があるといった課題を解決することである。
【００２６】
本発明の目的は、さらに、ダイナミック・ルーティング・プロトコルを用いることにより、誤ったルーティング情報が通知された場合、ネットワーク全体に影響をおよぼす可能性があるといった課題を解決することである。
【課題を解決するための手段】
【００２７】
上記目的を達成するために、本発明は、次のような構成を有する。すなわち、
（１）第一の通信装置および第二の通信装置がそれぞれ複数のネットワークに物理的あるいは論理的に接続され、第一の通信装置と第二の通信装置がネットワークを介してパケット通信を行う通信方法において、第一の通信装置は、通信パケットを送信する際に、通信パケットの送信元アドレスおよび自装置がネットワークに接続しているアドレスを通知する探索パケットを、通信パケットの宛先に向けて送信を行い、第二の通信装置は、探索パケットを受信した場合に、探索パケットから第一の通信装置がネットワークと接続しているアドレスを読み取り、読み取ったアドレスを宛先アドレスとし、第二の通信装置がネットワークと接続しているアドレスを送信元アドレスとした提案パケットを第二の通信装置が接続しているネットワークのうち少なくとも一つに送信し、第一の通信装置は、提案パケットを受信した場合に、提案パケットを受信した自装置のアドレスと提案パケットの送信元アドレスを用いてアドレスの組を作成し、アドレスの組から１つアドレスの組を選択し、第一の通信装置から第二の通信装置へ送信する通信パケットを、選択したアドレスの組で示される第二の通信装置のアドレスを宛先として転送することを特徴とする。
【００２８】
（２）第一の通信装置および第二の通信装置がそれぞれ複数のネットワークに物理的あるいは論理的に接続され、第一の通信装置と第二の通信装置がネットワークを介してパケット通信を行う通信方法において、第一の通信装置は、通信パケットを送信する際に、通信パケットの送信元アドレスおよび自装置がネットワークに接続しているアドレスとネットワークを識別する識別子の組を通知する探索パケットを、通信パケットの宛先に向けて送信を行い、第二の通信装置は、探索パケットを受信した場合に、探索パケットから第一の通信装置がネットワークと接続しているアドレスとネットワークの識別子の組を読み取り、その組から第二の通信装置が接続しているネットワークと同じ識別子を有する少なくとも１つの組を選択し、選択した組の第一の通信装置のアドレスを宛先アドレスとし、第二の通信装置が選択した組のネットワークと接続しているアドレスを送信元アドレスとした提案パケットを、選択した組のネットワークを介して送信し、第一の通信装置は、提案パケットを受信した場合に、通信パケットに記載されている第二の通信アドレスを読み取り、第一の通信装置から第二の通信装置へ送信する通信パケットを、読み取った第二の通信装置のアドレスを宛先として転送することを特徴とする。
【００２９】
（３）上記（１）または（２）に記載の通信方法において、探索パケットに、第一の通信装置がネットワークと接続しているアドレスおよび通信プロトコルの組が記載されており、記載された通信プロトコルにより第一の通信装置が第二の通信装置と該当ネットワークで通信を行うときに使用するプロトコルを通知し、第二の通信装置は、探索パケット記載された通信プロトコルをも読み取り、自装置が対応している通信プロトコルに対してのみ通信を行うことを特徴とする。
【００３０】
（４）上記（１）から（３）のいずれかに記載の通信方法において、探索パケットに、第一の通信装置がランダムに作成した数値列が記載されており、第二の通信装置は、探索パケットを受信した場合、数値列を読み取り、提案パケットに読み取った数値列を記載して送信することを特徴とする。
【００３１】
（５）第一の通信装置が複数のネットワークに物理的あるいは論理的に接続されており、第一のネットワークと接続されている第二の通信装置および第二のネットワークと接続されている第三の通信装置とパケット通信を行う通信方法において、第一の通信装置は、第二の通信装置と通信を行う通信パケットを送信する際に、請求項１から４いずれかに記載の探索パケットを送信し、第二の通信装置は、探索パケットを受信した場合、請求項１から４いずれかに記載の提案パケットに、第三の通信装置が接続している第二のネットワークの識別子と第三の通信装置が第二のネットワークと接続しているアドレスを含むリダイレクト指示を記載して送信し、第一の通信装置は、リダイレクト指示が記載された提案パケットを受信した場合には、第一の通信装置から第二の通信装置に送信する通信パケットをリダイレクト指示に記載された第三の通信装置のアドレスを宛先として、リダイレクト指示に記載された第二のネットワークを介して転送することを特徴とする。
【００３２】
（６）上記（５）に記載の通信方法において、第二のネットワークに該第二のネットワークに接続している通信端末および転送装置のアドレスを管理する管理装置を有し、第一の通信装置には、あらかじめ管理装置のアドレスが設定されており、第一の通信装置は、リダイレクト指示が記載された提案パケットを受信した場合に、リダイレクト指示されたネットワークの識別子およびリダイレクト先のアドレスを読み取り、リダイレクト指示に記載されたネットワークに対応する管理装置に対してリダイレクト指示に記載されたアドレスが管理されているかどうか問い合わせを行い、管理装置は、第一の通信装置からの問い合わせに対して、応答を行い、第一の通信装置は、応答の結果にしたがって、リダイレクト指示に従って第一の通信装置から第二の通信装置に送信する通信パケットをリダイレクト指示に記載された第三の通信装置のアドレスを宛先として、リダイレクト指示に記載された第二のネットワークを介して転送するかどうかを決定することを特徴とする。
【００３３】
（７）パケット通信を行う通信装置において、第一のネットワークあるいは端末と接続する物理的あるいは論理的な第一のインタフェースと、物理的あるいは論理的に第一のネットワークあるいは端末と異なる複数のネットワークと接続する第二から第N（Nは三以上の整数）のインタフェースを有し、第一のインタフェースよりパケットを受信した場合に経路テーブルを検索し、出力インタフェースを決定するルーティング処理部と、経路テーブルに経路情報がなかった場合、第二から第Nのインタフェースのうち少なくとも一つから、第二から第Nのインタフェースのアドレスの必ずしも全部ではない１つあるいは複数のアドレスを含む探索パケットを送信する探索パケット送信部と、探索パケットを送信してから一定時間の間、提案パケットの受信を待ち、提案パケットを受信した場合、その内容を判定する提案パケット受信部と、提案パケット受信部からの判定を受け取り、経路テーブルを作成、追加、修正を行う経路テーブル作成部を有することを特徴とする。
【発明の効果】
【００３４】
本発明によれば、自通信装置が通信をしようとする相手側の通信装置との間だけで、その通信に必要なIPルーティング情報の交換を行うことにより、大規模なルーティング情報を必要とせずに、簡易に経路の選択を実現する。また、相手側通信装置との間だけでルーティング情報を交換することにより、誤った情報が通知された場合でも、影響範囲が全ネットワークに及ぶことはない。
【００３５】
さらに、本発明によれば、ルーティング情報の交換において、ネットワークの識別子を用いることにより交換処理を単純化する。また、ルーティング情報の交換において、通信に使用するプロトコル情報も交換することにより、いろいろなプロトコルに対応する。
【００３６】
さらに、本発明によれば、ルーティング情報の交換において、マジックナンバ（ランダムな数値）を用いることにより、簡易に問い合わせと応答の対応を取る。また、ルーティング情報の交換において、ネットワーク内にある管理サーバへ問い合わせを行うことにより該当ネットワークと関係のない端末からの偽情報による通信を拒絶する。
【００３７】
以上説明したように、本発明の通信方法および通信装置を用いることにより、あるユーザが接続している複数のネットワーク間でお互いのルーティング情報を交換する必要がなくなる。すなわち、各ネットワークは他のネットワークとは独立にユーザとの接続サービスを提供可能となる。
【００３８】
また、複数のネットワークに接続している本発明の通信装置がネットワークに他のネットワークのルーティング情報をダイナミックルーティングプロトコルを用いて伝達する必要がなくなる。すなわち、ユーザ側から伝達された誤ったルーティング情報によりネットワーク全体に影響をおよぼすことになる事態を防止できる。
【００３９】
また、本発明の通信装置がネットワークからルーティング情報をダイナミックルーティングプロトコルを用いて伝達されることなく、端末が通信を行おうとする別の端末との間の経路についてのみ、どのネットワークを経由して端末同士が通信可能かを発見することができる。すなわち、本発明の通信装置が膨大なルーティング情報を保持することなく必要な部分だけルーティング情報を持てばよく、簡易に通信が可能である。
【００４０】
さらに、本発明の提案パケットにネットワークの識別子を含ませることにより、ネットワークの選択を効率的に行うことができる。
【００４１】
さらに、本発明の探索パケットに通信方式に関する情報を含ませることにより、経路に関する情報とサポートしているプロトコルに関する情報を効率的に交換することが可能となる。
【００４２】
さらに、本発明の探索パケットにランダムに発生した数値を含ませることにより、探索パケットと提案パケットの対応を簡易に行うことが出来、不正な提案パケットによる攻撃を防止することができる。
【００４３】
さらに、ある本発明の通信装置が別の通信装置へのリダイレクトを指定し、そのリダイレクト指定の宛先が正規のアドレスであることを確認することにより、探索パケットが通るネットワークに所属していない端末とも安全に通信が可能となる。
【００４４】
このように、本発明は、上記の如き通信方法および通信装置を用いることにより、下記の如き所期の目的を達成することが可能である。すなわち、
（１）デフォルト経路を用いる従来の技術において複数の回線を用いて外部ネットワークと接続を行うことはできないといった問題を解決することが可能となる。
【００４５】
（２）さらに、複数の回線を用いて外部ネットワークと接続を行う場合に、通信経路の決定やルーティング・プロトコル等の複雑な設定を管理者が行う必要があるといった課題を解決することが可能となる。
【００４６】
（３）また、ダイナミック・ルーティング・プロトコルを用いることにより、膨大な規模のルーティングテーブルを保有する必要があるといった課題を解決することが可能となる。
【００４７】
（４）また、ダイナミック・ルーティング・プロトコルを用いることにより、誤ったルーティング情報が通知された場合、ネットワーク全体に影響をおよぼす可能性があるといった課題を解決することが可能となる。
【発明を実施するための最良の形態】
【００４８】
以下、本発明の実施の形態を、図面を用いて詳細に説明する。
【実施例１】
【００４９】
図１は、本発明の実施例を示す図である。
本実施例１では、通信装置がルータとして動作する場合を例にとり説明を行っているが、以下の説明で明らかなように、通信装置がパソコン等の端末であってもよい。また、ネットワークの数を３で説明を行うが、以下の説明より明らかなように、ネットワークの数は３に限るものではない。
【００５０】
同図に示すように、３つのネットワークに対して本発明の通信装置１を介して端末１が接続されている。同様に、ネットワーク１および２に対して本発明の通信装置２を介して端末２が接続され、ネットワーク１および３に対して本発明の通信装置３を介して端末３が接続されている。
【００５１】
ここで、本発明の通信装置は、自装置が接続しているネットワークからIPアドレスをそれぞれ付与されている。例えば、本発明の通信装置１は、ネットワーク１、２、３それぞれから、それぞれのネットワークと通信可能なIPアドレスを付与されている。
【００５２】
ただし、あるネットワークに所属するルータは、本発明の通信装置１に他のネットワークからどのようなIPアドレスが払い出されているのかを予め知っている必要はない。例えば、ネットワーク２から本発明の通信装置１に払い出されたIPアドレス２１を宛先とする経路は、ネットワーク１に所属するルータ（例えばルータ１１、ルータ１２、ルータ１３）のルーティングテーブルには設定されている必要はない。
【００５３】
本発明の通信装置１は、ネットワーク１をデフォルトのネットワークとし、端末１にはネットワーク１と通信可能なIPアドレスが予め設定されている。
【００５４】
本発明の通信装置２、３、端末２、３についても同様である。
端末１が端末２と通信する場合の、本発明の通信方法について説明を行う。
まず、端末１は端末２のIPアドレスを宛先とし、端末１のIPアドレスを送信元としたIPパケットを本発明の通信装置１に転送する。
【００５５】
このIPパケットを受信した本発明の通信装置１は、端末２のIPアドレスを宛先とし、端末１のIPアドレスを送信元としたIPパケットに、本発明の通信装置１が各ネットワークから払い出されているIPアドレスを書き込んだIPパケット（探索パケット）を作成し、ネットワーク１に転送する。
【００５６】
前記探索パケットは、宛先アドレスが端末２のアドレスであるために、ネットワーク１を経由してルータ１１からルータ１２に転送され、ルータ１２から本発明の通信装置２に転送される。
【００５７】
前記探索パケットを受信した本発明の通信装置２は、前記探索パケットを端末２に転送することなく、パケットに書き込まれた、本発明の通信装置１が各ネットワークから払い出されているIPアドレスを読み取る。
【００５８】
本発明の通信装置２は、前記読み取ったアドレスの少なくとも１つあるいは全部に対して、前記読み取ったアドレスを宛先とし、本発明の通信装置２が各ネットワークから払いだされたアドレスを送信元とする、１つあるいは複数のIPパケット（提案パケット）を作成し、送信元のIPアドレスが所属するネットワークを経由して各ネットワークのルータへ転送する。
【００５９】
前記１つあるいは複数の提案パケットは、その宛先が必ずしも転送されたネットワークと通信可能なIPアドレスではない。例えば、ネットワーク３から本発明の通信装置１に払い出されたIPアドレス３１を宛先とする提案パケットをネットワーク２に転送された場合、IPアドレス３１はネットワーク２内のルータのルーティングテーブルには存在しないことから、転送ができない。
【００６０】
逆に、例えば、ネットワーク２から本発明の通信装置１に払い出されたIPアドレス２１を宛先とする提案パケットをネットワーク２に転送された場合、本提案パケットはネットワーク２で転送可能なことから本発明の通信装置１に転送される。このように、本発明の通信装置２が送信した提案パケットのうち、いくつかが、本発明の通信装置１に転送される。
【００６１】
前記提案パケットを受信した本発明の通信装置１は、提案パケットの宛先IPアドレスと送信元IPアドレスを読み取る。この動作により、本発明の通信装置１は端末２と通信するために使用することが可能なネットワークと、本発明の通信装置２のIPアドレスを知ることができるため、本実施例の場合には、本発明の通信装置１は、端末２宛てのパケットの経路として図２のような経路テーブルを作成する。この時点で、端末２へ到達するネットワーク１以外の経路が発見されたことになる。
【００６２】
さらに、本発明の通信装置は、図２に示す経路テーブルの複数の経路の組から一つを選択する。例えば、３行目に記載の経路を選択した場合には、本発明の通信装置１が受信した、端末１を送信元とし、端末２を宛先とするパケットを、本発明の通信装置２がネットワーク２から払い出されたIPアドレス２２を宛先としてネットワーク２に転送する。
【００６３】
本発明の通信装置がこのような動作を行うことで、ネットワーク１、２、３間でお互いのルーティング情報を交換することなく、また複数のネットワークに接続している本発明の通信装置がネットワークに他のネットワークのルーティング情報をダイナミックルーティングプロトコルを用いて伝達することなく、また、本発明の通信装置がネットワークからルーティング情報をダイナミックルーティングプロトコルを用いて伝達されることなく、端末が通信を行おうとする別の端末との間の経路についてのみ、どのネットワークを経由して端末同士が通信可能かを発見することができるため、膨大なルーティング情報を保持することなく通信が可能である。
【００６４】
また、ここでは、端末１から端末２へ向けてIPパケットを転送する動作が最初に行われる場合について説明を行ったが、いったん上記動作により経由するネットワークを決定した後は、前記IPパケットが到着するたびに上記説明を行った動作を行う必要はない。
【実施例２】
【００６５】
実施例１で説明を行った本発明の通信装置および通信方法は、提案パケットが必ずしも相手側の本発明の通信装置に到達しない場合がある。そこで本実施例２では、提案パケットが相手側の本発明の通信装置に到達するような通信方法および通信装置について説明を行う。
【００６６】
以下、ネットワーク構成は図１に示した構成を有するものとして説明を行う。IPアドレスに関しても実施例１で説明したのと同様に設定されているとする。
【００６７】
ここでは、端末１が端末２と通信する場合の、本発明の通信方法について説明を行う。
まず、端末１は端末２のIPアドレスを宛先とし、端末１のIPアドレスを送信元としたIPパケットを本発明の通信装置１に転送する。このIPパケットを受信した本発明の通信装置１は、端末２のIPアドレスを宛先とし、端末１のIPアドレスを送信元としたIPパケットに、本発明の通信装置１が各ネットワークから払い出されているIPアドレスとそれぞれのネットワークの識別子を書き込んだIPパケット（探索パケット）を作成し、ネットワーク１に転送する。
【００６８】
すなわち探索パケットには、図３のテーブルに示すような情報が含まれている。実施例１と同様に、前記探索パケットは、宛先アドレスが端末２のアドレスであるために、ネットワーク１を経由してルータ１１からルータ１２に転送され、ルータ１２から本発明の通信装置２に転送される。
【００６９】
前記探索パケットを受信した本発明の通信装置２は、前記探索パケットを端末２に転送することなく、パケットに書き込まれた、本発明の通信装置１が各ネットワークから払い出されているIPアドレスとネットワークの識別子の組を読み取る。
【００７０】
本発明の通信装置２は、前記読み取ったネットワークの識別子のなからから自装置が接続しているネットワークを検索し、検索によって得られたネットワークとそのネットワークに接続している本発明の通信装置１のIPアドレスを得る。この場合、本発明の通信装置２はネットワーク１とネットワーク２に接続しているために、図３のテーブルの１行目と２行目を読み取り、３行目は無視する。
【００７１】
さらに、本発明の通信装置２は、得られた組の少なくとも１つあるいは全部に対して、前記読み取ったアドレスを宛先とし、前記アドレスに対応するネットワークから本発明の通信装置２が払いだされたアドレスを送信元とする、１つあるいは複数のIPパケット（提案パケット）を作成し、送信元のIPアドレスが所属するネットワークを経由して各ネットワークのルータへ転送する。
【００７２】
すなわち、この場合は、（宛先IPアドレス、送信元IPアドレス）＝（IPアドレス１１、IPアドレス１２）、（IPアドレス２１、IPアドレス２２）の２つの提案パケットのうち１つあるいは２つを送信する。ただし、前者の提案パケットについては、すでに探索パケットを受信している経路であるため、自明であり、あえて提案パケットを送信する必要はない。
【００７３】
このような探索パケット、提案パケットをもちいることにより、実施例１で説明したように、その宛先が必ずしも転送されたネットワークと通信可能なIPアドレスではない、といった状況になることはない。例えば（宛先IPアドレス、送信元IPアドレス）＝（IPアドレス２１、IPアドレス２２）の提案パケットはネットワーク２を経由してかならず、本発明の通信装置１に到達する。
【００７４】
提案パケットを受信した本発明の通信装置１の動作は、実施例１で説明した動作と同様である。
【００７５】
本発明の通信装置がこのような動作を行うことで、ネットワーク１、２、３間でお互いのルーティング情報を交換することなく、また複数のネットワークに接続している本発明の通信装置がネットワークに他のネットワークのルーティング情報をダイナミックルーティングプロトコルを用いて伝達することなく、また、本発明の通信装置がネットワークからルーティング情報をダイナミックルーティングプロトコルを用いて伝達されることなく、端末が通信を行おうとする別の端末との間の経路についてのみ、どのネットワークを経由して端末同士が通信可能かを発見することができるため、膨大なルーティング情報を保持することなく通信が可能である。さらに、提案パケットを必要最低限のみとすることにより、効率的に情報を交換することが可能となる。
【００７６】
また、ここでは、端末１から端末２へ向けてIPパケットを転送する動作が最初に行われる場合について説明を行ったが、いったん上記動作により経由するネットワークを決定した後は、前記IPパケットが到着するたびに上記説明を行った動作を行う必要はない。
【実施例３】
【００７７】
実施例１、２で説明を行った本発明の通信装置および通信方法は、経路を確定した後に端末１から端末２へ向かうパケットを転送する場合に、例えば、図２に示す経路テーブルの複数の経路の組から３行目に記載の経路を選択した場合には、本発明の通信装置１が受信した、端末１を送信元とし、端末２を宛先とするパケットを、本発明の通信装置２がネットワーク２から払い出されたIPアドレス２２を宛先としてネットワーク２に転送する必要がある。
【００７８】
この場合に、本発明の通信装置１および２の間の通信プロトコルとして、端末１から２へむかうIPパケットのヘッダに記載されたIPアドレスを単純に本発明の通信装置のアドレスに変換する方法（NATを用いる方法）と、端末１から端末２へむかうIPパケットを本発明の通信装置１から通信装置２に向かうIPパケットにカプセル化して転送する方法（トンネルを用いる場合）がある。さらにトンネルを用いる場合についても、IP in IPやIPSecなど様々な種類のトンネル技術があり、相手側が一部の方式に対応していない場合などでは通信ができなくなる可能性がある。
【００７９】
そこで本実施例３では、通信前に方式のネゴシエーションを行い、相手側の対応する方式を用いて通信をする方法および通信装置について説明する。
ネットワークの構成は図１に示した構成を有するものとして説明を行う。IPアドレスに関しても実施例１で説明したのと同様に設定されているとする。
【００８０】
以下、端末１が端末２と通信する場合の、本発明の通信方法について説明を行う。
まず、端末１は端末２のIPアドレスを宛先とし、端末１のIPアドレスを送信元としたIPパケットを本発明の通信装置１に転送する。このIPパケットを受信した本発明の通信装置１は、端末２のIPアドレスを宛先とし、端末１のIPアドレスを送信元としたIPパケットに、本発明の通信装置１が各ネットワークから払い出されているIPアドレスとそれぞれのネットワークの識別子および対応する方式を書き込んだIPパケット（探索パケット）を作成し、ネットワーク１に転送する。
【００８１】
すなわち探索パケットには、図４のテーブルに示すような情報が含まれている。実施例１と同様に、前記探索パケットは、宛先アドレスが端末２のアドレスであるために、ネットワーク１を経由してルータ１１からルータ１２に転送され、ルータ１２から本発明の通信装置２に転送される。
【００８２】
前記探索パケットを受信した本発明の通信装置２は、前記探索パケットを端末２に転送することなく、パケットに書き込まれた、本発明の通信装置１が各ネットワークから払い出されているIPアドレスとネットワークの識別子および対応する方式の組を読み取る。
【００８３】
本発明の通信装置２は、前記読み取ったネットワークの識別子のなからから自装置が接続しているネットワークを検索し、検索によって得られたネットワークとそのネットワークに接続している本発明の通信装置１のIPアドレスおよび対応する方式を得る。この場合、本発明の通信装置２はネットワーク１とネットワーク２に接続しているために、図４に示すテーブルの１行目と２行目を読み取り、３行目は無視する。
【００８４】
さらに本発明の通信装置２は、自装置が各ネットワークにおいて対応する方式と読み取った結果を比較する。例えば、本発明の通信装置２がNATに対応し、IP in IPに対応していなかったならば、図４に示す経路テーブルの１行目は無視され、２行目が読み取られる。
【００８５】
さらに、本発明の通信装置２は、得られた組の少なくとも１つあるいは全部に対して、前記読み取ったアドレスを宛先とし、前記アドレスに対応するネットワークから本発明の通信装置２が払いだされたアドレスを送信元とし、自装置が対応する方式を書き込んだ１つあるいは複数のIPパケット（提案パケット）を作成し、送信元のIPアドレスが所属するネットワークを経由して各ネットワークのルータへ転送する。
【００８６】
すなわち、この例の場合は、（宛先IPアドレス、送信元IPアドレス、方式）＝（IPアドレス２１、IPアドレス２２、NAT）の１つの提案パケットを送信する。当然、ネットワーク１を経由する提案パケットについては、実施例２と同様、すでに探索パケットを受信している経路であるため、自明であり、あえて提案パケットを送信する必要はない。
【００８７】
このような探索パケット、提案パケットをもちいることにより、ネットワークの選択と方式の選択を同時に行うことが可能となる。 
【００８８】
提案パケットを受信した本発明の通信装置１の動作は実施例１、２で説明した動作と同様である。本発明の通信装置１は、提案パケットで提案された方式を持いて、本発明の通信装置２と通信を行う。
【００８９】
本発明の通信装置がこのような動作を行うことで、ネットワーク１、２、３間でお互いのルーティング情報を交換することなく、また複数のネットワークに接続している本発明の通信装置がネットワークに他のネットワークのルーティング情報をダイナミックルーティングプロトコルを用いて伝達することなく、また、本発明の通信装置がネットワークからルーティング情報をダイナミックルーティングプロトコルを用いて伝達されることなく、端末が通信を行おうとする別の端末との間の経路についてのみ、どのネットワークを経由して端末同士が通信可能かを発見することができるため、膨大なルーティング情報を保持することなく通信が可能である。さらに、通信方式を通知することにより、経路に関する情報とサポートしているプロトコルに関する情報を効率的に交換することが可能となる。
【００９０】
また、ここでは、端末１から端末２へ向けてIPパケットを転送する動作が最初に行われる場合について説明を行ったが、いったん上記動作により経由するネットワークを決定した後は、前記IPパケットが到着するたびに上記説明を行った動作を行う必要はない。
【実施例４】
【００９１】
本発明の実施例１から３で説明を行った本発明の通信方法および装置では、例えば端末１から端末２への通信と端末１から端末３への通信が同時に発生した場合に、本発明の通信装置１は本発明の通信装置２および３からほぼ同時に提案パケットを受信することになり、探索パケットと提案パケットの対応がつきにくいという問題がある。
【００９２】
また、悪意のユーザが提案パケットを無差別に送信し、それを本発明の通信装置が受信した場合、本発明の通信装置があやまった経路を選択してしまう可能性がある。
【００９３】
そこで、本実施例４では、探索パケットと提案パケットの対応をとる本発明の通信方法と装置について説明を行う。ネットワークの構成は図１に示した構成を有するものとして説明を行う。IPアドレスに関しても実施例１で説明したのと同様に設定されているとする。
【００９４】
以下、端末１が端末２と通信する場合の、本発明の通信方法について説明を行う。
まず、端末１は端末２のIPアドレスを宛先とし、端末１のIPアドレスを送信元としたIPパケットを本発明の通信装置１に転送する。このIPパケットを受信した本発明の通信装置１は、端末２のIPアドレスを宛先とし、端末１のIPアドレスを送信元とした実施の例１から３で説明を行った探索パケットに、ランダムに選択した数値を付与して送信する。
【００９５】
前記探索パケットを受信した本発明の通信装置２は、探索パケットから前記ランダムな数値を読み取り、前記読み取った値を提案パケットに付与して、実施例１から３で説明を行った動作によって、提案パケットを転送する。
【００９６】
前記提案パケットを受信した本発明の通信装置１は、前記提案パケットから前記ランダムな数値を読み取り、前記読み取った数値が、自装置が送信した探索パケットに含まれる値と同じ値であった場合には、実施例１から３で説明を行った動作を行い、異なる値であった場合には、提案パケットを無視する。
【００９７】
本発明の通信装置がこのような動作を行うことで、ネットワーク１、２、３間でお互いのルーティング情報を交換することなく、また複数のネットワークに接続している本発明の通信装置がネットワークに他のネットワークのルーティング情報をダイナミックルーティングプロトコルを用いて伝達することなく、また、本発明の通信装置がネットワークからルーティング情報をダイナミックルーティングプロトコルを用いて伝達されることなく、端末が通信を行おうとする別の端末との間の経路についてのみ、どのネットワークを経由して端末同士が通信可能かを発見することができるため、膨大なルーティング情報を保持することなく通信が可能である。さらに以上のような動作により、探索パケットと提案パケットの対応をとることができ、悪意ユーザによる提案パケットを用いた攻撃により、本発明の通信装置が誤った動作を行うことを回避可能である。
【実施例５】
【００９８】
本発明の実施例１から４で説明を行った本発明の通信方法および装置では、本発明の通信装置がネットワーク１に探索パケットを転送するために、ネットワーク１に接続していない端末と通信をすることができない。これに対し本実施例では、ある本発明の通信装置が別の通信装置へのリダイレクトを指定することにより、探索パケットが通るネットワークに所属していない端末とも通信を可能とする本発明の通信方法および通信装置について説明を行う。
【００９９】
図５は、本実施例５におけるネットワークの構成を示す図である。
同図に示すように、２つのネットワークに対して本発明の通信装置１を介して端末１が接続されている。同様に、ネットワーク１に対して本発明の通信装置２を介して端末２が接続され、ネットワーク３に対して本発明の通信装置３を介して端末３が接続されている。
【０１００】
ここで、本発明の通信装置は、自装置が接続しているネットワークからIPアドレスをそれぞれ付与されている。例えば、本発明の通信装置１は、ネットワーク１、２それぞれから、それぞれのネットワークと通信可能なIPアドレスを付与されている。
【０１０１】
ただし、あるネットワークに所属するルータは、本発明の通信装置１に他のネットワークからどのようなIPアドレスが払い出されているのかを予め知っている必要はない。例えば、ネットワーク２から本発明の通信装置１に払い出されたIPアドレス２１を宛先とする経路は、ネットワーク１に所属するルータ（例えばルータ１１、ルータ１２、ルータ１３）のルーティングテーブルには設定されている必要はない。
【０１０２】
本発明の通信装置１は、ネットワーク１をデフォルトのネットワークとし、端末１にはネットワーク１と通信可能なIPアドレスが予め設定されている。
本発明の通信装置２、３、端末２、３についても同様である。
【０１０３】
端末１が端末３と通信する場合の、本発明の通信方法について説明を行う。
まず、端末１は端末２のIPアドレスを宛先とし、端末１のIPアドレスを送信元としたIPパケットを本発明の通信装置１に転送する。このIPパケットを受信した本発明の通信装置１は、端末２のIPアドレスを宛先とし、端末１のIPアドレスを送信元としたIPパケットに、本発明の通信装置１が各ネットワークから払い出されているIPアドレスとそれぞれのネットワークの識別子を書き込んだIPパケット（探索パケット）を作成し、ネットワーク１に転送する。すなわち探索パケットには、図１２のテーブルに示すような情報が含まれている。
【０１０４】
実施例１と同様に、前記探索パケットは、宛先アドレスが端末２のアドレスであるために、ネットワーク１を経由してルータ１１からルータ１２に転送され、ルータ１２から本発明の通信装置２に転送される。ここで、探索パケットは実施例３、４で説明を行ったように、通信方式に関する情報、ランダムな数値が含まれていてもよい。
【０１０５】
前記探索パケットを受信した本発明の通信装置２は、前記探索パケットを端末２に転送することなく、パケットに書き込まれた、本発明の通信装置１が各ネットワークから払い出されているIPアドレスとネットワークの識別子の組を読み取る。
【０１０６】
本発明の通信装置２は、前記読み取ったネットワークの識別子のなからからあらかじめ設定してあるネットワークを検索し、検索によって得られたネットワークとそのネットワークに接続している本発明の通信装置１のIPアドレスを得る。
【０１０７】
ここでは、本発明の通信装置２はネットワーク２、それに接続されている本発明の通信装置３および、端末３に関する情報があらかじめ設定されているものとする。この場合、本発明の通信装置２は、探索パケットの中に記載されたIPアドレスとネットワークの識別子の組の中からネットワーク２に関する情報を取り出す。
【０１０８】
さらに、本発明の通信装置２は、得られた情報の組の少なくとも１つあるいは全部に対して、前記読み取ったアドレスを宛先とし、前記アドレスに対応するネットワークから本発明の通信装置２が払いだされたアドレスを送信元とする、１つあるいは複数のIPパケット（提案パケット）を作成し、送信元のIPアドレスが所属するネットワークを経由して各ネットワークのルータへ転送する。この提案パケットについては、リダイレクト転送先として本発明の通信装置３がネットワーク２から付与されたIPアドレス２３およびネットワーク２の識別子を含む。
【０１０９】
前記提案パケットを受信した本発明の通信装置１は、提案パケットの中に記載された、リダイレクト転送先であるIPアドレスとネットワーク識別子を読み取る。この動作により、本発明の通信装置１は端末２と通信する場合に、端末３と通信することで同等の通信が可能であることを知る。例えば、端末２がWEBサーバであった場合に、端末２はリダイレクト先としてミラーサーバである端末３への通信を指示する場合などに相当する。
【０１１０】
このような動作により、端末１が端末３との通信を行う場合には、本実施例の場合には、本発明の通信装置１は、端末３宛てのパケットの経路として図６のような経路テーブルを作成する。
【０１１１】
さらに、本発明の通信装置は、本発明の通信装置１が受信した、端末１を送信元とし、端末２を宛先とするパケットを、本発明の通信装置３がネットワーク２から払い出されたIPアドレス２３を宛先としてネットワーク２に転送する。
【０１１２】
なお、探索パケットに実施例４で説明を行ったランダムな数値が含まれる場合において、提案パケットに同じ値の数値が含まれない場合に、本発明の通信装置１は提案パケットを無視する動作を行ってもよい。
【０１１３】
本発明の通信装置がこのような動作を行うことで、ネットワーク１、２間でお互いのルーティング情報を交換することなく、また複数のネットワークに接続している本発明の通信装置がネットワークに他のネットワークのルーティング情報をダイナミックルーティングプロトコルを用いて伝達することなく、また、本発明の通信装置がネットワークからルーティング情報をダイナミックルーティングプロトコルを用いて伝達されることなく、端末が通信を行おうとする別の端末との間の経路についてのみ、どのネットワークを経由して端末同士が通信可能かを発見することができるため、膨大なルーティング情報を保持することなく通信が可能である。さらに、ある本発明の通信装置が別の通信装置へのリダイレクトを指定することにより、探索パケットが通るネットワークに所属していない端末とも通信が可能となる。
【０１１４】
また、ここでは、端末１から端末２へ向けてIPパケットを転送する動作が最初に行われる場合について説明を行ったが、いったん上記動作により経由するネットワークを決定した後は、前記IPパケットが到着するたびに上記説明を行った動作を行う必要はない。
【実施例６】
【０１１５】
上記実施例５では、端末２へ通信を行う際に本発明の通信装置２が端末３へのリダイレクト指示を行う方法について説明を行った。しかし、提案パケットによるリダイレクト指示が不正な内容であった場合に、無関係の端末にリダイレクトされてしまう可能性がある。そこで本実施例では、個々のネットワーク内にネットワークを管理するサーバを設置し、リダイレクト先が該当ネットワークの管理者により正規に管理されている端末かどうかを確認する通信方法について説明を行う。
【０１１６】
図７は、本実施例６におけるネットワークの構成を示す図である。
実施例５で説明を行った場合と同様に、２つのネットワークに対して本発明の通信装置１を介して端末１が接続されている。同様に、ネットワーク１に対して本発明の通信装置２を介して端末２が接続され、ネットワーク２に対して本発明の通信装置３を介して端末３が接続されている。また、ネットワーク１および２にはそれぞれ、管理サーバ１および管理サーバ２が接続されており、各管理サーバはそれぞれのネットワークに接続されている通信装置、端末のIPアドレスを管理している。
【０１１７】
ここで、本発明の通信装置は、自装置が接続しているネットワークからIPアドレスをそれぞれ付与されている。例えば、本発明の通信装置１は、ネットワーク１、２それぞれから、それぞれのネットワークと通信可能なIPアドレスを付与されている。
【０１１８】
ただし、あるネットワークに所属するルータは、本発明の通信装置１に他のネットワークからどのようなIPアドレスが払い出されているのかを予め知っている必要はない。例えば、ネットワーク２から本発明の通信装置１に払い出されたIPアドレス２１を宛先とする経路は、ネットワーク１に所属するルータ（例えばルータ１１、ルータ１２）のルーティングテーブルには設定されている必要はない。
【０１１９】
本発明の通信装置１は、ネットワーク１をデフォルトのネットワークとし、端末１にはネットワーク１と通信可能なIPアドレスが予め設定されている。
【０１２０】
本発明の通信装置２、３、端末２、３についても同様である。
まず、端末１は端末２のIPアドレスを宛先とし、端末１のIPアドレスを送信元としたIPパケットを本発明の通信装置１に転送する。このIPパケットを受信した本発明の通信装置１は、端末２のIPアドレスを宛先とし、端末１のIPアドレスを送信元としたIPパケットに、本発明の通信装置１が各ネットワークから払い出されているIPアドレスとそれぞれのネットワークの識別子を書き込んだIPパケット（探索パケット）を作成し、ネットワーク１に転送する。
【０１２１】
すなわち探索パケットには、図１２のテーブルに示すような情報が含まれている。実施例１と同様に、前記探索パケットは、宛先アドレスが端末２のアドレスであるために、ネットワーク１を経由してルータ１１からルータ１２に転送され、ルータ１２から本発明の通信装置２に転送される。ここで、探索パケットは実施例３、４で説明を行ったように、通信方式に関する情報、ランダムな数値が含まれていてもよい。
【０１２２】
前記探索パケットを受信した本発明の通信装置２は、前記探索パケットを端末２に転送することなく、パケットに書き込まれた、本発明の通信装置１が各ネットワークから払い出されているIPアドレスとネットワークの識別子の組を読み取る。
【０１２３】
本発明の通信装置２は、前記読み取ったネットワークの識別子のなかからあらかじめ設定してあるネットワークを検索し、検索によって得られたネットワークとそのネットワークに接続している本発明の通信装置１のIPアドレスを得る。ここでは、本発明の通信装置２はネットワーク２、それに接続されている本発明の通信装置３および、端末３に関する情報があらかじめ設定されているものとする。
【０１２４】
この場合、本発明の通信装置２は、探索パケットの中に記載されたIPアドレスとネットワークの識別子の組の中からネットワーク２に関する情報を取り出す。
【０１２５】
さらに、本発明の通信装置２は、得られた情報の組の少なくとも１つあるいは全部に対して、前記読み取ったアドレスを宛先とし、前記アドレスに対応するネットワークから本発明の通信装置２が払いだされたアドレスを送信元とする、１つあるいは複数のIPパケット（提案パケット）を作成し、送信元のIPアドレスが所属するネットワークを経由して各ネットワークのルータへ転送する。この提案パケットについては、リダイレクト転送先として本発明の通信装置３がネットワーク２から付与されたIPアドレス２３およびネットワーク２の識別子を含む。
【０１２６】
前記提案パケットを受信した本発明の通信装置１は、提案パケットの中に記載された、リダイレクト転送先であるIPアドレスとネットワーク識別子を読み取る。この動作により、本発明の通信装置１は端末２と通信する場合に、端末３と通信することで同等の通信が可能であることを知る。例えば、端末２がWEBサーバであった場合に、端末２はリダイレクト先としてミラーサーバである端末３への通信を指示する場合などに相当する。
ここまでは、実施例５で説明を行った通信方法と同じである。
【０１２７】
さらに、本発明の通信装置１は、前記読み取った端末３あるいは本発明の通信装置３のIPアドレスを、あらかじめ本発明の通信装置１に登録してある管理サーバ２へ問い合わせを行う。管理サーバ２は前記問い合わせを受け取ったならば、問い合わせに対して、応答を行う。
【０１２８】
前記応答には、問い合わせ対象である端末３あるいは本発明の通信装置３のIPアドレスが管理サーバ２に登録されている正規アドレスであるかどうかの回答が含まれる。また、前記応答には、問い合わせ対象のIPアドレスの払い出し情報やアドレスの使用者に関する情報などの付加的情報が含まれていてもよい。
【０１２９】
前記応答を受信した本発明の通信装置１は、前記応答内の回答が正規アドレスでなかった場合あるいは前記付加的情報を本発明の通信装置１が不正と判断した場合には、前記提案パケットのリダイレクト指示を無視する。この動作により、不正のリダイレクト指示により不正に設置した端末と通信を確立させる行為が行われることを防止する。また、前記応答内の回答が正規アドレスであったならば、前記実施例５で説明を行った方法と同様の通信方式で通信を行う。
【０１３０】
すなわち、本発明の通信装置１は、端末３宛てのパケットの経路として図６のような経路テーブルを作成する。さらに、本発明の通信装置１は、本発明の通信装置１が受信した、端末１を送信元とし、端末２を宛先とするパケットを、本発明の通信装置３がネットワーク２から払い出されたIPアドレス２３を宛先としてネットワーク２に転送する。
【０１３１】
なお、探索パケットに実施例４で説明を行ったランダムな数値が含まれる場合において、提案パケットに同じ値の数値が含まれない場合に、本発明の通信装置１は提案パケットを無視する動作を行ってもよい。
【０１３２】
本発明の通信装置がこのような動作を行うことで、ネットワーク１、２、３間でお互いのルーティング情報を交換することなく、また複数のネットワークに接続している本発明の通信装置がネットワークに他のネットワークのルーティング情報をダイナミックルーティングプロトコルを用いて伝達することなく、また、本発明の通信装置がネットワークからルーティング情報をダイナミックルーティングプロトコルを用いて伝達されることなく、端末が通信を行おうとする別の端末との間の経路についてのみ、どのネットワークを経由して端末同士が通信可能かを発見することができるため、膨大なルーティング情報を保持することなく通信が可能である。
【０１３３】
さらに、ある本発明の通信装置が別の通信装置へのリダイレクトを指定し、そのリダイレクト指定の宛先が正規のアドレスであることを確認することにより、探索パケットが通るネットワークに所属していない端末とも安全に通信が可能となる。
【０１３４】
また、ここでは、端末１から端末２へ向けてIPパケットを転送する動作が最初に行われる場合について説明を行ったが、いったん上記動作により経由するネットワークを決定した後は、前記IPパケットが到着するたびに上記説明を行った動作を行う必要はない。
【実施例７】
【０１３５】
本実施例７では、実施例１から６で説明を行った通信装置の構成について説明を行う。
【０１３６】
図８は、本発明の通信装置の構成例を示す図であり、図９は、その動作を説明するためのフローチャートである。
【０１３７】
本発明の通信装置５０は、図８に示すように、端末側インタフェース５１，ネットワーク側インタフェース５２、ルーティング処理部５３、経路テーブル５４、探索パケット送信部５５、提案パケット受信部５６、経路テーブル作成部５７を有する。
【０１３８】
まず、本発明の通信装置５０が、端末側から端末側インタフェース５１においてパケットを受信した場合には（ステップＳ１０）、ルーティング処理部５３により、経路テーブル５４の検索が行われる（ステップＳ１１）。その結果、経路テーブル５４上に前記受信したパケットの宛先に関する情報があった場合には、ルーティング処理部５３は経路テーブル５４の内容にしたがって、前記受信したパケットをネットワーク側インタフェース５２に転送する（ステップＳ１２）。
【０１３９】
経路テーブル５４に前記受信したパケットの宛先に関する情報がなかった場合には、ルーティング処理部５３は、前記受信したパケットを一時記憶し、探索パケット送信部５５は探索パケットをネットワーク側インタフェース５２から送信し、提案パケット受信部５６は一定時間の待機を行う（ステップＳ１３）。
【０１４０】
前記の一定時間以内にネットワーク側インタフェース５２より提案パケット受信部５６が提案パケットを受信したならば、提案パケット受信部５６はその内容の判定を行う（ステップＳ１４）。この判定処理には、実施例３で説明を行った通信方式の一致に関する判定、実施例４で説明をおこなったランダムな数値の一致に関する判定、実施例５、６で説明を行ったリダイレクトの可否に関する判定が含まれてもよい。
【０１４１】
さらに判定がOKとなった場合には、提案パケット受信部５６は経路テーブル作成部５７に提案パケットの内容を通知する。前記通知を受けた経路テーブル作成部５７は経路テーブル５４を作成、あるいは内容追加、修正を行い（ステップＳ１５）、ルーティング処理部５３は前記一時記憶したパケットを経路テーブル５４の内容に従って転送する（ステップＳ１２）。
【０１４２】
また、前記一定時間内に提案パケット受信部５６が提案パケットを受信しなかった場合、あるいは前記提案パケット受信部５６で判定がNGとなった場合には、提案パケット受信部５６は経路テーブル作成部５７に、提案パケット非受信あるいは判定NGの結果を通知する。
【０１４３】
前記通知を受けた経路テーブル作成部５７は前記受信したパケットの宛先に対する経路としてデフォルト経路を経路テーブル５４に追加する（ステップＳ１６）。さらにルーティング処理部５３は前記一時記憶したパケットを経路テーブル５４の内容にしたがい、デフォルト経路に転送する（ステップＳ１２）。
【０１４４】
以上のような本発明の通信装置５０を用いることにより、実施例１から６で説明を行った通信方法による通信が可能となる。
【図面の簡単な説明】
【０１４５】
【図１】本発明の実施例１，２，３，４におけるネットワークの構成を示す図である。
【図２】実施例１における経路テーブルの例を示す図である。
【図３】実施例２におけるテーブルの例を示す図である。
【図４】実施例３におけるテーブルの例を示す図である。
【図５】実施例５におけるネットワークの構成を示す図である。
【図６】実施例５における経路テーブルの例を示す図である。
【図７】実施例６におけるネットワークの構成を示す図である。
【図８】本発明における通信装置の構成例である。
【図９】本発明における通信装置の動作を説明するためのフローチャートである。
【図１０】従来のネットワークの構成例を示す図である。
【図１１】従来のルーティングテーブルの例を示す図である。
【図１２】実施例５におけるテーブルの例を示す図である。
【符号の説明】
【０１４６】
５０：通信装置
５１：端末側インタフェース
５２：ネットワーク側インタフェース
５３：ルーティングテーブル
５４：経路テーブル
５５：探索パケット送信部
５６：提案パケット受信部
５７：経路テーブル作成部
【図１】
2005210588.tif 000003
【図２】
2005210588.tif 000004
【図３】
2005210588.tif 000005
【図４】
2005210588.tif 000006
【図５】
2005210588.tif 000007
【図６】
2005210588.tif 000008
【図７】
2005210588.tif 000009
【図８】
2005210588.tif 000010
【図９】
2005210588.tif 000011
【図１０】
2005210588.tif 000012
【図１１】
2005210588.tif 000013
【図１２】
2005210588.tif 000014