(57)【特許請求の範囲】
【請求項１】
すでにインターネット網に接続されているクライアント機器と、中継装置と、インターネット網に接続され、前記クライアント機器が前記中継装置及びインターネットを介して接続されるサーバと、を有するインターネット接続システムにおいて実行される、クライアント機器と前記サーバとの仮想プライベートネットワーク接続方法であって、
（ａ）前記中継装置に前記サーバのＩＰアドレスを通知する工程と、
（ｂ）前記中継装置が、前記で通知されたＩＰアドレスを使用して前記中継装置と前記サーバとの間で、トンネリング接続によるＴＣＰ／ＩＰセッションを確立する工程と、
（ｃ）前記中継装置若しくはサーバが、中継装置若しくはクライアント機器からの情報に基づいて、このサーバとの間でトンネリング接続が確立されている複数の中継装置若しくはクライアント機器を１つの仮想プライベートネットワークに接続されているものとして、１以上のグループのうち特定のグループのうちの１つにグループ化する工程と、を有し、
前記（ａ）工程は、前記中継装置がインターネット上に設けられたトンネル仲介サーバに接続し、この仲介サーバから前記サーバのＩＰアドレスを受け取るものであり、
前記サーバはグループ毎のハブとして作動するものである
ことを特徴とする方法。
【請求項２】
すでにインターネット網に接続されているクライアント機器と、中継装置と、インターネット網に接続され、前記クライアント機器が前記中継装置及びインターネットを介して接続されるサーバと、を有するインターネット接続システムにおいて実行される、クライアント機器とサーバとの仮想プライベートネットワーク接続方法であって、
（ａ）前記中継装置に前記サーバのＩＰアドレスを通知する工程と、
（ｂ）前記中継装置が、前記で通知されたＩＰアドレスを使用して前記中継装置と前記サーバとの間で、トンネリング接続によるＴＣＰ／ＩＰセッションを確立する工程と、
（ｃ）前記中継装置若しくはサーバが、中継装置若しくはクライアント機器からの情報に基づいて、このサーバとの間でトンネリング接続が確立されている複数の中継装置若しくはクライアント機器を１つの仮想プライベートネットワークに接続されているものとして、１以上のグループのうち特定のグループのうちの１つにグループ化する工程と、を有し、
前記（ｂ）工程は、
（ｂ−１）前記中継装置が、前記通知されたサーバのＩＰアドレスを用い、前記サーバに接続する工程と、
（ｂ−２）前記中継装置に、トンネリングによるＴＣＰ／ＩＰセッション確立のための前記中継装置用のＩＰアドレスを通知する工程と、
（ｂ−３）前記サーバと中継装置との間にトンネリングによるＴＣＰ／ＩＰセッションを確立する工程と
を含むものであり、
前記サーバはグループ毎のハブとして作動するものである
ことを特徴とする方法。
【請求項３】
請求項２記載の方法において、
前記（ｂ−２）工程は、前記サーバが、前記前記中継装置に対して、トンネリングによるＴＣＰ／ＩＰセッション確立のための前記中継装置用のＩＰアドレスを通知するものであることを特徴とする方法。
【請求項４】
請求項２記載の方法において、
前記（ｂ）工程はさらに、
（ｂ−４）  前記サーバが、前記中継装置に対して、前記中継装置用のＭＡＣアドレスを生成して通知する工程
をさらに有することを特徴とする方法。
【請求項５】
請求項２記載の方法において、
前記（ｂ−１）工程は、前記サーバが前記中継装置の接続認証を行う工程を含み、
前記（ｂ−２）工程は、前記接続認証の結果に応じて前記中継装置のＩＰアドレスを割り当てる工程を含む
ことを特徴とする方法。
【請求項６】
請求項５記載の方法において、
前記（ｂ−２）工程は、さらに、前記接続認証の結果に応じて前記中継装置のＭＡＣアドレスを割り当てる工程を含むことを特徴とする方法。
【請求項７】
請求項５記載の方法において、
前記（ｃ）工程のグループ化は、前記（ｂ−１）工程の接続認証に基づいて実行されるものであることを特徴とする方法。
【請求項８】
請求項２記載の方法において、
前記（ａ）工程は、前記中継装置がインターネット上に設けられたトンネル仲介サーバに接続し、この仲介サーバから前記サーバのＩＰアドレスを受け取るものであり、
前記（ｂ−２）工程は、前記仲介サーバが、前記前記中継装置に対して、トンネリングによるＴＣＰ／ＩＰセッション確立のための前記中継装置用のＩＰアドレスを通知するものである
ことを特徴とする方法。
【請求項９】
請求項８記載の方法において、
前記（ｂ）工程はさらに、
（ｂ−４）  前記仲介サーバが、前記中継装置に対して、前記中継装置用のＭＡＣアドレスを生成して通知する工程
をさらに有することを特徴とする方法。
【請求項１０】
すでにインターネット網に接続されているクライアント機器と、中継装置と、インターネット網に接続され、前記クライアント機器が前記中継装置及びインターネットを介して接続されるサーバと、を有するインターネット接続システムにおいて実行される、クライアント機器とサーバとの仮想プライベートネットワーク接続方法であって、
（ａ）前記中継装置に前記サーバのＩＰアドレスを通知する工程と、
（ｂ）前記中継装置が、前記で通知されたＩＰアドレスを使用して前記中継装置と前記サーバとの間で、トンネリング接続によるＴＣＰ／ＩＰセッションを確立する工程と、
（ｃ）前記中継装置若しくはサーバが、中継装置若しくはクライアント機器からの情報に基づいて、このサーバとの間でトンネリング接続が確立されている複数の中継装置若しくはクライアント機器を１つの仮想プライベートネットワークに接続されているものとして、１以上のグループのうち特定のグループのうちの１つにグループ化する工程と、を有し、
前記（ｃ）工程のグループ化は、前記中継装置若しくはクライアント機器のＩＰアドレスに基づいて実行されるものであり、
前記サーバはグループ毎のハブとして作動するものである
ことを特徴とする方法。
【請求項１１】
すでにインターネット網に接続されているクライアント機器と、中継装置と、インターネット網に接続され、前記クライアント機器が前記中継装置及びインターネットを介して接続されるサーバと、を有するインターネット接続システムにおいて実行される、クライアント機器とサーバとの仮想プライベートネットワーク接続方法であって、
（ａ）前記中継装置に前記サーバのＩＰアドレスを通知する工程と、
（ｂ）前記中継装置が、前記で通知されたＩＰアドレスを使用して前記中継装置と前記サーバとの間で、トンネリング接続によるＴＣＰ／ＩＰセッションを確立する工程と、
（ｃ）前記中継装置若しくはサーバが、中継装置若しくはクライアント機器からの情報に基づいて、このサーバとの間でトンネリング接続が確立されている複数の中継装置若しくはクライアント機器を１つの仮想プライベートネットワークに接続されているものとして、１以上のグループのうち特定のグループのうちの１つにグループ化する工程と、を有し、
前記（ｃ）工程は、中継装置若しくはクライアント機器からの情報に基づいて、この中継装置若しくはクライアント機器が、複数のグループうちのいずれのグループに属するかを判断し、当該判断に係るグループにグループ化するものであり、
前記サーバはグループ毎のハブとして作動するものである
ことを特徴とする方法。
【請求項１２】
ネットワーク対応家電であって、
所定の指令を含むパケットを受け取り、この指令に基づいてこのネットワーク家電を制御するための制御部と、
インターネット上に置かれたサーバのグローバルアドレスを記憶するサーバアドレス記憶部と、
前記サーバアドレスに基づき、すでにインターネット網に接続されているネットワーク対応家電とサーバとの間にＴＣＰ／ＩＰによるトンネリング接続を確立するためのトンネリング確立部と、
前記サーバから同じ仮想プライベートネットワークグループに属する他のネットワーク家電の情報を受け取り記憶するグループ情報記憶部と、
前記トンネリング接続を介したサーバとの間で通信されるパケットをカプセリング／ディカプセリングし、前記制御部若しくは前記他のネットワーク家電にルーティングするパケット処理装置と、
を有し、
前記トンネリング確立部によるトンネリング接続確立の前に、前記サーバとの認証接続を行い、それに基づいてサーバから仮想プライベートネットワーク上のＩＰアドレスを受け取り格納する中継装置アドレス格納部
を有することを特徴とするネットワーク対応家電。
【請求項１３】
ネットワーク対応家電であって、
所定の指令を含むパケットを受け取り、この指令に基づいてこのネットワーク家電を制御するための制御部と、
インターネット上に置かれたサーバのグローバルアドレスを記憶するサーバアドレス記憶部と、
前記サーバアドレスに基づき、すでにインターネット網に接続されているネットワーク対応家電とサーバとの間にＴＣＰ／ＩＰによるトンネリング接続を確立するためのトンネリング確立部と、
前記サーバから同じ仮想プライベートネットワークグループに属する他のネットワーク家電の情報を受け取り記憶するグループ情報記憶部と、
前記トンネリング接続を介したサーバとの間で通信されるパケットをカプセリング／ディカプセリングし、前記制御部若しくは前記他のネットワーク家電にルーティングするパケット処理装置と、
を有し、
前記トンネリング確立部によるトンネリング接続確立の前に、前記サーバとの認証接続を行い、それに基づいてサーバから仮想プライベートネットワーク上のＭＡＣアドレスを受け取り格納する中継装置アドレス格納部
を有することを特徴とするネットワーク家電。
【請求項１４】
ネットワーク対応家電であって、
所定の指令を含むパケットを受け取り、この指令に基づいてこのネットワーク家電を制御するための制御部と、
インターネット上に置かれたサーバのグローバルアドレスを記憶するサーバアドレス記憶部と、
前記サーバアドレスに基づき、すでにインターネット網に接続されているネットワーク対応家電とサーバとの間にＴＣＰ／ＩＰによるトンネリング接続を確立するためのトンネリング確立部と、
前記サーバから同じ仮想プライベートネットワークグループに属する他のネットワーク家電の情報を受け取り記憶するグループ情報記憶部と、
前記トンネリング接続を介したサーバとの間で通信されるパケットをカプセリング／ディカプセリングし、前記制御部若しくは前記他のネットワーク家電にルーティングするパケット処理装置と、
を有し、
前記サーバから同じ仮想プライベートネットワークグループに属する他のネットワーク家電の情報を受け取る際に、アドレス要求／応答パケット中の仮想ネットワークデバイスのＭＡＣアドレスを前記サーバから受け取ったＭＡＣアドレスに書き換えるアドレス生成部
を有することを特徴とするネットワーク対応家電。
【請求項１５】
ネットワーク対応家電であって、
所定の指令を含むパケットを受け取り、この指令に基づいてこのネットワーク家電を制御するための制御部と、
インターネット上に置かれたサーバのグローバルアドレスを記憶するサーバアドレス記憶部と、
前記サーバアドレスに基づき、すでにインターネット網に接続されているネットワーク対応家電とサーバとの間にＴＣＰ／ＩＰによるトンネリング接続を確立するためのトンネリング確立部と、
前記サーバから同じ仮想プライベートネットワークグループに属する他のネットワーク家電の情報を受け取り記憶するグループ情報記憶部と、
前記トンネリング接続を介したサーバとの間で通信されるパケットをカプセリング／ディカプセリングし、前記制御部若しくは前記他のネットワーク家電にルーティングするパケット処理装置と、
を有し、
さらに、
インターネット上に置かれたトンネリング仲介サーバのアドレスを記憶する仲介サーバアドレス記憶部と、
この仲介サーバアドレスに基づいて前記仲介サーバにアクセスし、この仲介サーバから前記サーバのアドレスを受け取るサーバアドレス取得部と
を有することを特徴とするネットワーク対応家電。
【請求項１６】
すでにインターネット網に接続されたクライアント機器と、中継装置と、インターネット網に接続され前記クライアント機器が前記中継装置及びインターネットを介して接続されるサーバと、を有するインターネット接続システムに使用される前記サーバであって、
前記中継装置との間にトンネリング接続を確立するトンネリング確立部と、
クライアント機器若しくは前記中継装置からの情報に基づいて、このサーバにトンネリング接続されている他の中継装置若しくはクライアント機器との間に仮想プライベートネットワークグループを構築する端末グループ管理部と、
前記クライアント機器若しくは／及び前記中継装置が所定の機種であるかを判別する機種判別部と、を有し、
前記端末グループ管理部は、この機種判別部による判別結果を前記クライアント機器に関連付けて管理するものであり、
このサーバはプライベートネットワーク毎のハブとして作動するものである
ことを特徴とするサーバ。
【請求項１７】
請求項１６記載のサーバにおいて、
前記判別された機種に基づいて前記クライアント機器に送信する命令をこのクライアント機器を制御するための所定形式のコマンドに変換するコマンド変換部をさらに有することを特徴とするサーバ。
【請求項１８】
すでにインターネット網に接続されたクライアント機器と、中継装置と、インターネット網に接続され前記クライアント機器が前記中継装置及びインターネットを介して接続されるサーバと、を有するインターネット接続システムに使用される前記サーバであって、
前記中継装置との間にトンネリング接続を確立するトンネリング確立部と、
クライアント機器若しくは前記中継装置からの情報に基づいて、このサーバにトンネリング接続されている他の中継装置若しくはクライアント機器との間に仮想プライベートネットワークグループを構築する端末グループ管理部と、
前記クライアント機器を制御するためのプロトコルを判別するプロトコル判別部と、を有し、
前記端末グループ管理部は、このプロトコル判別部による判別結果に基づいて同じプロトコルを利用するクライアント機器が属するネットワークグループを構築するものであり、
このサーバは前記仮想ネットワークグループ毎のハブとして作動するものである
ことを特徴とするサーバ。
【請求項１９】
すでにインターネット網に接続されたクライアント機器と、中継装置と、インターネット網に接続され前記クライアント機器が前記中継装置及びインターネットを介して接続されるサーバと、を有するインターネット接続システムに使用される前記サーバであって、
前記中継装置との間にトンネリング接続を確立するトンネリング確立部と、
クライアント機器若しくは前記中継装置からの情報に基づいて、このサーバにトンネリング接続されている他の中継装置若しくはクライアント機器との間に仮想プライベートネットワークグループを構築する端末グループ管理部と、を有し、
前記端末グループ管理部は、複数の仮想プライベートネットワークグループを管理し、クライアント機器若しくは前記中継装置からの情報に基づいて、このクライアント機器若しくは前記中継装置が属するべきグループを選択するものであり、
このサーバは前記仮想ネットワークグループ毎のハブとして作動するものである
ことを特徴とするサーバ。
【請求項２０】
すでにインターネット網に接続されたクライアント機器と、中継装置と、インターネット網に接続され前記クライアント機器が前記中継装置及びインターネットを介して接続されるサーバと、を有するインターネット接続システムに使用される前記サーバであって、
前記中継装置との間にトンネリング接続を確立するトンネリング確立部と、
クライアント機器若しくは前記中継装置からの情報に基づいて、このサーバにトンネリング接続されている他の中継装置若しくはクライアント機器との間に仮想プライベートネットワークグループを構築する端末グループ管理部と、
前記クライアント機器若しくは／及び中継装置の動作状態、使用状態、位置情報の少なくとも１つ又は複数の情報を取得する状態情報取得部と
を有し、
このサーバは前記仮想ネットワークグループ毎のハブとして作動するものである
ことを特徴とするサーバ。
【請求項２１】
すでにインターネット網に接続されたクライアント機器と、中継装置と、インターネット網に接続され前記クライアント機器が前記中継装置及びインターネットを介して接続されるサーバと、を有するインターネット接続システムに使用される前記サーバであって、
前記中継装置との間にトンネリング接続を確立するトンネリング確立部と、
クライアント機器若しくは前記中継装置からの情報に基づいて、このサーバにトンネリング接続されている他の中継装置若しくはクライアント機器との間に仮想プライベートネットワークグループを構築する端末グループ管理部と、
前記クライアント機器若しくは／及び中継装置に、仮想プライベートネットワーク上のＩＰアドレスを割り当てるアドレス管理部と、
を有し、
このサーバは前記仮想ネットワークグループ毎のハブとして作動するものである
ことを特徴とするサーバ。
【請求項２２】
請求項２１記載のサーバにおいて、
前記アドレス管理部は、前記各クライアント機器若しくは／及び中継装置に、仮想プライベートネットワークを通して接続するためのユニークなＭＡＣアドレスを割り当てるアドレス管理部を有することを特徴とするサーバ。
【請求項２３】
仮想プライベートネットワーク接続のための中継装置であって、
この中継装置は、ローカル通信プロトコルスタックには仮想ネットワークデバイスのドライバとして見えるインタフェースを有するものであり、
インターネット上に置かれたサーバのグローバルアドレスを記憶するサーバアドレス記憶部と、
前記サーバアドレスに基づき、このサーバに接続して仮想ネットワーク接続用のＩＰアドレスを受け取ると共にこの中継装置とサーバとの間にトンネリング接続を確立し、且つ、仮想ネットワーク接続用のＭＡＣアドレスを前記サーバから受け取るためのトンネリング確立部と、
前記インタフェースにより上記仮想ネットワーク上の他の中継装置のアドレスを含む要求パケットを捕獲し、発信元アドレスとして前記受け取ったＩＰアドレスを付して前記トンネリング接続へルーティングするルーティング処理部と、
前記インタフェースで捕獲された前記要求パケットが、ＡＲＰリクエストである場合、このＡＲＰリクエスト中の発信元ＭＡＣアドレスを前記サーバから受け取ったＭＡＣアドレスに書き換えて送信すると共に、ＡＲＰレスポンス中の送信先ＭＡＣアドレスを前記サーバから受け取ったＭＡＣアドレスから元のＭＡＣアドレスに書き戻すアドレス生成部と
を有することを特徴とする中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ＩＰｖ４（Internet Protocol version 4）が普及した現状のインフラ環境の下で、比較的簡易な手段により異なる家庭内ネットワークに属する端末同士を、インターネットを通してかつセキュリティの高い方法で双方向の通信を可能とする、クライアント機器とサーバの接続方法、およびそれに用いるサーバ、ネットワーク対応家電に関するものである。
【背景技術】
【０００２】
一般に、インターネットを中心とした公衆ネットワークを通したサービス提供環境においては、全ての情報の価値は、クライアント側ではなく、サーバ側に集まるようになっている。【０００３】
すなわち、各クライアントである端末機器は、基本的にインターネット上の情報を閲覧するための単なるビューワーにしか過ぎない。また、各クライアントはインターネット側に様々な情報の要求を発しており、インターネット側ではそのような各クライアントの情報を得ることができる。すなわち、全ての情報は、インターネット側に集められ、インターネット側からは定型的な情報が一方的に与えられるに過ぎない。このため、クライアント端末機を製造しているメーカーは付加価値が生み出しづらい状況となっている。【０００４】
このような状況を変えるためには、アクセス方向を逆行させ、サーバとクライアントの立場を逆転させることが必要である。すなわち、インターネットに接続される家庭内ネットワークがある場合、インターネット側から家庭内ネットワークへのアクセスが開始され、家庭内ネットワーク側からインターネット側へサービスが提供されるような状態を作り出す必要がある。【０００５】
このためには、ホームネットワークに接続された機器のそれぞれが、インターネットワーク側からユニークに特定できること、家庭内のルーティングの問題、セキュリティの問題を解決する必要がある。このような課題に対応し、ひとつの解決を見出せる技術として、ＩＰｖ６（Internet Protocol version 6: 第６世代インターネットプロトコル）がある。【０００６】
しかしながら、現在の日本のキャリアやインターネットサービスプロバイダを取り巻く環境を鑑みると、ＩＰｖ６の普及にはかなりの時間がかかるものと考えられる。例えば、現在使用しているＩＰｖ４の機材償却に最低２年〜３年は必要であり、テスト的なサービスが行われているのみである。【０００７】
今すぐにメーカーがＩＰｖ６対応ネットワークを実現するには、ＩＳＰレベルのサービスにまで手を出すしかないが、非常にコストがかかることであり、多くのメーカーにとって現実的ではない。家庭内ネットワークの事情が様々で非常に大きく異なることや、キャリアやＩＳＰによって接続の仕組みが大きく異なることもあり、これらの差を吸収して画一的なアプローチでＩＰｖ６環境を実現するための仕組みが必要である。【０００８】
この出願に係る発明の新規性や進歩性を否定するものではないが、上述した事情に関連する先行技術文献として特開２００１−２７４８４５号公報がある。【０００９】
従来のＩＰｖ４環境下で、ＩＰｖ６ネットワークで実現されるような家庭内ネットワークとインターネットとの間の双方向のアクセスを実現しようとする場合、以下のような問題がある。【００１０】
例えば、現在のＩＰｖ４環境下においては、自宅にネットワーク家電を設置する場合、自宅ネットワークを通して、インターネットに接続されたルータに繋げて使用する。このため、ネットワーク家電のＩＰアドレスは、プライベートアドレスになってしまい、自宅ネットワーク以外からはアクセスすることはできない。【００１１】
そこで、従来は、自宅のネットワーク家電にアクセスするために、ネットワーク家電をコントロールする機能を有する専用のルータを使用したり、ネットワーク家電をコントロールするための情報を一度インターネット上に設置されたデータセンターに蓄積し、ネットワーク家電からポーリングを行って取りに行く必要があった。【００１２】
しかし、専用のルータを使用した場合、汎用性が低くなりコストも嵩む。ポーリングを行ってコントロール情報を取りに行く場合、リアルタイムでのアクセスは行えず、ネットワークやサーバへの負荷も高くなる。【００１３】
この発明はこのような事情に鑑みてなされたもので、比較的簡易な手段により家庭内ネットワークとインターネット間の双方向の通信が可能なり、クライアント側のネットワーク家電等を製造するメーカーが独自の付加価値を見出すことができるインターネット接続システムを提供することを目的とするものである。
【発明の開示】
【課題を解決するための手段】
【００１４】
上記目的を達成するため、この発明の第１の主要な側面によれば、クライアント機器と、中継装置と、インターネット網に接続され、前記クライアント機器が前記中継装置及びインターネットを介して接続されるサーバと、を有するインターネット接続システムにおいて実行される、クライアント機器とサーバとの接続方法であって、（ａ）前記中継装置に前記サーバのＩＰアドレスを通知する工程と、（ｂ）前記中継装置が、前記で通知されたＩＰアドレスを使用して前記中継装置と前記サーバとの間で、トンネリング接続によるＴＣＰ／ＩＰセッションを確立する工程と、（ｃ）前記中継装置若しくはサーバが、中継装置若しくはクライアント機器からの情報に基づいて、このサーバとの間でトンネリング接続が確立されている複数の中継装置若しくはクライアント機器を１つの仮想プライベートネットワークに接続されているものとしてグループ化する工程と、を有することを特徴とする方法が提供される。【００１５】
このような構成によれば、ネットワーク家電等のクライアント機器に関する全ての通信はキャリアやＩＳＰに関らず、前記インターネット上のサーバを通して行われることになる。また、前記中継装置若しくは／及びクライアント機器を同じネットワークグループで管理することで、このサーバをハブのように機能させ、このサーバを通して異なる場所にある複数のクライアント機器同士が仮想プライベートネットワークグループ上の機器として相互通信可能になる。また、同時に前記クライアント機器にＩＰｖ４グローバルアドレスを割り振ることで、従来問題であった、インターネット上のサーバからのプライベートネットワーク中のクライアント機器の個体認識、家庭内ルーティング及びセキュリティの問題を全て解決でき、極めてオープンかつ、クローズドなネットワークの構築を実現することが可能になる。【００１６】
この発明の一の実施形態によれば、前記中継装置は各クライアント機器にそれぞれインストールされているものである。【００１７】
また、他の一の実施形態によれば、前記（ａ）工程は、前記中継装置がインターネット上に設けられたトンネル仲介サーバに接続し、この仲介サーバから前記サーバのＩＰアドレスを受取るものである。【００１８】
更なる他の一の実施形態によれば、前記（ｂ）工程は、（ｂ−１）前記中継装置が、前記割り当てられたサーバのＩＰアドレスを用い、前記サーバに接続する工程と、（ｂ−２）前記サーバが、前記中継装置に対して、トンネリングによるＴＣＰ／ＩＰセッション確立のための前記中継装置用のＩＰアドレスを通知する工程と、（ｂ−３）前記サーバと中継装置との間にトンネリングによるＴＣＰ／ＩＰセッションを確立する工程とを含むものである。この場合、前記（ｂ−１）工程は、前記サーバが前記中継装置の接続認証を行う工程を含み、前記（ｂ−２）工程は、前記接続認証の結果に応じて前記中継装置のＩＰアドレスを生成する工程を含むであることが好ましい。【００１９】
更なる別の一の実施形態によれば、前記（ｃ）工程のグループ化は、前記中継装置若しくはクライアント機器のＩＰアドレスに基づいて実行されるものである。【００２０】
さらに、この発明の第２の主要な側面によれば、ネットワーク対応家電であって、所定の指令を含むパケットを受け取り、この指令に基づいてこのネットワーク家電を制御するための制御部と、インターネット上に置かれたサーバのグローバルアドレスを記憶するサーバアドレス記憶部と、前記サーバアドレスに基づき、このネットワーク対応家電とサーバとの間にトンネリング接続を確立するためのトンネリング確立部と、前記サーバから同じグループに属する他のネットワーク家電の情報を受け取り記憶するグループ情報記憶部と、前記トンネリング接続を介したサーバとの間で通信されるパケットをカプセリング／ディカプセリングし、前記制御部若しくは前記他のネットワーク家電にルーティングするパケット処理装置と、を有することを特徴とするネットワーク対応家電が提供される。ここで、このネットワーク対応家電は、インターネット上に置かれたトンネリング仲介サーバのアドレスを記憶する仲介サーバアドレス記憶部と、この仲介サーバアドレスに基づいて前記仲介サーバにアクセスし、この仲介サーバから前記サーバのアドレスを受け取るサーバアドレス取得部とをさらに有するものであることが好ましい。【００２１】
また、この発明の第３の主要な側面によれば、クライアント機器と、中継装置と、インターネット網に接続され前記クライアント機器が前記中継装置及びインターネットを介して接続されるサーバと、を有するインターネット接続システムに使用される前記サーバであって、前記中継装置との間にトンネリング接続を確立するトンネリング確立部と、クライアント機器若しくは前記中継装置の情報に基づいて、このサーバにトンネリング接続されている他の中継装置若しくはクライアント機器との間にネットワークグループを構築する端末グループ管理部とを有することを特徴とするサーバが提供される。【００２２】
この発明の１の実施形態によれば、このサーバは、さらに、前記クライアント機器若しくは／及び前記中継装置が所定の機種であるかを判別する機種判別部を有し、前記端末グループ管理部は、この機種判別部による判別結果に基づいて所定の機種に係るクライアント機器が属するネットワークグループを構築するものである。【００２３】
また、この発明の他の一の実施形態によれば、このサーバは、さらに、前記ネットワークグループに基づいて前記クライアント機器に送信する命令をこのクライアント機器を制御するための所定形式のコマンドに変換するコマンド変換部を有する。【００２４】
この発明の更なる別の一の実施形態によれば、前記クライアント機器は、前記中継装置とは通信可能であるが、自らはインターネットに接続することができない周辺装置を含むものである。【００２５】
この発明の更なる他の１の実施形態によれば、このサーバは、さらに、前記クライアント機器若しくは／及び中継装置の動作状態、使用状態、位置情報の少なくとも１つ又は複数の情報を取得する状態情報取得部を有する。【００２６】
この発明の更なる他の特徴と顕著な効果は次の発明を実施するための最良の形態の項に記載された実施形態及び図面を参照することによって当業者にとって理解される。
【発明を実施するための最良の形態】
【００２７】
以下、この発明の実施の形態を図面を参照して説明する。【００２８】
図１は、この実施形態に係るネットワーク構成の例を示したものである。【００２９】
図中１は、ＩＰｖ４（第１の通信プロトコル）で通信を行う各種クライアント・ネットワーク家電２（以下「ネットワーク家電」という）…が接続されてなるホームネットワークである。このホームネットワーク１は例えば各家庭に導入されたＬＡＮによって構成される。また、各ネットワーク家電２には、この発明の中継装置３がインストールされている。【００３０】
そして、このホームネットワーク１は、通信キャリア／ＩＳＰを介してインターネット網４に接続されている。このインターネット網４では、ＩＰｖ４（第２の通信プロトコル）を用いて通信が行なわれるようになっている。【００３１】
そして、このインターネット網４には、前記ホームネットワーク１上のネットワーク家電２の通信を制御するＩｎｔｅｒＳｅｒｖｅｒ６（この発明の「サーバ」）が接続されている。このＩｎｔｅｒＳｅｒｖｅｒ６は、後で詳しく説明するように、前記ネットワーク家電２と、インターネット網４上若しくは他のホーム／グローバルネットワーク１ａ上の全てのネットワーク家電２ａ（パソコンを含む）、パーソナルコンピュータ２ｂ、サーバ２ｃとの間の接続を仲介する機能を有するものである。【００３２】
ここで、中継装置３とＩｎｔｅｒＳｅｒｖｅｒ６は、同じメーカー若しくは統一された規格の下に製造されることが意図されており、予め連動するように設計されたものである。そして、中継装置３には、後で説明するように、ＩｎｔｅｒＳｅｒｖｅｒ６からＩＰｖ４でのプライベートアドレス／グローバルアドレスが付与され、ＩＳＰやキャリアを問わず前記ＩｎｔｅｒＳｅｒｖｅｒ６にトンネリング接続によるＴＣＰ／ＩＰセッションが確立されて通信ができるようになっている。また、前記ホームネットワーク１に接続されるネットワーク家電２についても、前記中継装置３等と同じメーカー若しくは統一された規格の下に製造されたものであることが意図されており、例えば、これに限定されるものではないが、前記中継装置３のＩＰアドレスはこのネットワーク家電２の機種、その他の情報に基づいて、ユニークに生成されるようになっている。【００３３】
なお、前記ネットワーク家電２が自らはインターネットに接続できないビデオやテレビのような家電であっても良い。この場合には、前記中継装置３とネットワーク家電２は所定の通信インタフェース（ＩＥＥＥ１３９４）を介して接続され、各家電２のＩＤ（ユニークＩＤ）に対して仮想ＩＰアドレスを割り付けておけば良い。【００３４】
図２は、前記ネットワーク家電２及び中継装置３を示す概略構成図である。【００３５】
この中継装置３は、前記ＩｎｔｅｒＳｅｒｖｅｒ６のＩＰｖ４でのグローバルアドレスを記憶するサーバアドレス記憶部１０と、この中継装置３に割り当てられたＩＰｖ４でのプライベートアドレスを記憶する中継装置アドレス記憶部９と、仮想プライベートネットワークを構成するための、前記ＩｎｔｅｒＳｅｒｖｅｒ６から割当られた端末のグループ「端末グループ」を記憶する端末グループ記憶部５２と、ＩｎｔｅｒＳｅｒｖｅｒ６のアドレスに基づいてＩｎｔｅｒＳｅｒｖｅｒ６との間でトンネリング接続を確立するトンネリングセッション確立部１１と、ＩＰｖ４／ＩＰｖ６でのパケットをＩＰｖ４でカプセリング／ディカプセリングして前記ＩｎｔｅｒＳｅｒｖｅｒ６とのネットワーク家電側Ｉ／Ｆ・制御部２０間でトンネリング送受信を行うためのカプセリング処理部１２と、前記ディカプセリングされた前記ＩｎｔｅｒＳｅｒｖｅｒ６側からのパケットをネットワーク家電２にルーティングするためのルーティング処理部１３と、パケットの送受信を行うパケット送受信部１４とを有する。又、この中継装置３には、ネットワーク家電２のアドレス（ＭＡＣアドレス等）を生成する場合等のためにアドレス生成部１５が設けられている。【００３６】
このような構成によれば、前記ネットワーク家電２からのパケット若しくはネットワーク家電２へのパケットを前記ＩｎｔｅｒＳｅｒｖｅｒ６と中継装置３との間に確立されたＩＰｖ４によるトンネルを通して送受信することができる。【００３７】
また、図３は、前記ＩｎｔｅｒＳｅｒｖｅｒ６を示す概略構成図である。【００３８】
このＩｎｔｅｒＳｅｒｖｅｒ６には、中継装置３のＩＰｖ４でのプライベートアドレス１６ａ（トンネリングセッションを特定する情報）及び前記クライアント機器のＩＰｖ４／ＩＰｖ６でのグローバルアドレス１６ｂ、ネットワークグループ名１６ｃを関連付けて記憶するアドレス記憶部１６と、前記中継装置３のアドレスに基づいてこの中継装置３との間でトンネリング接続を確立するトンネリングセッション確立部１７と、前記ネットワーク家電２との間の通信を可能にするためにＩＰｖ４／ＩＰｖ６でのパケットをＩＰｖ４でカプセリング／ディカプセリングするカプセリング処理部１８と、前記ネットワーク家電２と他の端末・サーバとの間の通信をルーティングするルーティング部１９とを有する。【００３９】
また、このＩｎｔｅｒＳｅｒｖｅｒ６は、前記ネットワーク家電２（クライアント機器）をグループとして管理するための端末グループ管理部５４を有する。この端末グループ管理部は、ＬＡＮスィッチ機能を有し、前記ネットワーク家電に割り当てられたＩＰアドレスに応じてこのネットワーク家電をグループ化する機能を有する。具体的には、予め設定された複数のグループのうち、適当な１つのグループを選択して、このグループに当該ネットワーク家電を包含するようにする。このことで、同じネットワークグループに属する端末の物理的な位置に関わらず、このＩｎｔｅｒｓｅｒｖｅｒ６をハブとして仮想的なネットワークを構築することができる。なお、グループ化は、前記ネットワーク家電の他の属性、例えば、ＭＡＣアドレスやプロトコルに応じて実行するようにしても良い。また、後で述べるように、ユーザ認証に基づいて行うようにしてもよい。【００４０】
さらに、このＩｎｔｅｒＳｅｒｖｅｒ６は、前記ネットワーク家電２若しくは中継装置３のＩＰｖ４アドレスに基づいてこのネットワーク家電２の種別を判別する機種判別部２１と、この判別結果に基づいて前記ネットワーク家電２への命令を所定のコマンドに変換して設定するコマンド設定部２２と、トンネル送信されるＩＰｖ４パケットを所定のルールでフィルタリングするフィルタ部２３と、所定の場合通信セッションを切断する通信セッション切断部２４とを有する。そして、パケットの送受信は送受信処理部２５によって行われるようになっている。【００４１】
また、このＩｎｔｅｒＳｅｒｖｅｒ６は、ユーザ管理サーバ３０に接続されている。このユーザ管理サーバ３０は、後で詳しく説明するように、各中継装置３や各ネットワーク家電２のユーザの情報を管理するものであり、各ユーザのＩＤ、パスワード及び課金情報等の会員情報の他、機種情報やネットワーク情報（ＩＰアドレス、ネットワークグループの情報）等を格納するユーザ情報管理ＤＢ３１を有する。【００４２】
前記ユーザ管理ＤＢ３１の情報は、前記トンネリングセッション確立部１７におけるトンネリングセッション確立の際に利用されるようになっている。すなわち、図３Ａに示すように、このトンネリングセッション確立部１７には、さらに、前記ユーザ情報に基いて各ユーザの認証を行うユーザ認証部２８と、前記中継装置３にトンネリングセッション確立用のＩＰｖ４プライベートアドレスを割当てる中継装置ＩＰアドレス割当部２９とが設けられている。ここで、各中継装置に割当てられるＩＰアドレスは、ＩＰｖ４／ＩＰｖ６であれば任意のアドレス体系を使用でき、プライベートアドレスもしくはグローバルアドレスを割当てることができる。前記ユーザ、機種、ネットワークの情報に応じて所定のルールに従って生成してもよいし、ユーザの指定によるものでも良い。なお、中継装置３のアドレス生成方法はこれに限定されるものではない。【００４３】
さらに、このＩｎｔｅｒＳｅｒｖｅｒ６は、インターネット４（ＩＰｖ４ネットワーク）上で公開されたＷｅｂサーバ３２を有し、前記中継装置３やネットワーク家電２のユーザからの要求を受け付けて各種設定を行わせることを可能にする。例えば、前記フィルタ部２３によるフィルタルールの少なくとも一部は、このＷｅｂサーバ３２を通し、前記ユーザによって適宜変更可能である。なお、このＷｅｂサーバ３２へのアクセスは中継装置３及びＩｎｔｅｒＳｅｒｖｅｒ６経由であっても良いし、これらを経由しないインターネット４経由であっても良い。【００４４】
前記フィルタ部２３は、図４に示すように、フィルタルール記憶部３３と、フィルタルール設定部３４とを有する。このフィルタルール記憶部３３及びフィルタルール設定部３４は、インターネット上に公開された前記Ｗｅｂサーバ３２に接続されており、前記Ｗｅｂサーバ３２には図３に示すようにＩｎｔｅｒＳｅｒｖｅｒ対話用インタフェース生成部３５がインストールされている。このＷｅｂサーバ３２に接続したユーザは、このインタフェース生成部３５によって生成されたインタフェースを自己の端末上に表示することで、フィルタルールの入力・変更ができるようになっている。ここで設定できるフィルタルールとしては、例えば、セキュリティに関するものが考えられる。【００４５】
セキュリティ上のフィルタルールとしては、大きく分けて、（１）外部からのホームネットワーク側へのアクセスを一切認めない、（２）外部からのホームネットワーク側へのアクセスを、事前に認めたサーバ（Ｗｅｂサイト）やネットワークから以外認めない、（３）外部からのホームネットワーク側へのアクセスを一切制限しない、が考えられる。また、この場合のフィルタリング方法としては、一切アクセスを認めない方法であっても良いが、特定のポートのみ通すようにしても良い。【００４６】
ここで、ホームネットワーク１から外部へのアクセスについても、事前に設定したサーバにはアクセスできないよう制限できるようにすると、子供が有害なコンテンツにアクセスするのを防げたり、ユーザが一般に不正(トラップを仕掛けているような)なサイトにアクセスすることを防ぐことが可能になる。【００４７】
なお、このフィルタルールの設定は、前記Ｗｅｂサーバ３２に設けられ前記ユーザ管理サーバ３０に接続可能なユーザ認証部３６によるＩＤ及びパスワードの認証後に行えるようになっている。【００４８】
前記フィルタルール設定部３４は、上述したようにユーザの入力に基づいてフィルタルールを設定するが、これ以外に、ユーザからの設定によらずに前記ユーザ管理サーバ３０に格納された会員情報（課金情報や端末機種の情報）に基づいて自動的にフィルタルールを生成する機能を有する。例えば、前記会員の属性や会費納付状況に応じて、接続を許可しなかったり、特定のサーバにのみ接続可能にするなどのゲートウェイとしての設定が行える。【００４９】
このゲートウェイとしてのフィルタルールは、このＩｎｔｅｒＳｅｒｖｅｒ６を通して有料ビジネスを提供するベンダーをコントロールするために使用できる。例えば、図３に示すように、前記ＩｎｔｅｒＳｅｒｖｅｒ６に代理サーバ３８を設けてユーザのアクセス先をＤＢ３９に管理しておき、ユーザが前記フィルタルール設定部３４に設定されたアクセス先にしか接続できないようにしてもよい。この場合、前記ユーザＩＤ及びパスワードに加えてそのユーザがどのサービス（サーバ）をどのような条件で契約しているかを前記ユーザ管理ＤＢ３１で管理しておき、その条件に応じて、トランザクションをコントロールする機能を実装するようにすることが好ましい。また、特定のベンダーに関しては、登録手続きが完了していないユーザに対してはサンプルだけを見せて本体は見せないようにする等の設定をしてもよい。【００５０】
図５は、このフィルタ部２３での処理を示すフローチャートである。まずトンネリングセッションが開始されると、前記ユーザ管理サーバ３０から受け取った会員情報に基づいてフィルタルールを設定する（ステップＳ１）。ついで、前記代理サーバ３８から前記ユーザの接続要求先の情報（例えばＷｅｂサイトのアドレス）を受け取る（ステップＳ２）。ついで、この接続先の情報を前記フィルタルールに適用し、接続の可否を判断し（ステップＳ３）、接続を許可できない場合には前記通信セッション切断部２４で通信セッションを切断する（ステップＳ４）。接続許可できる場合には、セッションが未だ有効であるかを判断し（ステップＳ５）、有効である場合には前記ステップＳＳ２〜Ｓ５の処理を繰り返す。有効でない場合には処理を終了する。【００５１】
また、前記代理サーバ３８で、データの通信量を計測しておき、課金を払ってない者からのアクセスは認めないようにしても良い。この場合、ベンダーには、ユーザのＩＤのみを教え、そのユーザのパスワードやＩＰアドレスは案内しないようにする。これにより、ユーザはＩｎｔｅｒＳｅｒｖｅｒ６用の一対のＩＤ及びパスワードを管理していればよいことになる。また、ＩＰアドレスはユーザの都合その他の理由で変更する場合もあるので、つどにＩＤをキーに確認してもらうのがシステムの整合性の点でも適当であり、ベンダー側でデータをもって不当にアクセスする危険も排除できるために適当である。【００５２】
前記フィルタルールの執行及びそれに基づいた通信セッションの切断や接続等の実行は、前記通信セッション切断部２４によって行なわれる。なお、設定されたフィルタルールを用いたフィルタ方法、ゲートウェイ方法、その他の方法は公知であるのでその説明は省略する。【００５３】
また、前記ＩｎｔｅｒＳｅｒｖｅｒ６は、前記ネットワーク家電２のアドレスを知らない者がこのネットワーク家電２の検索を行うための機能を提供するネットワーク家電検索部２６（図３）を有する。この検索部２６は、ユーザが指定した情報、例えばネットワーク家電２の稼動状態やネットワークの稼動状態等に基づいて所望のネットワーク家電２を検索し特定する。【００５４】
このため、この検索部２６は、図６に示すように前記ネットワーク家電２の稼動状態やネットワークの状態等の状態情報を受け取る状態情報受取部４０と、この情報を前記ネットワーク家電のＩＰアドレスや中継装置３のＩＰアドレス、ネットワークグループ名に関連付けて蓄積する状態情報蓄積部４１と、ネットワーク家電制御部４２とを有する。【００５５】
前記状態情報受取部４０は、前記ネットワーク家電２を収容するトンネリングドメイン（ホームネットワーク若しくは中継装置３）ごとに各ネットワーク家電２の状態を受け取る。この情報受取部４０は、前記ドメイン毎に所定の周期で状態を問い合わせることによってその状態を受け取るものであっても良いし、各ドメインに対する参照の要求があった時点で問い合わせて状態を取得するものであっても良い。前者の方法の場合、例えば、前記中継装置アドレス格納部１６ａに登録された中継装置毎に１分毎に各端末２の電源のＯＮ／ＯＦＦの問い合わせを行う。【００５６】
前記状態情報蓄積部４１は、上記各ネットワーク家電２の状態情報を、このネットワーク家電２及び中継装置３に関連付けて格納する。ここで、取得する状態情報は、大きく分けて、動作状態、使用状態，位置情報，特性を表す情報，ノード（中継装置３やネットワーク家電２）が保有する情報を示す情報，その他ノードを特定するのに有効な情報の少なくとも１つ又は複数である。【００５７】
動作情報としては、少なくとも電源の状態、ネットワーク接続状態、通信状態の１つあるいは複数である。使用状態としては少なくとも利用者に関する情報、動作時間に関する情報、負荷に関する情報の１つ又は複数である。位置情報は、少なくとも地理的な位置や座標情報、郵便番号，部屋番号等である。特性を示す情報としては、ノードの種類、機能、形状、色彩、装置情報，ソフトウエア情報，機能、管理者等の情報のうちの１つ又は複数である。【００５８】
また、前記機種判別部２１で判別された機種も個々に状態情報として格納する。前記状態情報受取部４０は、この機種情報に基づいて前記ネットワーク家電２から得られる情報を特定し、必要な情報をそれらに適合した形式で取得することができるようになっている。【００５９】
前記検索部２６は、また、前記ユーザ管理サーバ３０に接続して前記検索若しくは接続要求を行う者を認証し、検索及び接続要求を許可する接続要求認証部２７を備えている。例えば、ユーザのホームネットワーク（中継装置３）に対してはそのネットワークに関して接続を許可された特定のユーザ以外の検索及び接続は許可されない。この認証部２７で肯定的であると判断された場合には、この検索部２６は前記状態情報蓄積部４１及びアドレス記憶部１６にアクセスして所望の端末２のアドレスを検索（中継装置３を特定）する。【００６０】
検索の結果は、例えば、ユーザがパーソナルコンピュータを使用して外部から自己のホームネットワークの中継装置３を検索した場合には、その中継装置３に接続された全てのネットワーク家電２がその状態と共にリスト表示されるようになっていても良い。図７は、検索画面の例、図８は、検索の結果特定された中継装置３／ホームネットワーク１に関するリスト表示の例を示したものである。図７に示した検索用インタフェースの例では、中継装置３を検索するための入力欄４３と、ネットワーク家電２を検索するための入力欄４４が設けられており、どちらからでも検索を行えるようプログラムされている。【００６１】
また、図８の検索結果リスト表示の例では、前記中継装置３に接続された全ての端末２が、所有者、状態、種別及び機種名の情報と共にリスト表示されている。そして、図に４５で示す操作画面表示ボタンを押すことで、前記ネットワーク家電制御部４２が起動され当該端末２の種別及び機種に応じた操作画面（図示しない）が表示される。【００６２】
図９は、前記制御部４２による制御の概念図を示したものである。【００６３】
まず、ネットワーク家電２は、中継装置３がトンネリングセッションを通してＩｎｔｅｒＳｅｒｖｅｒ６に接続している状態で、前記状態情報取得部４０からの要求によりその稼動状態を通知する（ステップＳ１１）。このとき、ネットワーク家電２側から前記制御部４２にログインしなければ上記のような稼動状態の取得が行えないようにしておいても良い。前記稼動状態の取得は、一定周期で行われ前記状態情報蓄積部４１に蓄積されかつ更新される（ステップＳ１２）。【００６４】
ついで、前記ネットワーク家電２のユーザが外部からＩＤ及びパスワードを用いて外部からログインし、前記リストから上述したように制御したい端末を特定して前記制御部４２を起動する（ステップＳ１３）。この制御部４２は、すべての命令をサーバサイドで処理し、前記端末機器に適切なコマンドを与えてこれを制御する。【００６５】
また、前記リストから端末名を選択することで、選択に係るネットワーク家電２にルーティングされて接続されるようになっていても良い。また、検索条件で特定の状態を入力して検索し、その端末が見つかった場合には、直接当該端末に接続するようにしても良い。なお、ＩｎｔｅｒＳｅｒｖｅｒ６を介したトンネリング接続によらずに外部からＷｅｂサーバを通して当該端末の検索を行った場合でも、当該端末への接続はトンネリング接続を確立してから行なわれるようになっている。【００６６】
ここで、上記「トンネリング」とは、ＩＰｖ４やＩＰｖ６のネットワーク（ルータ）同士をＩＰｖ４ネットワークを介して接続するための技術であり、特に、ここでは、異なるネットワークに属する機器同士をＶＰＮ（バーチャル・プライベート・ネットワーク）で終端するためにトンネリングするものをいう。そして、この実施形態では、機器間で通信されるＩＰｖ４パケットをＩＰｖ４でカプセリングしてやり取りする。【００６７】
なお、上記中継装置３及びＩｎｔｅｒＳｅｒｖｅｒ６の前記各構成要素１０〜４２は、実際にはコンピュータシステムに設けられたハードディスクに確保された一定の領域及びそこにインストールされたコンピュータソフトウエアプログラム、これらのハードディスクを制御して前記プログラムを読み出して実行するためのＣＰＵ、ＲＡＭ、その他入出力装置等の周辺機器から構成される。また、上述したように、ネットワーク家電は、汎用のパーソナルコンピュータを含み、この場合、本発明の各構成要素は、サービスプログラムおよび仮想イーサネットデバイスとしてインストールされる。【００６８】
また、前記中継装置３は、各ネットワーク家電２を含む１つのコンピュータシステムから構成されていることが好ましいが、前記ＩｎｔｅｒＳｅｒｖｅｒ６は、負荷を分散するために互いに接続された複数のコンピュータシステムから構成されていることが好ましい。例えば、中継装置３やネットワーク家電２やホームネットワークの状態を管理をする端末検索部２６は、専用の送受信インタフェース及び制御部を有するサーバによって構成されていることが好ましい。各機器のＯＮ／ＯＦＦやその他の状態を管理するというセッションは膨大になることが予想され、負荷分散が必要であるからである。また、１つのＩｎｔｅｒＳｅｒｖｅｒ６で複数の異なるメーカの中継装置やネットワーク家電に対応する場合、前記カプセリング処理部１８や、コマンド設定部２２、フィルタ部２３等は複数設けられていても良い。【００６９】
次に、上記中継装置３及びＩｎｔｅｒＳｅｒｖｅｒ６の動作を、図１０以下の通信例を参照して詳しく説明する。【００７０】
図１０は、中継装置３が接続されているホームネットワークのネットワーク家電２と、中継装置３が設けられていないその他の端末とが、前記ＩｎｔｅｒＳｅｒｖｅｒ６を介して通信を行う場合を示したものである。【００７１】
この図では、前記ＩｎｔｅｒＳｅｒｖｅｒ６のアドレス、中継装置３に割当てられたＩＰアドレス、及びネットワーク家電２のアドレスに基き、前記トンネリングセッション確立部１７、１１により前記中継装置３との間でトンネリング接続内の通信セッションを確立されている状態を示している。【００７２】
トンネリング通信セッションが確立されると、前記ネットワーク家電２へのパケットは、前記カプセリング処理部１８によって前記中継装置３向けのＩＰｖ４パケットでカプセリングされて送信される。中継装置３は、カプセリング処理部１２がそのパケットをディカプセリングすると共に、前記ルーティング処理部１３が前記パケットに含まれているネットワーク家電２のアドレスに基づいて前記ネットワーク家電２へのルーティング処理を行う。このようにして、例えば家庭内のホームネットワーク上のネットワーク家電２への接続を、外部にあるＩＰｖ６サーバ７側からの起動により行うことができる。【００７３】
例えば、前記ネットワーク家電２が家庭内監視カメラであるとすると、外出中であっても、自己のＰＤＡ等を身近にあるＩＰｖ６ネットワークに接続することによって前記ＩｎｔｅｒＳｅｒｖｅｒ６及び中継装置３を介して前記カメラを起動・制御することが可能になる。【００７４】
また、この例では、ネットワーク家電２の機種に応じてＩｎｔｅｒＳｅｒｖｅｒ６に設けられたネットワーク家電機種判別部２１、コマンド設定部２２及びフィルタ部２３が機能するようになっている。【００７５】
前記機種判別部２１は、例えば前記中継装置３若しくは前記ネットワーク家電２のアドレス（アドレスそれ自体若しくはアドレスに関連付けられた情報）に基づいて当該ネットワーク家電２の機種やネットワーク環境を判別するように構成されている。この実施形態では、前記ネットワーク家電２、中継装置３およびＩｎｔｅｒＳｅｒｖｅｒ６は同じメーカー、若しくは統一された規格に基づいて製造されることが想定されており、この場合、予め、ネットワーク家電２若しくはこれに接続された中継装置３に割当てられる（若しくは生成される）ＩＰアドレスに一定のルールを設定しておくことで、このアドレスを知るだけで容易にこの機種の種別及びネットワークの環境を判別することができる。【００７６】
また、このネットワーク家電２の制御に特別なコマンドが必要な場合、前記機種別コマンド設定部２２が前記ＩＰｖ６サーバ７からの通信に含まれる命令をこの機種用のコマンドに変換して設定する。例えば、Ｈｔｍｌ言語で記述されたメッセージから所定のコマンドを生成するようにしても良い。また、１つのサーバ７からの命令を複数のネットワーク家電２のためのコマンドに変換するようにしても良い。【００７７】
さらに、前記フィルタ部２３は、所定のルールに基づいてこのＩｎｔｅｒＳｅｒｖｅｒ６を通過するパケットをフィルタリングする機能を有するものである。このフィルタリングのルールは、例えば、接続先の中継装置３やネットワーク家電２毎に設定されていても良いし、ネットワーク毎に設定されていても良い。なお、前記機種判別部２１で所定の機種やネットワーク環境でないと判断された場合や、前記フィルタ部２３で適切でないと判断された場合には前記通信セッション切断部が通信セッションを切断するように構成されている。また、接続先のネットワーク家電の電源がＯＦＦ等で接続できない場合においても、同じ中継装置に接続された他のＩＰｖ６機器で代替可能なものであれば前記機種や種別情報に基づいて当該他のネットワーク家電にルーティングするようにしても良い。【００７８】
また、図１１は、共に中継装置３、３’を有するＩＰｖ６ホームネットワーク同士がＩｎｔｅｒＳｅｒｖｅｒ６を介して相互接続する場合の例である。この例では、各ネットワーク家電Ａとネットワーク家電Ｂが接続されているネットワークは、物理的には異なるネットワークであるが、前記家電Ａ，Ｂが同じネットワークグループにグループ化されることにより、論理的に同一のネットワークに接続されているものとされる。【００７９】
この例で、ネットワーク家電Ａと家電Ｂとをグループ化したい場合には、これらのネットワーク家電に割り当てるアドレス（ＩＰアドレス）に一定のルールを付しておくか、予め同じネットワークグループ名を付しておく。このことで、前記ネットワーク家電が前記ＩｎｔｅｒＳｅｒｖｅｒ６にトンネリング接続した際に、前記端末グループ管理部５４が、前記アドレス若しくはネットワークグループ名に基づいて、前記各家電が同一のグループに関連付けられる。一方の家電が当該同一グループにログインしたことは、他方の家電に通知され、この他方の家電から一方の家電へのアクセスが可能になる。【００８０】
これにより、２つのネットワーク家電２同士が、前記ＩｎｔｅｒＳｅｒｖｅｒ６を介して通信を行うことが可能になる。【００８１】
なお、前記グループ化は、前記接続要求認証部２７によるユーザの認証情報に基づいて行うようにしても良い。また、その他の情報、例えば、同じ機種であることや通信プロトコルが同じであることに基づいて複数の家電を同一ネットワークグループに属させるようにしても良い。【００８２】
以上のような構成によれば、ネットワーク家電２に関する全ての通信はキャリアやＩＳＰに関らず、前記ＩｎｔｅｒＳｅｒｖｅｒ６を通して行われることになるから、家庭や職場のホームネットワーク上のネットワーク家電２やサーバ７を前記ＩｎｔｅｒＳｅｒｖｅｒ６の所有者が自由に設定・制御することが可能になる。これにより、従来問題であった、インターネット上のサーバからのプライベートネットワーク中のネットワーク家電２の個体認識、家庭内ルーティング及びセキュリティの問題を全て解決でき、極めてオープンかつ、クローズドなネットワークの構築を実現することが可能になる。【００８３】
また、このＩｎｔｅｒＳｅｒｖｅｒ６の所有者は、通常ネットワーク家電２の製造者であるメーカーであることが想定される。したがって、このメーカーはこのＩｎｔｅｒＳｅｒｖｅｒ６に対応する自社のＩＰｖ６機器のラインアップを用意することで、インターネットを利用した付加価値を生み出すことが可能になる。【００８４】
特に、前記グループ化により、端末間の相互アクセスを可能にする技術によれば、前記ＩｎｔｅｒＳｅｒｖｅｒ６がインターネット上に置かれたハブのように機能し、同一ネットワークグループに属する端末間にセキュリティの高いＶＰＮを構築を可能にする。【００８５】
次に、図１２に基づいて前記ネットワーク家電２のサインアップについて説明する。【００８６】
すなわち、上記の説明においては、ネットワーク家電２のＩＰアドレスは前記中継装置３側から受け取るものとしたが、実際には、この方法以外にも様々な方法が考えられる。また、メーカーやＩｎｔｅｒＳｅｒｖｅｒ６の所有者としては、ネットワーク家電２の所有者（ユーザ）の情報を知りたいと考えられる。さらに、ネットワーク家電２のアドレスの生成方法についても、前述したように予め工場出荷の段階で各ネットワーク家電に固定ＩＰｖ６アドレスがＲＡＭ等に書き込まれている場合もあるであろうし、接続する中継装置３のＩＰｖ６プレフィックスに依存して決められる場合もあると考えられる。【００８７】
したがって、この実施例では、例えば、図１２に示すように、ネットワーク家電２若しくは中継装置３のユーザは、まずユーザ管理サーバ３０に接続して、ユーザ登録を行うようになっている。このユーザ登録はネットワーク家電２を用いて中継装置３を通して行うようにしても良いし、既存のパソコン等のＩＰｖ４通信対応機器を利用して行うようにしても良い。ここでは、ネットワーク家電２及び中継装置３を通して行う場合について説明する。また、以下では、ネットワーク家電２が自身ではネットワーク接続できない端末であり、ネットワーク家電２のアドレスが前記中継装置３によって各ネットワーク家電２のＭＡＣアドレスを利用した仮想アドレスとして生成される場合を例にとって説明する。【００８８】
この場合、まず、ユーザが前記ネットワーク家電を中継装置３に接続すると、この中継装置３がＩＳＰ／キャリアを介してユーザ管理サーバ３０に接続する。このことで、中継装置３から前記ＩｎｔｅｒＳｅｒｖｅｒ６との間のトンネリング接続に必要な情報等がこのユーザ管理サーバ３０に通知される。また、ユーザは、そのユーザ、中継装置３若しくはネットワーク家電２を特定するための情報やネットワーク家電２の種別に関する情報、ネットワーク１に関する情報、その他課金に必要な情報等をこの中継装置３を通して前記管理サーバ３０に通知する。この例では、当該中継装置３若しくは各ユーザ毎にＩＤおよびパスワードが発行され、前記中継装置３およびユーザの情報はこれに関連付けデータベース３１に登録される。なお、登録に必要な情報はこれに限るものではなく、他の情報が必要になることも考えられるし、逆に、パスワードや課金情報等が不要な場合にはこれらの情報を登録する必要はない。【００８９】
上記のようなユーザ管理サーバ３０は、前記ＩｎｔｅｒＳｅｒｖｅｒ６に接続されているものであっても良いし、インターネット上にそれとは独立的に設けられていても良い。【００９０】
一方、図１３以下は、トンネリング接続及びその中での通信セッションの確立の具体的方法に関しての実施例を示すものである。この図中に示されたＳ２１〜の各符号は、以下の各ステップに対応するものである。【００９１】
まず、上記で説明した実施例においては、ネットワーク家電（中継装置３）はＩｎｔｅｒＳｅｒｖｅｒ６のＩＰｖ４アドレスを記憶していたが、これは、メーカーが工場出荷時に予めＲＡＭに記録する方法であっても良いし、実際のトンネリング接続時に他のサーバ等（トンネリング仲介サーバを含む）から受け取って設定する方法であっても良い。ＩｎｔｅｒＳｅｒｖｅｒ６が単一の場合には前者でも良いが、ＩｎｔｅｒＳｅｒｖｅｒ６が複数ある場合には後者による方法の方が効率的であると考えられる。【００９２】
この図の例は後者の場合であり、そのためにトンネルブローカー５２が設けられている。この場合に備え、前記中継装置３のトンネルブローカアドレス記憶部には予めこのトンネルブローカー５２のＩＰｖ４グローバルアドレスが設定されている。また、中継装置３には、上記で設定したＩＤおよびパスワード（必要な場合）が既に設定されているものとする。【００９３】
また、この図１３においては、説明の便宜上、各ネットワーク家電Ａ、Ｂを、マイクロソフトウインドウズ（登録商標（以下同じ））等のコンピュータオペレーションシステム（ＯＳ）５３、ネットワーク家電の通信用のアプリケーション５４、仮想ネットワークデバイス５５、通信用のサービスプログラム５６とで表示してなる。この構成を図２の構成図に対応させると、前記アプリケーション５４がネットワーク家電Ｉ／Ｆ・制御部２０、仮想ネットワークデバイスがパケット送受信部１４、サービスプログラムがその他の構成（９〜１３、１５，５１等）ということになる。ここで、図２のルーティング処理部１５は、後で説明するようにネットワーク家電２のオペレーションシステムによりその機能が異なるが、以下では、まず、ＯＳがマイクロソフトウィンドウズの場合を例にとって説明する。【００９４】
この場合、前記中継装置３は、まず、トンネルブローカー５２に接続する。このトンネルブローカー５２は、アドレスデータベースからトンネル接続を確立する先のＩｎｔｅｒＳｅｒｖｅｒ６を選択し、前記中継装置３にこのＩｎｔｅｒＳｅｒｖｅｒ６のＩＰｖ４アドレスを通知する（ステップＳ２１）。このことで、前記中継装置３はＩｎｔｅｒＳｅｒｖｅｒ６を識別可能になり、ユーザ認証を行った後（ステップＳ２２）、ＩｎｔｅｒＳｅｒｖｅｒ６から受け取ったＭＡＣアドレスやＩＰアドレスを用いてトンネリングセッションを確立し通信を行うことができる（ステップＳ２３）。【００９５】
すなわち、前記中継装置がＩｎｔｅｒＳｅｒｖｅｒ６に接続すると接続確立のための認証が行われ、これに基づいてＩｎｔｅｒＳｅｒｖｅｒ６から中継装置に対して特定の仮想プライベートネットワーク用のＭＡＣアドレスおよびＩＰアドレスの割り当てが行われる（このＭＡＣアドレス及びＩＰ アドレスは仲介サーバから割り当てられても良い）。なお、ＩｎｔｅｒＳｅｒｖｅｒ６のプログラムは、前記中継装置から見た場合、１つのハブのように見える。ＩｎｔｅｒＳｅｒｖｅｒ６は、グループ毎にハブを割り当てるように構成されており、本発明では、この割り当てをグループ化と呼んでいる。なお、ＩｎｔｅｒＳｅｒｖｅｒ６が複数ある場合において、同じ仮想プライベートネットワークに属するべきネットワーク端末が別々のＩｎｔｅｒＳｅｒｖｅｒ６に接続されるされることも考えられるが、この場合には、複数のＩｎｔｅｒＳｅｒｖｅｒ６若しくは複数のサーバプログラム（ハブサーバ）をまとめて管理するハブ・ボーンサーバにより、接続がルーティングされるようになっていることが好ましい。【００９６】
なお、ＭＡＣアドレスに関しては、この実施形態では、擬似的に２つのＭＡＣアドレスを用いる。すなわち、ＭＡＣアドレスは本来であれば、ハードウエア１つ１つに対してユニークに割り当てられているべきものであるが、ウィンドウズ版においては、ソフト上の制約から、全中継装置（インターネット家電）の仮想イーサネットデバイスに同一のＭＡＣアドレスが割り当てられている。例えば、この実施形態では、すべての中継装置（インターネット家電）の仮想イーサネットデバイスに、０２：ｆｂ：ｄｃ：００：０３：００が割り当てられている。このアドレスは固定のものであるから、以下、「固定ＭＡＣアドレス」と称する。【００９７】
イーサーネットにおいては、パケットの送信元ＭＡＣアドレスと送信先ＭＡＣアドレスにより通信相手が特定されるため、通信先のＭＡＣアドレスが不明な場合や、同一のＭＡＣアドレスを持つ複数の端末が存在する場合、正常な通信が行われない。これは、仮想イーサネットデバイスを使用する場合も同じである。したがって、上記のようにすべての中継装置に同一の「固定ＭＡＣアドレス」が割り当てられている場合には、通信ができないことになる。【００９８】
この問題を解決するために、この実施形態では、前記アドレス生成部１５（図２）において、ＭＡＣアドレスの操作を行う。すなわち、仮想ネットワークを流れるパケットはすべてサービスプログラム５６を経由するため、必要に応じてパケット上のＭＡＣアドレスの書き換えを行うことにより、ＭＡＣアドレスのユニーク性を確保する。この書き換えるＭＡＣアドレスは、上述したように、ユーザ認証時に前記ＩｎｔｅｒＳｅｒｖｅｒ６から通知され前記アドレス記憶部９に保持される。すなわち、この実施形態では、仮想イーサネットデバイス５５が持つ固定ＭＡＣアドレス（すべてのネットワーク家電２で同一）と、書き換えに使用されるユニークな書き換え用ＭＡＣアドレスの２つを有することになる。【００９９】
また、クライアント用のＩＰアドレス（例えば、１０．１０．０．１）の割り当てはＩｎｔｅｒＳｅｒｖｅｒ６に対してＤＨＣＰリクエストパケットを送っているわけではなく、サービスプログラム５６は、単なるデータとして受け取って前記アドレス記憶部９に記憶し、仮想イーサネットデバイス５５のドライバをオープンする。なお、このとき、ウインドウズのＤＨＣＰクライアント機能が有効になっていれば、カーネルが仮想イーサデバイスのためのＤＨＣＰリクエストパケットを生成する。上述したように、仮想イーサネットデバイスのＩＰアドレスは上記認証時にすでに受け取られている。したがって、このＤＨＣＰリクエストパケットは、前記ＩｎｔｅｒＳｅｒｖｅｒ６に到達するわけではなく、サービスプログラム５６（ルーティング処理部１５）が前記アドレス記憶部９に記憶されたＩＰアドレスを取り出してＤＨＣＰレスポンスパケットを生成して応答する。【０１００】
次に、通信時のアドレス操作について説明する。【０１０１】
この実施形態では、前記ＩｎｔｅｒＳｅｒｖｅｒ６が、同じ仮想プライベートネットワークグループに属するネットワーク家電２（中継装置３）のためのネットワークハブとして機能してルーティングを行う。この場合、ネットワーク家電２間の通信はレイヤ２（ＭＡＣアドレスによるルーティング）で行われるため、相手先ネットワーク家電２のＭＡＣアドレスが必要となる。この実施形態では、クライアントのネットワークインタフェースはすべて仮想イーサデバイスという形で実装されているため、ＯＳのＡＲＰテーブルに通信相手先のＭＡＣアドレスがない場合、このＯＳはＡＲＰリクエストパケットを生成しネットワーク上にブロードキャストする。【０１０２】
しかし、このままでは通信が行えないため、この実施形態では、前記サービスプログラム５６で、前記仮想イーサデバイス５５から読み出されたＡＲＰパケットに対するＭＡＣアドレスの書き換えを行う。すなわち、前記アドレス生成部１５は、以下の２つの機能を備える。【０１０３】
１）  仮想イーサネットデバイスからイーサフレームを読み出し、イーサフレームの発信元ＭＡＣアドレスを、仮想プライベートネットワーク用ＭＡＣアドレスに書き換え、この書き換え後のＡＲＰパケットをカプセリングして前記ＩｎｔｅｒＳｅｒｖｅｒ（ハブ）に送信する。【０１０４】
２）  前記ＩｎｔｅｒＳｅｒｖｅｒからイーサパケットデータを受信したサービスプログラムはイーサパケットの送信先ＭＡＣアドレスを仮想イーサデバイスのＭＡＣアドレスに書き換える。【０１０５】
例えば、通信元ネットワーク家電Ａが、仮想プライベートネットワーク上のＩＰアドレスが既知の通信先インターネット家電Ｂと通信する場合において、上記通信元ネットワーク家電でＰＩＮＧコマンドを実行時のＭＡＣアドレス処理フローは図１４に示すようになる。なお、図中のＳ３１〜Ｓ４８は、以下の説明中のステップＳ３１〜ステップＳ４８に対応する。【０１０６】
Ｓ３１〜Ｓ３３  サービスプログラム５６がインターネットを介してＩｎｔｅｒＳｅｒｖｅｒ６に接続し、ユーザ認証を行い、トンネリングＴＣＰセッションを確立すると共に中継装置用ＭＡＣアドレス（例：００：８０：６Ｄ：０３：ＥＥ）および中継装置用ＩＰアドレス（１０．１０．０．１）を受け取り、仮想イーサネットデバイス５５のドライバにセットする。上記ＴＣＰセッションは、前記サービスプログラムにより一定の期間毎に所定のパケットが送られることでキープアライブされる。【０１０７】
Ｓ３４  ウィンドウズ クライアント（ネットワーク家電Ａ）上にて、通信先ネットワーク家電Ｂに向けてＰＩＮＧ要求を発生し、ＯＳ５３（カーネル）は通信相手を特定するためにＡＲＰリクエストパケットをブロードキャストし、そのＡＲＰリクエストパケットがクライアントの仮想イーサデバイス５５に書き込まれる。【０１０８】
Ｓ３５、Ｓ３６  ウィンドウズ・サービスとして起動している仮想ネットワーク通信用サービスプログラム５６が仮想イーサデバイス５５からＡＲＰリクエストパケットを読み出し、ＡＲＰリクエストパケットの送信元固定ＭＡＣアドレスを通信用ＭＡＣアドレスに書き換え、ＡＲＰリクエストパケットをカプセル化しＩｎｔｅｒＳｅｒｖｅｒ６に送信する。ＩｎｔｅｒＳｅｒｖｅｒ６は、ＩＰアドレスに基づいてＡＲＰリクエストを通信相手先の中継装置にルーティングし、そのＡＲＰリクエストパケットが通信先のサービスプログラム５６によって受信され仮想イーサデバイス５５に書き込まれる。【０１０９】
Ｓ３７〜Ｓ３９  ＯＳ５３（カーネル）はＡＲＰリクエストに対するレスポンスパケットを仮想イーサデバイス５５に書き込むと、サービスプログラム５６が仮想イーサデバイス５５からＡＲＰレスポンスパケットを読み出し、ＡＲＰレスポンスパケットの送信元ＭＡＣアドレス（固定）を通信用ＭＡＣアドレスに書き換え、ＡＲＰレスポンスパケットをカプセル化しＩｎｔｅｒＳｅｒｖｅｒ６に送信する。【０１１０】
Ｓ４０、Ｓ４１  ＩｎｔｅｒＳｅｒｖｅｒ６のルーティングにより、ＡＲＰレスポンスパケットが送信元のサービスプログラムによって受信されると、サービスプログラム５６はＡＲＰレスポンスパケットの送信先ＭＡＣアドレスを仮想イーサデバイスのＭＡＣアドレスに書き戻し、仮想イーサデバイス５５に書き込む。【０１１１】
Ｓ４２  ＡＲＰレスポンスを受け取ったＯＳ５３（カーネル）は、相手先のＭＡＣアドレスを指定してＰＩＮＧパケットを作成する。【０１１２】
Ｓ４３  サービスプログラム５６が仮想イーサデバイス５５からＰＩＮＧリクエストパケットを読み出し、そのＰＩＮＧリクエストパケットの送信元ＭＡＣアドレスを通信用ＭＡＣアドレスに書き換え、ＰＩＮＧリクエストパケットをカプセル化しＩｎｔｅｒＳｅｒｖｅｒ６に送信する。【０１１３】
Ｓ４４  ＩｎｔｅｒＳｅｒｖｅｒ６を経由して通信相手先に届いた(カプセル化された)ＰＩＮＧリクエストパケットが相手先のサービスプログラムによって受信されると、このサービスプログラム５６はＰＩＮＧリクエストパケットの送信先ＭＡＣアドレスを仮想イーサデバイス５５のＭＡＣアドレスに書き換え、仮想イーサデバイス５５に書き込む。【０１１４】
Ｓ４５、Ｓ４６  カーネル５３がＰＩＮＧリクエストに対するレスポンスパケットを仮想イーサデバイス５５に書き込むと、サービスプログラム５６が仮想イーサデバイス５５からＰＩＮＧレスポンスパケットを読み出す。このサービスプログラム５６はＰＩＮＧレスポンスパケットの送信元ＭＡＣアドレスを通信用ＭＡＣアドレスに書き換え、ＰＩＮＧレスポンスパケットをカプセル化しＩｎｔｅｒＳｅｒｖｅｒ６に送信する。【０１１５】
Ｓ４７、Ｓ４８  ＩｎｔｅｒＳｅｒｖｅｒ６を経由して通信相手先に届いた(カプセル化された)ＰＩＮＧレスポンスパケットが相手先のサービスプログラム５６によって受信されると、このサービスプログラム５６はＰＩＮＧレスポンスパケットの送信先ＭＡＣアドレスを仮想イーサデバイスのＭＡＣアドレスに書き換え、仮想イーサデバイス５５に書き込む。【０１１６】
このように、サービスプログラムでＭＡＣアドレスが書き換えられることで、仮想イーサデバイスのＭＡＣアドレスが全て同一であっても、前記ハブを介した通信が可能になる。前述したように、上記書換用のＭＡＣアドレス（ａａ：ａａ：ａａ：ａａ：ａａ：ａａやｂｂ：ｂｂ：ｂｂ：ｂｂ：ｂｂ：ｂｂ等）は前記ＩｎｔｅｒＳｅｒｖｅｒ６で割り当てられ、管理される。【０１１７】
なお、同じウインドウズＯＳにおいて、このようにハブを介さない、ＰＰＰ接続にも本実施形態の中継装置にインストールされたプログラムは適用可能であり、この場合には、ＩＰアドレスのみを用いるので、ＭＡＣアドレスは必要とされない。しかしながら、このウィンド用クライントのネットワークインタフェースは全て仮想イーサデバイスの形で実装されているため、ネットワークに到達する前段階でＡＲＰによるＭＡＣアドレス解決が要求される。ＡＲＰ要求を無視すると、カーネルは通信相手がいないものと判断し実際のパケットデータを送信しないため、この要求は無視できない。このため、この場合、上記サービスプログラム５６（ルーティング処理部１３）は以下の機能を有する。【０１１８】
１）仮想イーサデバイスからＡＲＰリクエストパケットを読み出したサービスプログラムは実際には存在していないダミーのＭＡＣアドレスを動的に生成して、ＡＲＰレスポンスパケットを生成し、仮想イーサデバイスに書き込む。【０１１９】
２）ＡＲＰレスポンスを受け取ったカーネルは、そのＭＡＣアドレスをあて先として実データフレームを仮想イーサデバイスに書き込む。【０１２０】
３）実データフレームを読み出したサービスプログラムはイーサヘッダ（ＭＡＣアドレス）を取り除き、ネットワークに送信する。【０１２１】
４）ネットワークからＩＰパケットデータを受信したサービスプログラムは、ＩＰパケットにヘッダ（ＭＡＣアドレス）を付与して仮想イーサデバイスに書き込む。送信先ＭＡＣアドレスは固定ＭＡＣアドレスを指定し、送信元ＭＡＣアドレスに、前記サービスプログラムで動的に生成した動的ＭＡＣアドレスを用いる。【０１２２】
例えば、通信元のネットワーク家電と仮想プライベートネットワーク上のＩＰアドレスが既知の別の通信先インターネット家電とが通信する場合において、上記通信元ネットワーク家電でＰＩＮＧコマンドを実行した場合のＭＡＣアドレス処理フローは図１５に示すようになる。【０１２３】
Ｓ３１〜Ｓ３３  サービスプログラム５６がインターネットを介してＩｎｔｅｒＳｅｒｖｅｒ６に接続し、ユーザ認証を行い、トンネリングＴＣＰセッションを確立すると共に中継装置用ＭＡＣアドレス（例：００：８０：６Ｄ：０３：ＥＥ）および中継装置用ＩＰアドレス（１０．１０．０．１）を受け取り、仮想イーサネットデバイス５５のドライバにセットする。上記ＴＣＰセッションは、前記サービスプログラムにより一定の期間毎に所定のパケットが送られることでキープアライブされる。【０１２４】
Ｓ５１  ネットワーク家電２上にて、他のＰＰＰ端末（他のネットワーク家電）に向けてＰＩＮＧを発生させると、ＯＳ５３（カーネル）は通信相手を特定するためにＡＲＰリクエストパケットをブロードキャストする。このことで、ＡＲＰリクエストパケットがクライアントの仮想イーサデバイス５５に書き込まれる。【０１２５】
Ｓ５２  ウィンドウズサービスとして起動しているサービスプログラム５６が仮想イーサデバイス５５からＡＲＰリクエストパケットを読み出し、ＡＲＰレスポンスパケットをサービスプログラム５６内で動的に作成し、ドライバに書き込む。ここで、レスポンスパケットに必要な送信先ＭＡＣアドレスは仮想イーサデバイス５５のＭＡＣアドレス、送信元ＭＡＣアドレスはサービスプログラム５６内でＰＰＰ動的ＭＡＣアドレスを生成し、指定する。この実施形態では、固定値２ｂｙｔｅ＋ＩＰアドレスで生成される。例えば、宛て先ＩＰアドレスが２５５．２５５.２５５．２５５であった場合、生成されるＭＡＣアドレスはａｃ:ｄｅ:ｆｆ:ｆｆ:ｆｆ:ｆｆとなる。動的に生成されたＭＡＣアドレスを持つネットワークデバイスが実際に存在する可能性はほとんど０であるが、仮に存在したとしても実際の通信に影響を及ぼすことはない。【０１２６】
Ｓ５３  ＯＳ５３（カーネル）は仮想イーサデバイス５５に書き込まれたＡＲＰレスポンスを受け取り、通信相手のＭＡＣアドレス(ＰＰＰ動的ＭＡＣアドレス)を取得できたと認識する。【０１２７】
Ｓ５４  ＯＳ５３（カーネル）はＡＲＰレスポンスで取得したＰＰＰ動的ＭＡＣアドレス宛てのデータパケットを仮想イーサデバイス５５に書き込む。【０１２８】
Ｓ５５、Ｓ５６  サービスプログラム５６は仮想イーサデバイス５５に書き込まれたデータパケットを取り出し、ＭＡＣアドレスが記述されている部分(イーサヘッダ部分)を取り除いたＩＰパケット部分をデータとして(ＩＰパケットのカプセル化)、ＩｎｔｅｒＳｅｒｖｅｒ（ＰＰＰ用）６にデータ送信する。【０１２９】
Ｓ５７  ＩｎｔｅｒＳｅｒｖｅｒ（ＰＰＰ用）６を経由して通信相手先に届いたＩＰパケットデータが相手先のサービスプログラムによって受信されると、サービスプログラム５６は、このデータに送信元、送信先ＭＡＣアドレスを付加し、イーサフレーム状態にして仮想イーサデバイスに書き込みを行う。送信先ＭＡＣアドレスは仮想イーサデバイスのＭＡＣアドレス、送信元ＭＡＣ アドレスはサービス内で動的に生成される。生成ロジックは上記ステップＳ５２と同じである。【０１３０】
Ｓ５８〜Ｓ６４  上記ステップＳ５１〜Ｓ５７と同じ手順を踏み、ＰＩＮＧレスポンスパケットが返信される。【０１３１】
このように、サービスプログラム５６でダミーのＭＡＣアドレスが動的に生成されることで、ウィンドウズにおいてもＰＰＰ通信が可能になる。なお、上記書換用のＭＡＣアドレスは前記ＩｎｔｅｒＳｅｒｖｅｒ６で割り当てられ、管理される。【０１３２】
次に、オペレーションシステムがＬｉｎｕｘである場合について説明する。【０１３３】
上述した、ＩｎｔｅｒＳｅｒｖｅｒをハブとするイーサーネット接続においては、パケットの送信元ＭＡＣアドレスと送信先ＭＡＣアドレスにより通信相手が特定されるため、通信先のＭＡＣアドレスが不明な場合や、同一のＭＡＣアドレスを持つ複数の端末が存在する場合、正常な通信が行われない。前述したウィンドウズの場合には、ＯＳの制約からすべての仮想イーサネットデバイスに同一のＭＡＣアドレスが振られていたので、これを書き換える必要があった。Ｌｉｎｕｘ環境においては、ウィンドウズのような制約が存在せず、個々の仮想イーサネットデバイスにユニークなＭＡＣアドレスが割り振られる。【０１３４】
この場合、通信元ネットワーク家電２が、仮想プライベートネットワーク上のＩＰアドレスが既知の通信先インターネット家電と通信する場合において、上記通信元中継装置でＰＩＮＧコマンドを実行時のＭＡＣアドレス処理フローは図１６に示すようになる。なお、図中のＳ３１〜Ｓ３３、Ｓ７１〜Ｓ７４は、以下の説明中の各ステップに対応する。【０１３５】
Ｓ３１〜Ｓ３３  サービスプログラム５６がインターネットを介してＩｎｔｅｒＳｅｒｖｅｒ６に接続し、ユーザ認証を行い、中継装置用ＭＡＣアドレス（例：００：８０：６Ｄ：０３：ＥＢ）および中継装置用ＩＰアドレス（１０．１０．０．１）を受け取り、仮想イーサネットデバイス５５のドライバにセットする。【０１３６】
Ｓ７１〜Ｓ７４  したがって、中継装置は、このようにセットされたＭＡＣアドレス及びＩＰアドレスを用いて通信セッションを確立する。【０１３７】
なお、Ｌｉｎｕｘ環境において、ＰＰＰ接続を行う場合においては、ＭＡＣアドレスに関する処理は一切不要であり、したがって、この場合、ＩｎｔｅｒＳｅｒｖｅｒからのＭＡＣアドレスの割り当ては不要になる。したがって、サービスプログラムがＩｎｔｅｒＳｅｒｖｅｒ６に接続してユーザ認証を行ってＩＰアドレスを受け取ると、このＩＰアドレスを利用して送信先ネットワーク家電との接続が行われる。【０１３８】
このような構成によれば、ＩｎｔｅｒＳｅｒｖｅｒ６が複数存在する場合であっても、そのうちの１つとの間で確実にトンネリング接続を確立することができる。【０１３９】
なお、以上説明した実施形態は、この発明の一つの実施形態に過ぎないのであって、その要旨を変更しない範囲で種々の形態をとりうることはいうまでもない。【０１４０】
例えば、上記一実施形態では、中継装置３側からもＩｎｔｅｒＳｅｒｖｅｒ６側からも、トンネリング接続を確立できるようにしているが、実際の商用サービスでは中継装置３からの起動のみであることが一般的であると考えられる。ＩＰｖ４の固定ＩＰサービス自体がまれであるからである。すなわち、この場合、一度トンネリング（実際にはＩＰｖ４接続それ自体）が確立した後は、設定はそのまま残り、一度ＩＰｖ４のセッションが切れてしまえば、次に中継装置３のＩＰｖ４が同一であることの方が珍しいため、実際にＩＰｖ４のセッション自体が切断されているとルーティングも出来ないからである。【０１４１】
また、上記一実施形態では、前記第１のプロトコルはＩＰｖ４、第２のプロトコルとしてＩＰｖ４を例に取って説明したがこれに限定されるものではない。第１のプロトコルはＩＰｖ６であってもよい。また、第１、第２のプロトコル共にＩＰｖ６であってもよい。さらに、両方ともに上記以外のプロトコルであっても良い。【０１４２】
前記一実施形態では、前記中継装置３は、各ネットワーク家電と一体的に設けられていたが、別体的に設けられ、複数のネットワーク家電で１つの中継装置３を共有するようにしても良い。また、ネットワーク家電と中継装置とが、ＬＡＮを介して接続されていても良い。
【図面の簡単な説明】
【０１４３】
【図１】この発明の一実施形態に係るネットワーク構成の例を示す図。
【図２】同じく中継装置の例を示す概略構成図。
【図３Ａ】同じくＩｎｔｅｒＳｅｒｖｅｒの例を示す概略構成図。
【図３Ｂ】同じくトンネリングセッション確立部の例を示す図。
【図４】フィルタ部の概略構成を示す図。
【図５】フィルタ部での処理を示すフローチャート
【図６】ネットワーク家電検索部の概略構成を示す図。
【図７】検索画面の例を示す図。
【図８】中継装置に関する検索結果リスト表示の例を示す図。
【図９】ネットワーク家電制御部による制御の概念を示す図。
【図１０】この実施形態における通信例を示す機能図。
【図１１】この実施形態における別の通信例を示す機能図。
【図１２】中継装置又はネットワーク家電のセットアップ例を示す図。
【図１３】中継装置とＩｎｔｅｒＳｅｒｖｅｒ間のトンネリング接続の例を示す図。
【図１４】マイクロソフトウィンドウズ（登録商標）端末における通信シーケンスを示す工程図。
【図１５】マイクロソフトウィンドウズ（登録商標）端末における通信シーケンスを示す工程図。
【図１６】Ｌｉｎｕｘ（登録商標）端末における通信シーケンスを示す工程図。示す工程図。
【図１】
0003953508.tif 000002
【図２】
0003953508.tif 000003
【図３Ａ】
0003953508.tif 000004
【図３Ｂ】
0003953508.tif 000005
【図４】
0003953508.tif 000006
【図５】
0003953508.tif 000007
【図６】
0003953508.tif 000008
【図７】
0003953508.tif 000009
【図８】
0003953508.tif 000010
【図９】
0003953508.tif 000011
【図１０】
0003953508.tif 000012
【図１１】
0003953508.tif 000013
【図１２】
0003953508.tif 000014
【図１３】
0003953508.tif 000015
【図１４】
0003953508.tif 000016
【図１５】
0003953508.tif 000017
【図１６】
0003953508.tif 000018