説明

中継装置および電子機器の起動方法

【課題】 第1のネットワークに接続された電子機器を第2のネットワーク側から起動する際のユーザの操作負担を軽減する。
【解決手段】 第1のネットワークと第2のネットワークとの間で通信パケットを中継する中継装置は、第1のネットワークに接続された電子機器に割り当てられた第1のネットワークでのIPアドレスと、電子機器のMACアドレスとを対応付けたテーブルを記憶する。中継装置は、第2のネットワークから第1のネットワークに向けた通信パケットであって、電子機器において電子機器の起動後に実行可能なアプリケーションを利用するための通信パケットである特定の通信パケットを受信した場合に、特定の通信パケットの転送先を判断する。そして、中継装置は、判断された転送先としての電子機器である転送先電子機器のMACアドレスを用いて、転送先電子機器に起動要求パケットを送信する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子機器の起動技術に関する。
【背景技術】
【0002】
従来から、ネットワークを介して電子機器の電源を投入する起動技術が知られている。かかる起動技術は、起動要求パケットを電子機器に送信して、電子機器を起動させる。こうした起動技術として、例えば、マジックパケットと呼ばれる起動要求パケットを用いて、電子機器の電源を投入するWOL(Wake-On-LAN)が知られている。
【0003】
かかる起動技術を使用して、外出先からインターネットを介してローカルネットワークに接続された電子機器を起動する技術が提案されている(例えば、下記特許文献6)。特許文献6の技術では、インターネットから起動要求パケットを受信したルータが、ポートフォアーディングによって、起動要求パケットを転送することによって、ローカルネットワークに接続された電子機器の起動を実現する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2001−75687号公報
【特許文献2】特開2009−21665号公報
【特許文献3】特開2008−66769号公報
【特許文献4】特開2004−320341号公報
【特許文献5】特開2009−130891号公報
【特許文献6】特開2009−199283号公報
【特許文献7】特開2010−277259号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
従来の起動技術では、起動対象の電子機器が第1のネットワークに接続されている環境下において、第1のネットワークとはセグメントが異なる第2のネットワーク側から当該電子機器の起動を行うためには、第2のネットワークに接続された端末を用いて、起動要求パケットを送信するためのUI(User Interface)を操作する必要がある。例えば、ユーザは、端末を操作して、起動要求パケットを送信するためのプログラムを起動させる必要がある。また、端末のディスプレイに表示されるGUI(Graphical User Interface)を用いて、各種情報、例えば、起動対象の電子機器のMACアドレスや、起動パケットの送信に使用する宛先ポート番号を入力する必要がある。また、起動要求パケットの送信指示の操作を行う必要がある。ユーザは、かかる操作を行った後、端末にインストールされたアプリケーションを利用して、起動後の電子機器に再度アクセスする必要がある。かかる電子機器の起動のための操作は、ユーザにとって面倒である。そのため、ユーザの操作負担を軽減することが求められる。
【課題を解決するための手段】
【0006】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【0007】
[適用例1]第1のネットワークと、該第1のネットワークとセグメントが異なる第2のネットワークとの間で通信パケットを中継する中継装置であって:前記第1のネットワークに通信可能に接続された電子機器に割り当てられた前記第1のネットワークでのIPアドレスと、前記電子機器のMACアドレスとを対応付けた第1のテーブルを記憶する記憶部と;前記第2のネットワークから前記第1のネットワークに向けた前記通信パケットであって、前記電子機器において該電子機器の起動後に実行可能なアプリケーションを利用するための通信パケットである特定の通信パケットを前記中継装置が受信した場合に、該特定の通信パケットの転送先を判断する判断部と;前記判断された転送先としての前記電子機器である転送先電子機器のMACアドレスを用いて、前記転送先電子機器に起動要求パケットを送信する送信部と;を備えた中継装置。
【0008】
かかる中継装置によれば、中継装置が第2のネットワークから第1のネットワークに向けた特定の通信パケットを受信した際に、転送先電子機器を起動させることが可能となる。このため、ユーザは、端末のアプリケーションを利用して、端末から第2のネットワークを介して中継装置にアクセスする操作を行えば、転送先電子機器を起動させることができる。そして、ユーザは、転送先電子機器の起動を待てば、あるいは、当該アプリケーションを利用して、起動後の転送先電子機器に再アクセスを行えば、起動した転送先電子機器との間で、当該アプリケーションを利用した通信を行うことができる。つまり、ユーザは、起動要求パケットを送信するためだけに必要な端末の操作を求められない。その結果、ユーザの操作負担が軽減される。
【0009】
[適用例2]適用例1記載の中継装置であって:さらに、前記特定の通信パケットを前記中継装置が受信した場合に、前記転送先電子機器が起動された状態であるか否かを確認することが可能な確認部を備え;前記送信部は、前記転送先電子機器が起動された状態にないことが確認された場合にのみ、前記起動要求パケットを送信する;中継装置。
かかる中継装置によれば、転送先電子機器が起動された状態にある場合には、起動要求パケットは送信されない。したがって、第1のネットワークのネットワーク負荷を軽減できる。
【0010】
[適用例3]適用例1または適用例2記載の中継装置であって:前記第1のテーブルは、前記中継装置が管理するARPテーブルとは別に確保され;前記第1のテーブルに記録された情報は、前記ARPテーブルに適用されるタイムアウト削除であって、記録された情報のうちの、予め定められた時間経過の間に通信に使用されなかった情報を削除するタイムアウト削除が適用されない;中継装置。
かかる中継装置によれば、第1のテーブルに記憶された情報が、ARPテーブルに適用されるタイムアウト削除によって削除されることがない。その結果、中継装置は、転送先電子機器が起動された状態にない場合であっても、転送先電子機器のMACアドレスを取得して、起動要求パケットを送信できる。
【0011】
[適用例4]適用例2、または、適用例2に従属する適用例3記載の中継装置であって:さらに、前記中継装置が前記特定の通信パケットとして、要求に対して、ディスプレイで表示するための画面データを応答可能なプロトコルを使用した要求パケットを受信し、かつ、前記受信した要求パケットに基づく前記確認部の確認に基づいて、前記送信部が前記起動パケットを送信する場合に、前記受信した要求パケットへの応答として、前記転送先電子機器の起動、ユーザの操作およびユーザの待機のうちの少なくとも1つに関する案内画面を表示するためのデータを含む応答パケットを送信する応答部を備えた;中継装置。
かかる中継装置によれば、ユーザは、転送先電子機器の状態や、自身が行うべき操作を容易に知ることができる。その結果、ユーザの利便性が向上する。
【0012】
[適用例5]前記案内画面を表示するためのデータは、前記送信部が送信する前記起動要求パケットの宛先となる前記転送先電子機器の起動に要する時間として推定される時間を表す時間情報を含む適用例4記載の中継装置。
かかる中継装置によれば、ユーザは、転送先電子機器の起動に要する時間を知ることができるので、ユーザの利便性が向上する。特に、起動後の転送先電子機器に再アクセスが必要な場合、ユーザは、再アクセスのタイミングを知ることができる。
【0013】
[適用例6]適用例5記載の中継装置であって:さらに、前記第1のネットワークに接続された電子機器に前記起動要求パケットを送信してから、起動が完了するまでに要する起動時間を学習する学習部を備え;前記応答部は、前記学習した起動時間に基づいて、前記時間情報を決定する;中継装置。
かかる中継装置によれば、精度の高い時間情報をユーザに知らせることができる。その結果、ユーザの利便性が向上する。
【0014】
[適用例7]適用例1ないし適用例6のいずれか記載の中継装置であって:前記記憶部は、宛先ポート番号と、前記電子機器に割り当てられた前記第1のネットワークでのIPアドレスとを対応付けた第2のテーブルを記憶し;前記判断部は、前記特定の通信パケットに含まれる宛先ポート番号と、前記第2のテーブルとに基づいて、前記特定の通信パケットの転送先を判断する;中継装置。
かかる構成の中継装置によれば、特定の通信パケットの転送先を好適に判断できる。しかも、第2のテーブルにおいて、複数の電子機器の第1のネットワークでのIPアドレスの各々に対して、異なる宛先ポート番号を対応付けておけば、複数の電子機器を宛先ポート番号に応じて起動することができる。なお、第1のテーブルと第2のテーブルとは、1つのテーブルとして構成されてもよい。
【0015】
[適用例8]適用例1ないし適用例6のいずれか記載の中継装置であって:前記記憶部は、前記中継装置に割り当てられた前記第2のネットワークでのIPアドレスと、前記電子機器に割り当てられた前記第1のネットワークでのIPアドレスとを対応付けた第3のテーブルを記憶し;前記判断部は、前記特定の通信パケットに含まれる宛先IPアドレスと、前記第3のテーブルとに基づいて、前記特定の通信パケットの転送先を判断する;中継装置。
かかる構成の中継装置によれば、特定の通信パケットの転送先を好適に判断できる。
【0016】
また、本発明は、上述した中継装置のほか、適用例9の電子機器の起動方法、中継装置のプログラム、当該プログラムを記録した記録媒体、中継装置と、第1のネットワークに接続される電子機器および第2のネットワークに接続可能な端末の少なくとも一方とを備えた通信システム等としても実現することができる。勿論、これらの実現形態に対しても、適用例2〜8の構成を付加することも可能である。
[適用例9]第1のネットワークと、該第1のネットワークとセグメントが異なる第2のネットワークとが中継装置を介して接続された環境下において、前記第1のネットワークに通信可能に接続された電子機器を、前記第2のネットワーク側から起動させる電子機器の起動方法であって:前記中継装置において、前記電子機器に割り当てられた前記第1のネットワークでのIPアドレスと、前記電子機器のMACアドレスとの対応関係を記憶し;前記第2のネットワークから前記第1のネットワークに向けた前記通信パケットであって、前記電子機器において該電子機器の起動後に実行可能なアプリケーションを利用するための通信パケットである特定の通信パケットを前記中継装置が受信した場合に、前記中継装置において、前記特定の通信パケットの転送先を判断し;前記中継装置において、前記判断された転送先としての前記電子機器である転送先電子機器のMACアドレスを用いて、前記転送先電子機器に起動要求パケットを送信し、前記転送先電子機器を起動させる;電子機器の起動方法。
【図面の簡単な説明】
【0017】
【図1】本発明の実施例としての中継装置100を使用して構築されたネットワークシステム20の概略構成を示す説明図である。
【図2】中継装置100の概略構成を示す説明図である。
【図3】第2のテーブル132の具体例を示す説明図である。
【図4】中継装置100における中継処理の流れを示すフローチャートである。
【図5】転送処理における起動処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0018】
A.実施例:
A−1.ネットワークシステム20の概略構成:
図1は、本発明の実施例としての中継装置100を使用して構築されたネットワークシステム20の概略構成を示す。図示するように、ネットワークシステム20は、電子機器30,40と、中継装置100と、端末50とを備えている。
【0019】
電子機器30,40は、本実施例では、NAS(Network Attached Storage)である。NASは、ネットワークを介して通信可能な記憶装置である。本実施例においては、電子機器30,40は、WEBサーバ機能を有している。具体的には、電子機器30,40は、WEBブラウザからHTTP要求を受信すると、電子機器30,40が備える記憶領域に記憶されたデータをHTTP応答として送信することができる。また、電子機器30,40は、WOLをサポートしている。
【0020】
この電子機器30,40は、第1のネットワークNT1に接続されている。第1のネットワークNT1は、本実施例では、ローカルエリアネットワークである。電子機器30には、第1のネットワークNT1におけるプライベートIPアドレスとして、「192.168.1.1」が割り当てられている。同様に、電子機器40には、プライベートIPアドレスとして、「192.168.1.2」が割り当てられている。本実施例においては、これらのプライベートIPアドレスは、ユーザの操作によって、固定的に割り当てられている。つまり、これらのプライベートIPアドレスは、DHCP(Dynamic Host Configuration Protocol)によって、動的に割り当てられたものではない。また、電子機器30は、MACアドレスとして「MAC1」を有している。同様に、電子機器40は、MACアドレスとして、「MAC2」を有している。
【0021】
中継装置100は、第1のネットワークNT1と第2のネットワークNT2とに接続されている。中継装置100は、第1のネットワークNT1と第2のネットワークNT2との間でやり取りされる通信パケットの中継を行う。中継装置100は、本実施例では、ルータである。第2のネットワークNT2は、第1のネットワークNT1とセグメントが異なるネットワークである。つまり、第1のネットワークNT1と第2のネットワークNT2とは、IPアドレスを構成するネットワーク部およびホスト部のうちの、ネットワーク部のアドレスが異なるアドレスに設定されるネットワークである。本実施例では、第2のネットワークNT2はインターネットであり、中継装置100は、モデム(図示省略)を介して、第2のネットワークNT2に接続される。
【0022】
端末50は、第2のネットワークNT2に接続可能な通信端末である。端末50は、本実施例では、携帯電話である。端末50は、基地局(図1では、図示省略)を介して、移動体通信網を利用した無線通信によって、第2のネットワークNT2に接続が可能である。
【0023】
かかるネットワークシステム20では、ユーザが端末50を操作することにより、第2のネットワークNT2および中継装置100を介して、第1のネットワークNT1に接続された電子機器30,40の起動を行うことが可能である。以下、電子機器30,40を起動するための構成について説明する。
【0024】
A−2.中継装置100の概略構成:
図2は、中継装置100の概略構成を示す。図示するように、中継装置100は、CPU110、RAM120、フラッシュROM130、第1のLANインタフェース(I/F)140および第2のLANインタフェース150を備え、それぞれがバスにより相互に接続されている。
【0025】
CPU110は、フラッシュROM130に記憶されたファームウェア等のプログラムをRAM120に展開して実行することで、中継装置100の動作全般を制御する。本実施例においては、CPU110は、動的NAPT(Network Address Port Translation)および静的NAPTを利用した通信パケットの転送処理を実現可能に構成されている。本実施例では、NAT(Network Address Translation)を利用した通信パケットの転送処理は行われない。また、CPU110は、当該プログラムを実行することで、判断部111、送信部112、確認部113、応答部114、学習部115としても機能する。これらの各機能部の詳細については後述する。
【0026】
RAM120には、ARP(Address Resolution Protocol)テーブル121が記憶されている。ARPテーブル121には、第1のネットワークNT1に接続された電子機器30,40のIPアドレス(プライベートIPアドレス)とMACアドレスとが対応付けられて記録される。中継装置100は、通信パケットを中継する際に、ARPを使用して、通信パケットの宛先IPアドレスに対応するMACアドレスを取得し、ARPテーブル121に記録する。ARPテーブル121に記録された、IPアドレスとMACアドレスとの対応関係の各々は、中継装置100を介した通信が行われない状態で予め設定された時間を経過すると、CPU110によって、ARPテーブル121から削除される。かかる制御をタイムアウト削除ともいう。
【0027】
また、RAM120には、動的NAPTを実現するための動的NAPTテーブル122が記憶されている。動的NAPTテーブル122は、周知の通り、第2のネットワークNT2側から第1のネットワークNT1側へのアクセスへの応答としての通信パケットを中継装置100が受信した場合に、当該通信パケットの転送先を判断するために使用される。動的NAPTテーブル122には、第2のネットワークNT2に接続された電子機器から受信した通信パケットを第1のネットワークNT1に向けて転送する際に、当該通信パケットの送信元IPドレスと、送信元ポート番号と、当該送信元ポート番号を変換した新たな送信元ポート番号(以下、変換後送信元ポート番号ともいう)とが対応付けて記録される。
【0028】
フラッシュROM130は、不揮発性の記憶媒体である。フラッシュROM130には、第1のテーブル131と、第2のテーブル132とが記憶されている。中継装置100が備える記憶媒体は、フラッシュROMに限らず、種々の形式の記憶媒体とすることができる。例えば、記憶媒体は、フラッシュROMなどの静的な記憶媒体に限らず、ハードディスクドライブなどであってもよい。
【0029】
第1のテーブル131には、第1のネットワークNT1に接続された電子機器30,40に割り当てられたIPアドレス(プライベートIPアドレス)と、電子機器30,40のMACアドレスとが対応付けられて記録される。本実施例では、ARPテーブル121に記録された情報に基づいて、第1のテーブル131に情報が記録される。具体的には、中継装置100のCPU110は、ARPテーブル121を定期的に参照し、ARPテーブル121に記録された情報を第1のテーブル131に記録する。より具体的には、CPU110は、ARPテーブル121に記憶された情報のうち、第1のテーブル131に登録されていないIPアドレスとMACアドレスとの対応関係を第1のテーブル131に記録する。かかる動作において、CPU110がARPテーブル121を参照する頻度は、ARPテーブル121のタイムアウト削除の設定時間よりも短い周期で設定されることが望ましい。こうすれば、ARPテーブル121に記録された情報が、タイムアウト削除される前に、第1のテーブル131に確実に反映される。
【0030】
かかる第1のテーブル131には、ARPテーブル121に適用されるタイムアウト削除は適用されない。つまり、第1のテーブル131に記録されたIPアドレスとMACアドレスとの対応関係は、その対応関係を用いた通信が、設定時間の間、行われなかった場合であっても、第1のテーブル131から削除されない。本実施例では、第1のテーブル131に記録された情報は、ユーザが入力する削除指示のコマンドをCPU110が受け付けた場合にのみ、CPU110は、第1のテーブル131に記録された情報のうち、指定された情報を削除する。それ以外の場合では、CPU110は、第1のテーブル131に記録された情報を常時保持する。ただし、第1のテーブル131に登録された情報を削除するタイミングは、上述の例に限定するものではない。例えば、第1のテーブル131に記録されたIPアドレスとMACアドレスとの対応関係は、その対応関係を用いた通信が、ARPテーブル121に適用されるタイムアウト削除よりも長く設定された時間を経過した場合に、削除される構成としてもよい。
【0031】
第2のテーブル132には、宛先ポート番号と、第1のネットワークNT1に接続された電子機器30,40に割り当てられたIPアドレス(プライベートIPアドレス)とが対応付けられ記録される。つまり、第2のテーブル132は、静的NAPTテーブルである。静的NAPTテーブルは、周知の通り、第1のネットワークNT1側から第2のネットワークNT2側へのアクセスする通信パケット(応答ではない通信パケット)を中継装置100が受信した場合に、当該通信パケットの転送先を判断するために使用される。第2のテーブル132の詳細については後述する。なお、動的NAPTテーブル122と第2のテーブル132とは、1つのNAPTテーブルとして構成されてもよい。かかる構成とすれば、汎用のルータが備えるNAPTテーブルを利用して中継装置100を設計できるので、中継装置100の汎用性が高まる。この場合、当該1つのNAPTテーブルは、RAM120に記憶されてもよいし、フラッシュROM130に記憶されてもよい。
【0032】
LANインタフェース140および第2のLANインタフェース150は、MACチップ(図示省略)を介して、CPU110に接続されている。第1のLANインタフェース140は、第1のネットワークNT1に接続するためのインタフェースである。第1のLANインタフェース140は、第1のネットワークNT1を介して、電子機器30,40に接続される。第2のLANインタフェース150は、第2のネットワークNT2に接続するためのインタフェースである。第2のLANインタフェース150は、モデムを介して、第2のネットワークNT2に接続される。なお、モデムは、中継装置100に内蔵されていてもよい。本実施例では、第1のLANインタフェース140および第2のLANインタフェース150は、IEEE802.3規格に準拠している。
【0033】
図3は、第2のテーブル132の具体例を示す。第2のテーブル132には、宛先ポート番号「21」と、IPアドレス「192.168.1.1」とが対応付けられて、記録されている。同様に、宛先ポート番号「80」とIPアドレス「192.168.1.2」、宛先ポート番号「81」とIPアドレス「192.168.1.2」とが、それぞれ対応付けられて、記録されている。宛先ポート番号「21」は、FTP(File Transfer Protocol)に対応する。宛先ポート番号「80」は、HTTP(HyperText Transfer Protocol)に対応する。宛先ポート番号「81」は、hosts2-nsに対応する。IPアドレス「192.168.1.1」は、電子機器30に割り当てられたIPアドレスである。IPアドレス「192.168.1.2」は、電子機器40に割り当てられたIPアドレスである。
【0034】
かかる第2のテーブル132に記録された情報は、本実施例では、ユーザの手動入力によって予め登録される。つまり、中継装置100は、ユーザによって入力される情報を受け付けて、第2のテーブル132に登録する。登録の手法は、種々の手法を用いることができる。例えば、ユーザが、パーソナルコンピュータを、中継装置100の第1のLANインタフェース140に接続して、あるいは、第1のネットワークNT1に接続して、WEBブラウザを介して入力してもよい。あるいは、中継装置100がディスプレイを備えている場合には、ディスプレイに表示されるGUI(Graphical User Interface)を用いて入力してもよい。
【0035】
第2のテーブル132に登録される宛先ポート番号は、電子機器30,40が提供可能なアプリケーションに対応する番号とすることができる。また、宛先ポート番号は、第2のネットワークNT2に接続された端末50が、電子機器30,40と通信を行う際に使用するアプリケーションに対応する番号とすることができる。
【0036】
第2のテーブル132に登録する情報は、ユーザが任意に決定することができる。つまり、第2のテーブル132に登録する情報は、1つまたは2つ以上の宛先ポート番号と、第1のネットワークNT1に接続された、1つまたは2つ以上の電子機器に割り当てられたIPアドレスとを対応付けるものであればよい。なお、宛先ポート番号は、ウェルノウンポート番号に限るものではない。例えば、宛先ポート番号は、登録ポート番号であってもよい。
【0037】
A−3.起動処理:
図4は、中継装置100が実行する中継処理の流れを示す。中継処理とは、第2のネットワークNT2側から受信した通信パケットを第1のネットワークNT1側に転送する処理であり、第1のネットワークNT1に接続された電子機器30,40を起動する処理を含む。「起動」とは、電子機器の本質的な機能の少なくとも一部の機能であって、電子機器がネットワークを介して提供可能な機能について、提供不可能な状態から提供可能な状態に移行することをいう。本質的な機能とは、例えば、電子機器が記憶装置である場合には、記憶媒体への書き込み、記憶媒体に記憶された情報の取得などを例示できる。電子機器がパーソナルコンピュータである場合には、本質的な機能として、例えば、CPUによる各種通信に係る演算処理を例示できる。「起動」の代表的な一態様は、電源OFFの状態の電子機器に対して電源を投入して、電子機器を、自身が有する機能を提供可能な状態に移行させることである。また、「起動」の他の代表的な一態様は、電子機器がACPI(Advanced Configuration and Power Interface)に準拠している場合には、ステートS1〜S5のいずれかから、ステートS0に移行させることである。また、本願において、「起動された状態」とは、「起動」が行われた後の状態、すなわち、電子機器がネットワークを介して、当該電子機器の本質的な機能の少なくとも一部を提供可能な状態にあることをいう。
【0038】
本実施例において、中継処理は、第2のネットワークNT2から第1のネットワークNT1に向けた通信パケットを受信するたびに、繰り返し実行される。中継処理は、例えば、端末50が、端末50にインストールされたアプリケーションを使用して、中継装置100にアクセスし、中継装置100が通信パケットを受信することによって開始される。こうしたアプリケーションとしては、WEBブラウザや、FTPクライアントアプリケーションを例示することができる。
【0039】
中継処理が開始されると、中継装置100のCPU110は、まず、判断部111の処理として、第2のLANインタフェース150を介して受信した通信パケットの宛先(転送先)が動的NAPTテーブル122または第2のテーブル132に記録されているか、つまり、宛先を知っているかを判断する(ステップS210)。ステップS210は、受信した通信パケットの転送先を判断する処理である。動的NAPTテーブル122または第2のテーブル132に基づいて、宛先のIPアドレスを取得できる場合には、CPU110は、宛先を知っていると判断する。一方、その他の場合には、CPU110は、宛先を知らないと判断する。
【0040】
ステップS210において、IPアドレスは、以下のようにして取得される。動的NAPTテーブル122を参照する場合、CPU110は、受信した通信パケットに含まれる宛先ポート番号と同一の変換後送信元ポート番号に対応付けられたIPアドレスを動的NAPTテーブル122から取得する。第2のテーブル132を参照する場合、CPU110は、受信した通信パケットに含まれる宛先ポート番号と同一の宛先ポート番号に対応付けられたプライベートIPアドレスを第2のテーブル132から取得する。例えば、受信した通信パケットに含まれる宛先ポート番号が「80」である場合には、CPU110は、第2のテーブル132を参照して、電子機器40に割り当てられたIPアドレス「192.168.1.2」を取得する。
【0041】
ステップS210において、宛先を知らない場合には(ステップS210:NO)、CPU110は、中継処理を終了する。つまり、CPU110は、受信した通信パケットの宛先を知らないので、当該通信パケットを破棄する。一方、ステップS210において、宛先を知っていれば(ステップS210:YES)、CPU110は、確認部113の処理として、宛先のIPアドレスが割り当てられた電子機器(以下、電子機器40として説明する)にARP要求を送信する(ステップS220)。そして、CPU110は、確認部113の処理として、送信したARP要求に対応するARP応答を受信したか否かを判断する(ステップS230)。ARP応答を受信できないこと(ステップS230:NO)は、ARP要求の宛先である電子機器40がARP応答を送信できない状態にあること、つまり、起動された状態にないことを意味する。つまり、ステップS230の判断は、受信した通信パケットの転送先として判断された電子機器40が起動された状態であるか否かを確認する処理として実行される。
【0042】
ステップS230において、ARP応答の受信があること(ステップS230:YES)は、電子機器40が起動された状態である可能性が大きい。ただし、電子機器には、起動された状態でなくても、ARP要求を受信し、ARP応答を応答可能なタイプも存在する。このため、ステップS230において、ARP応答の受信があれば(ステップS230:YES)、CPU110は、確認部113の処理として、OSI参照モデルのネットワーク層以上の階層で処理されるプロトコルを使用して、コネクション確認を行う(ステップS240)。本実施例では、CPU110は、TCP(Transmission Control Protocol)を使用して、SYNパケットを送信し、その応答としてのACKパケットの受信の有無を把握することによって、コネクション確認を行う。
【0043】
コネクション確認の結果、ACKパケットを受信したこと(ステップS250:YES)は、電子機器40が起動された状態にあることを意味する。そこで、CPU110は、ACKパケットを受信した場合(ステップS250:YES)、上記ステップS210において転送先として判断された電子機器40に、受信した通信パケットを転送し(ステップS270)、中継処理を終了する。なお、CPU110は、通信パケットの転送に必要な電子機器40のMACアドレスを、ARP応答の受信によって取得することができる。上記の説明からも明らかなように、上記ステップS220〜250は、受信した通信パケットの転送先として判断された電子機器が起動された状態にあるか否かを確認する処理として捉えることができる。
【0044】
一方、ACKパケットを受信しないこと(ステップS250:NO)、あるいは、上記ステップS230において、ARP応答を受信しないこと(ステップS230:NO)は、電子機器40が起動された状態にないことを意味する。これらの場合、CPU110は、電子機器40を起動するための起動処理を行い(ステップS260)、中継処理を終了する。
【0045】
図5は、起動処理の流れを示す。図示するように、起動処理が開始されると、CPU110は、まず、第1のテーブル131および第2のテーブル132を参照して、受信した通信パケットに含まれる宛先ポート番号に対応付けられたMACアドレスを検索する(ステップS310)。
【0046】
ステップS310によってMACアドレスが取得されなかった場合(ステップS320:NO)、CPU110は、起動処理を終了する。一方、ステップS310によってMACアドレスが取得された場合(ステップS320:YES)、CPU110は、送信部112の処理として、取得したMACアドレスを用いて起動要求パケットを生成し、第1のLANインタフェース140を介して送信する(ステップS330)。
【0047】
本実施例においては、CPU110は、起動要求パケットとして、WOLで使用されるマジックパケットを送信する。マジックパケットは、通信パケットのボディの任意の領域に「FF-FF-FF-FF-FF-FF」という同期用シーケンスと、それに続いて、起動対象の機器のMACアドレスを16回繰り返したデータとを含む。CPU110は、上記ステップS310で取得したMACアドレスを、起動対象の機器のMACアドレスとして使用して、マジックパケットをブロードキャストによって送信する。マジックパケットを受信した電子機器30,40は、マジックパケットに含まれるMACアドレスが自身のMACアドレスでなければ、受信したマジックパケットを無視する。一方、電子機器30,40は、マジックパケットに含まれるMACアドレスが自身のMACアドレスであれば、自身を起動する。なお、起動要求パケットのフォーマットは、上述の例に限られるものではない。起動要求パケットは、中継装置100および起動対象の機器がサポートする任意の形式とすることができる。起動対象の機器は、ソフトウェアによって、受信した起動要求パケットを解釈してもよい。
【0048】
起動要求パケットを送信すると、中継装置100は、応答部114の処理として、受信した通信パケットに含まれる宛先ポート番号がHTTPに対応する番号であるか否かを判断する(ステップS340)。つまり、CPU110は、宛先ポート番号が「80」であるか否かを判断する。なお、HTTPには、HTTPS(HTTP over SSL/TLS)を含むものとしてもよい。つまり、ステップS340において、中継装置100は、宛先ポート番号が「80」または「443」のいずれか一方であるか否かを判断してもよい。
【0049】
ステップS340において、宛先ポート番号がHTTPに対応する番号であれば(ステップS340:YES)、CPU110は、応答部114の処理として、受信したHTTP要求への応答として、HTTP応答を送信する(ステップS350)。この処理は、例えば、透過プロキシによって実現することができる。このHTTP応答は、ユーザへの案内画面を表示するデータを含む。本実施例では、案内画面を表示するデータは、ステップS330の処理に伴い起動される電子機器40が、起動に要する時間、つまり、起動要求パケットを受信してから起動が完了するまでの時間として推定される時間を表す時間情報を含む。以下、起動に要する時間を起動時間ともいう。
【0050】
例えば、案内画面は、「電子機器を起動しています。起動までの時間は約4分です。」などの文字情報を含む。この場合、「約4分」が時間情報に該当する。本実施例においては、案内画面に含まれる時間情報は、後述するステップS360〜S380によって自動的に学習された起動時間に基づいて決定される。例えば、学習された起動時間が4分20秒である場合には、時間情報は、「約4分」、あるいは、「約5分」などとして決定される。なお、案内画面に含まれる時間情報は、学習された起動時間そのものであってもよい。つまり、時間情報は、「4分20秒」などであってもよい。なお、本実施例では、起動対象の電子機器40について、過去に起動時間の学習が行われていない場合には、案内画面には、時間情報は含まれない。例えば、案内画面の文字情報は、「電子機器を起動しています。」などとなる。
【0051】
HTTP応答を送信すると、CPU110は、学習部115の処理として、ポーリングにより起動対象機器(ここでは、電子機器40)の起動状態を監視する(ステップS360)。ここでのポーリングとは、起動対象の電子機器40に対して、定期的に通信パケットを送信して、その応答を監視することをいう。ポーリングの実現形態としては、例えば、上記ステップS230において、ARP応答を受信しなかった場合には、ステップS360において、ARP要求を定期的に送信することとしてもよい。あるいは、上記ステップS250においてACKパケットを受信しなかった場合には、ステップS360において、SYNパケットを定期的に送信することとしてもよい。なお、ポーリングに関して、タイムアウト設定が適用されてもよい。つまり、ポーリングを開始してから、所定時間以内に起動対象機器の起動が確認できない場合には、ポーリングを停止してもよい。こうすれば、起動対象機器の起動に失敗した場合に、ポーリング動作が無駄に継続されることがない。タイムアウトの時間は、例えば、5分にデフォルト設定されてもよい。
【0052】
ポーリングを開始すると、CPU110は、学習部115の処理として、電子機器40から応答パケットを受信するまで待機する(ステップS370)。そして、応答パケットを受信すると(ステップS370:YES)、CPU110は、学習部115の処理として、起動要求パケットを送信してから、ポーリングによる応答パケットを受信するまでの時間を、電子機器40の起動時間として、フラッシュROM130に格納して、登録する(ステップS380)。この起動時間は、電子機器40と対応付けて登録される。例えば、起動時間は、電子機器40のMACアドレスと対応付けて記録される。このように、電子機器40の起動時間が学習されると、CPU110は、次回、起動処理が実行される際に、ステップS350において、学習された起動時間に基づいて時間情報を決定することが可能となる。
【0053】
こうして、CPU110は、起動処理を終了し、処理を中継処理に戻す。なお、上述した中継処理において、上記S220〜S250,S340〜S380は、適宜省略が可能である。ステップS240,S250を省略する場合には、ARP応答を受信すれば(ステップS230:YES)、CPU110は、処理をステップS270に進める構成としてもよい。また、ARP応答を受信し(ステップS230:YES)、かつ、ACKパケットを受信しなかった(ステップS250:NO)の場合には、ステップS310,320を省略することも可能である。この場合、ステップS330において、CPU110は、ARP応答によって取得したMACアドレスを用いて、起動要求パケットを送信してもよい。つまり、CPU110は、第1のテーブル131および第2のテーブル132を参照して、または、ARP要求によって、MACアドレスを取得すればよい。
【0054】
A−4.効果:
上述した中継装置100は、中継装置100が第2のネットワークNT2から第1のネットワークNT1に向けた通信パケットを受信した場合に、通信パケットの転送先を判断し、判断した転送先のMACアドレスを第1のテーブル131を参照して取得し、当該MACアドレスを用いて、転送先として判断された電子機器に起動要求パケットを送信することができる。その結果、電子機器を起動させることができる。受信する通信パケットは、起動要求パケットである必要はなく、電子機器の起動後に実行可能なアプリケーションを利用するための通信パケットであればよい。このため、ユーザは、第2のテーブル132に登録された宛先ポート番号に対応するアプリケーションを利用して、端末50から第2のネットワークNT2を介して中継装置100にアクセスする操作を行えば、電子機器30,40を起動させることができる。電子機器30,40を起動している間は、端末50は、電子機器30,40と通信を行うことができない。この場合、端末50からのアクセスが、予め定められた期間の間、再試行される。電子機器30,40の起動に要する時間が再試行の時間よりも短ければ、ユーザは、起動時間だけ待機すれば、新たな操作を行うことなく、上述のアプリケーションを利用した端末50と電子機器30,40との通信を実現できる。電子機器30,40の起動に要する時間が再試行の時間よりも長い場合、ユーザは、電子機器30,40の起動完了を待って、上述のアプリケーションを利用したアクセス操作を再度行えば、当該アプリケーションを利用した端末50と電子機器30,40との通信を実現できる。つまり、いずれの場合においても、ユーザは、端末50にインストールされた、利用したいアプリケーションに関する操作を行うだけで、電子機器30,40を起動させ、さらに、当該アプリケーションを利用することができる。換言すれば、ユーザは、WOLなど、起動要求パケットを送信するためだけに用意されたアプリケーションのGUIを操作する必要がない。その結果、ユーザの操作負担が軽減される。
【0055】
また、中継装置100は、判断した転送先の電子機器が起動された状態であるか否かを判断し、転送先の電子機器が起動された状態にないことが確認された場合にのみ、起動要求パケットを送信する。したがって、第1のネットワークNT1のネットワーク負荷を軽減できる。また、起動要求パケットをブロードキャストによって送信する場合には、第1のネットワークNT1に接続された電子機器30,40の処理負荷も軽減できる。
【0056】
また、中継装置100において、宛先ポート番号と、IPアドレスと、MACアドレスとの対応関係は、第1のテーブル131と第2のテーブル132とに分離して管理される。したがって、ユーザは、第1のテーブル131および第2のテーブル132の管理を行いやすい。例えば、ユーザは、第1のテーブル131に登録された情報を更新する際に、第1のテーブル131の情報のみをディスプレイに表示させて、入力操作を行うことができる。つまり、必要のない第2のテーブル132の情報が表示されないので、ユーザの利便性が向上する。また、中継装置100のCPU110は、起動処理を実行する際に、第1のテーブル131と第2のテーブル132とのうちの、処理に応じて必要なテーブルのみを参照すればよい。したがって、CPU110が参照する情報量を低減して、処理を効率化および高速化できる。
【0057】
また、中継装置100は、ARPを使用して電子機器30,40のMACアドレスを取得し、取得したMACアドレスを第1のテーブル131に記憶する。したがって、故障や新製品への買い換えなどによって、電子機器30,40が他の機器に交換された場合でも、ユーザは、交換された機器のMACアドレスを手動入力によって第1のテーブル131に登録する必要がない。ただし、中継装置100は、MACアドレスの手動入力を受け付けて、第1のテーブル131に登録してもよい。しかも、中継装置100は、タイムアウト削除が適用されるARPテーブル121とは別に、第1のテーブル131を記憶する。したがって、第1のテーブル131に記憶された情報が、ARPテーブル121に適用されるタイムアウト削除によって削除されることがない。その結果、中継装置100は、電子機器30,40が起動された状態にない場合であっても、電子機器30,40のMACアドレスを取得して、起動要求パケットを送信できる。
【0058】
また、中継装置100は、電子機器30,40に起動要求パケットを送信する場合に、その契機となった受信パケットがHTTP要求であれば、案内画面を表示するためのHTTP応答を送信する。したがって、ユーザは、端末50のディスプレイに表示された、HTTP応答を表示する画面を確認することで、起動させる電子機器30,40の状態や、自身が行うべき操作を容易に知ることができる。その結果、ユーザの利便性が向上する。しかも、案内画面には、時間情報が含まれるので、ユーザは、電子機器30,40の起動に要する時間を知ることができる。また、起動後の電子機器30,40に再アクセスが必要な場合、ユーザは、再アクセスのタイミングを知ることができる。したがって、ユーザの利便性が向上する。
【0059】
さらに、中継装置100は、時間情報を学習することができるので、精度の高い時間情報をユーザに知らせることができる。その結果、ユーザの利便性が向上する。例えば、電子機器30,40の起動時間が長期に亘る時間経過によって変化する場合や、電子機器30,40のファームウェアの更新、新たなハードウェアの追加的な組み込みなどによって、起動時間が変化する場合においても、中継装置100は、精度の高い時間情報をユーザに知らせることができる。
【0060】
B:変形例:
B−1.変形例1:
上述の中継処理(図4参照)においては、ARP要求やSYNパケットの送信によって、第1のネットワークNT1に接続された電子機器30,40が起動された状態であるか否かの確認(以下、起動確認ともいう)を行う構成について示したが、起動確認の構成は特に限定するものでない。起動確認は、通信パケットを送信して、その応答の有無を把握することによって行うものであればよい。例えば、中継装置100は、pingを用いて起動確認を行ってもよい。
【0061】
B−2.変形例2:
上述の起動処理(図5参照)では、ステップS330において、案内画面を表すデータは、時間情報を含むものとしたが、案内画面の内容は、適宜設定すればよい。案内画面は、起動対象の電子機器についての起動に関する情報を含んでもよい。起動に関する情報は、起動された状態である旨を表す情報であってもよいし、起動時間に基づく時間情報であってもよい。あるいは、案内画面は、ユーザの操作に関する情報を含んでもよい。ユーザの操作に関する情報は、例えば、ユーザの再アクセスを促す文字情報、さらに具体的には、「再度アクセスしてください」などの文字情報であってもよい。また、案内画面は、ユーザの待機に関する情報を含んでもよい。ユーザの待機に関する情報は、ユーザに待機を促す文字情報であってもよい。あるいは、起動時間に基づく時間情報をユーザの待機に関する情報として捉えてもよい。これらの情報は、適宜、組み合わせてもよい。
【0062】
また、中継装置100は、起動要求パケットを送信する前に、起動対象機器の起動の許否をユーザに確認するための画像データを、HTTP応答として送信してもよい。さらに、ユーザが、端末50で受信したHTTP応答の表示画面を用いて、起動対象機器の起動を許可する旨の入力を行い、中継装置100がその入力を受信した場合に限り、起動要求パケットを送信してもよい。かかる構成によれば、ユーザの意図に反して、起動対象機器が起動されることがない。
【0063】
また、中継装置100は、HTTP要求に代えて、あるいは、加えて、他のプロトコルを使用した通信パケットを受信した際に、案内画面や画像データを送信してもよい。他のプロトコルとしては、要求に対して、ディスプレイで表示するための画面データを応答可能な種々のプロトコルを採用することができる。他のプロトコルの具体例として、例えば、FTP、Telnet(Telecommunication network)、ssh(Secure SHell)などを例示することができる。
【0064】
B−3.変形例3:
中継装置100は、ユーザが、宛先ポート番号およびIPアドレスを第2のテーブル132に登録する際に、当該IPアドレスを割り当てられた機器の種類の入力を受け付けてもよい。また、CPU110は、応答部114の処理として、機器の種類に応じて、時間情報を決定してもよい。かかる場合、機器の種類の入力は選択指定により行える構成としてもよい。また、中継装置100は、機器の種類と時間情報とを対応付けて、予め記憶領域に記憶しておき、当該対応関係から、時間情報を決定してもよい。記憶する時間情報は、機器の種類に応じた一般的な、あるいは、平均的な起動時間としてもよい。これらの構成によれば、中継装置100を、時間情報を学習しない構成としても、中継装置100は、予め記憶された時間情報をユーザに提示することができる。あるいは、時間情報が学習される前であっても、中継装置100は、時間情報をユーザに提示することができる。なお、機器の種類の区分は、機器の主要な機能に基づいて設定されてもよい。あるいは、機器の種類の区分は、同一の主要な機能を有する機器であっても、型番の違いやファームウェアのバージョンが異なる場合には、機器の種類が異なるものとして、設定されてもよい。
【0065】
B−4.変形例4:
ユーザは、中継装置100の初期使用時には、中継装置100の動作テストを行ってもよい。動作テストは、接続確認テストとしてもよい。接続確認テストは、例えば、第1のネットワークNT1に接続された電子機器30,40を起動させた状態で、中継装置100が電子機器30,40の各々に対して、ARP要求を送信し、その応答を確認することとしてもよい。こうすれば、中継装置100の初期使用時から、第1のテーブル131に所要の情報が登録される。この場合、中継装置100は、ユーザから接続確認テストの開始指示を受け付けて、自動的に接続確認テストを順次、実行してもよい。こうすれば、ユーザの操作負担が軽減される。
【0066】
また、動作テストは、起動確認テストとしてもよい。起動確認テストは、例えば、第1のネットワークNT1に接続された電子機器30,40の電源をOFFにした状態で、中継装置100が電子機器30,40の各々に対して、起動要求パケットを送信し、電子機器30,40が適正に起動されることを確認することとしてもよい。こうすれば、中継装置100は、中継装置100の初期使用時において、時間情報を学習することができる。この場合、中継装置100は、ユーザから起動確認テストの開始指示を受け付けて、自動的に起動確認テストを順次、実行してもよい。こうすれば、ユーザの操作負担が軽減される。なお、ARPによる接続確認テストが完了した後に起動テストを行えば、中継装置100は、電子機器30,40のMACアドレスを取得済みであるから、自動的にマジックパケットを送信することができる。
【0067】
起動テストは、第1のネットワークNT1に接続された電子機器30,40の各々に対して、個体別に行うことに限定されない。例えば、変形例3で述べたように、中継装置100が、IPアドレスを割り当てられた機器の種類の入力を受け付ける場合には、起動テストを機器の種類別に行ってもよい。つまり、1つの機器の種類につき、当該種類の電子機器の任意の1つに対してのみ、起動テストを行ってもよい。この場合、CPU110は、学習部114の処理として、学習した時間情報を、同一種類の全ての電子機器に対して一律に適用してもよい。かかる構成とすれば、効率的に、時間情報を学習することができる。
【0068】
B−5.変形例5:
中継装置100がUPnP(Universal Plug and Play)をサポートする場合には、第2のテーブル132の情報は、UPnPを利用して登録されてもよい。UPnPは、周知の通り、自動的にポートマッピングを行う機能を提供する。また、UPnPアプリケーションがインストールされたパーソナルコンピュータを、第1のネットワークNT1を介して中継装置100に接続して、宛先ポート番号を指定して、ポートマッピングを行ってもよい。
【0069】
B−6.変形例6:
上述の実施例では、第1のテーブル131および第2のテーブル132は、不揮発性の記憶媒体であるフラッシュROM130に記憶する構成を示したが、これらの少なくとも一方は、揮発性の記憶媒体であるRAM120に記憶してもよい。また、第1のテーブル131および第2のテーブル132は、1つのテーブルとして構成されてもよい。つまり、宛先ポート番号と、電子機器30,40のIPアドレスと、電子機器30,40のMACアドレスとが、1つのテーブルにおいて対応付けられていてもよい。また、第1のテーブル131、第2のテーブル132および動的NAPTテーブル122が1つのテーブルとして構成されてもよい。
【0070】
また、必ずしも、ARPテーブル121とは別に第1のテーブル131を用意する必要はない。つまり、起動処理において、CPU110は、第1のテーブル131に代えて、ARPテーブル121を利用してもよい。こうすれば、中継装置100が備える有限の記憶領域を有効に活用することができる。かかる場合、中継装置100は、ARPテーブル121におけるIPアドレスとMACアドレスとの対応関係の各々について、異なるタイムアウト削除の時間を設定可能に構成されてもよい。かかる場合、ARPテーブル121におけるIPアドレスとMACアドレスとの対応関係のうち、第2のテーブル132に登録されたIPアドレスを含む対応関係については、その他の対応関係よりも、タイムアウト削除の時間を長く設定してもよい。あるいは、第2のテーブル132に登録されたIPアドレスを含む対応関係についてのみ、タイムアウト削除を適用しない設定としてもよい。かかる設定は、ユーザの手動入力によって設定されてもよいし、CPU110が自動的に設定してもよい。また、ARPテーブル121に対してタイムアウト削除を適用しない構成としてもよい。これらの構成とすれば、起動要求パケットの生成に用いるMACアドレスが取得できない状況が発生することを抑制することができる。
【0071】
B−7.変形例7:
上述した中継処理(図4参照)において、中継装置100が第2のネットワークNT2から起動要求パケットを受信した場合には、CPU110は、ステップS210の判断によって、処理をステップS220以降に進めることとなる。つまり、CPU110は、起動確認を行うこととなる。ただし、中継装置100が第2のネットワークNT2から起動要求パケットを受信した場合には、起動確認を行わないこととしてもよい。つまり、CPU110は、第2のネットワークNT2から第1のネットワークNT1に向けた通信パケットを受信し、通信パケットの転送先を特定できず、かつ、受信した通信パケットが起動要求パケットでない場合に、起動確認を行ってもよい。起動要求パケットに使用される宛先ポート番号を中継装置100に登録しておけば、中継装置100は、起動要求パケットを識別することができる。
【0072】
かかる場合、CPU110は、受信した起動要求パケットを第2のテーブル132に基づいて、静的NAPTによってアドレス変換を行い、起動要求パケットを転送してもよい。あるいは、中継処理をステップS260に進めてもよい。ユーザは、起動要求パケットを送信する操作を行っているので、起動要求パケットの宛先として予定された電子機器は、起動された状態ではない可能性が大きい。本変形例の構成とすれば、電子機器の起動確認を省略できるので、処理を効率化することができる。
【0073】
B−8.変形例8:
上述の実施形態では、電子機器30,40のIPアドレスは、ユーザの手動入力によって、固定的に割り当てられた。しかし、電子機器30,40のIPアドレスは、DHCPによって割り当ててもよい。この場合、DHCPは、IPアドレスの静的割り当てを行う構成としてもよい。かかる構成としても、第1のテーブル131および第2のテーブル132における対応関係を適正に維持できる。
【0074】
また、電子機器30,40のIPアドレスは、必ずしも固定的に割り当てる必要はない。例えば、中継装置100がDHCP機能を有し、IPアドレスの動的割り当てを行う場合には、CPU110は、IPアドレスの割り当てを行う際に、変更前後のIPアドレスに基づいて、第1のテーブル131および第2のテーブル132を更新してもよい。かかる構成は、電子機器30,40のIPアドレスが変更されたとしても、第1のテーブル131および第2のテーブル132における対応関係を適正に維持できる。あるいは、CPU110がARPテーブル121を参照して、第1のテーブル131を更新する頻度は、ARPテーブル121のタイムアウト削除の期間よりも短い期間で設定されてもよい。かかる構成は、IPアドレスの変更状況をほぼリアルタイムに第1のテーブル131に反映することができる。あるいは、CPU110は、中継装置100がARP応答を受信したことをフックし、そのたびにARPテーブル121を参照して、第1のテーブル131を更新してもよい。かかる構成は、IPアドレスを動的に割り当てても、IPアドレスの変更状況をリアルタイムに第2のテーブル132に反映することができる。
【0075】
B−9.変形例9:
中継装置100は、第2のテーブル132に登録された宛先ポート番号のうち、一部の宛先ポート番号についてのみ、ステップS310の検索対象としてもよい。つまり、中継装置100は、従来の静的NAPTのみに使用する宛先ポート番号と、起動処理と従来の静的NAPTとに使用する宛先ポート番号とを分けて管理してもよい。
【0076】
B−10.変形例10:
中継装置100は、動的NAPTに代えて、NATを利用した通信パケットの転送処理を実現可能に構成されてもよい。この場合、中継装置100は、ステップS210(図4参照)において、動的NAPTテーブル122に代えて、NATテーブルに基づいて、IPアドレスを取得してもよい。NATテーブルには、中継装置100に割り当てられた第2のネットワークNT2でのIPアドレスと、ユーザが所望する1つの電子機器、例えば、電子機器30に割り当てられた第1のネットワークNT1でのIPアドレスとが対応付けて記憶される。中継装置100は、第2のネットワークNT2から通信パケットを受信すると、通信パケットに含まれる宛先IPアドレス(中継装置100に割り当てられた第2のネットワークNT2でのIPアドレス)とNATテーブルとに基づいて、転送先を判断する。
【0077】
B−11.変形例11:
上述の実施例では、電子機器30,40を起動させるプロトコルとして、WOLを例示したが、起動に使用するプロトコルは、特に限定するものではない。当該プロトコルは、電子機器30,40がサポートする任意のプロトコルとしてもよい。起動要求パケットは、使用するプロトコルに応じたフォーマットであればよい。
【0078】
B−12.変形例12:
起動対象となる電子機器は、NASに限らず、ネットワークを介して通信可能な種々の電子機器とすることができる。例えば、電子機器は、パーソナルコンピュータとしてもよいし、ネットワーク対応型の各種家電機器であってもよい。
【0079】
B−13.変形例13:
第1のネットワークNT1および第2のネットワークNT2は、上述の例に限らず、相互にセグメントが異なるネットワークであればよい。例えば、第1のネットワークNT1および第2のネットワークNT2は、いずれもローカルエリアネットワークであってもよい。
【0080】
以上、本発明の実施形態について説明したが、本発明は、このような実施形態に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができる。例えば、上述した各適用例の構成要素や、実施形態中の要素は、本願の課題の少なくとも一部を解決可能な態様、または、上述した各効果の少なくとも一部を奏する態様において、適宜、組み合わせ、省略、上位概念化を行うことが可能である。
【符号の説明】
【0081】
20…ネットワークシステム
30,40…電子機器
50…端末
100…中継装置
110…CPU
111…判断部
112…送信部
113…確認部
114…応答部
115…学習部
120…RAM
121…ARPテーブル
122…動的NAPTテーブル
130…フラッシュROM
131…第1のテーブル
132…第2のテーブル
140…第1のLANインタフェース
150…第2のLANインタフェース
NT1…第1のネットワーク
NT2…第2のネットワーク

【特許請求の範囲】
【請求項1】
第1のネットワークと、該第1のネットワークとセグメントが異なる第2のネットワークとの間で通信パケットを中継する中継装置であって、
前記第1のネットワークに通信可能に接続された電子機器に割り当てられた前記第1のネットワークでのIPアドレスと、前記電子機器のMACアドレスとを対応付けた第1のテーブルを記憶する記憶部と、
前記第2のネットワークから前記第1のネットワークに向けた前記通信パケットであって、前記電子機器において該電子機器の起動後に実行可能なアプリケーションを利用するための通信パケットである特定の通信パケットを前記中継装置が受信した場合に、該特定の通信パケットの転送先を判断する判断部と、
前記判断された転送先としての前記電子機器である転送先電子機器のMACアドレスを用いて、前記転送先電子機器に起動要求パケットを送信する送信部と
を備えた中継装置。
【請求項2】
請求項1記載の中継装置であって、
さらに、前記特定の通信パケットを前記中継装置が受信した場合に、前記転送先電子機器が起動された状態であるか否かを確認することが可能な確認部を備え、
前記送信部は、前記転送先電子機器が起動された状態にないことが確認された場合にのみ、前記起動要求パケットを送信する
中継装置。
【請求項3】
請求項1または請求項2記載の中継装置であって、
前記第1のテーブルは、前記中継装置が管理するARPテーブルとは別に確保され、
前記第1のテーブルに記録された情報は、前記ARPテーブルに適用されるタイムアウト削除であって、記録された情報のうちの、予め定められた時間経過の間に通信に使用されなかった情報を削除するタイムアウト削除が適用されない
中継装置。
【請求項4】
請求項2、または、請求項2に従属する請求項3記載の中継装置であって、
さらに、前記中継装置が前記特定の通信パケットとして、要求に対して、ディスプレイで表示するための画面データを応答可能なプロトコルを使用した要求パケットを受信し、かつ、前記受信した要求パケットに基づく前記確認部の確認に基づいて、前記送信部が前記起動パケットを送信する場合に、前記受信した要求パケットへの応答として、前記転送先電子機器の起動、ユーザの操作およびユーザの待機のうちの少なくとも1つに関する案内画面を表示するためのデータを含む応答パケットを送信する応答部を備えた
中継装置。
【請求項5】
前記案内画面を表示するためのデータは、前記送信部が送信する前記起動要求パケットの宛先となる前記転送先電子機器の起動に要する時間として推定される時間を表す時間情報を含む請求項4記載の中継装置。
【請求項6】
請求項5記載の中継装置であって、
さらに、前記第1のネットワークに接続された電子機器に前記起動要求パケットを送信してから、起動が完了するまでに要する起動時間を学習する学習部を備え、
前記応答部は、前記学習した起動時間に基づいて、前記時間情報を決定する
中継装置。
【請求項7】
請求項1ないし請求項6のいずれか記載の中継装置であって、
前記記憶部は、宛先ポート番号と、前記電子機器に割り当てられた前記第1のネットワークでのIPアドレスとを対応付けた第2のテーブルを記憶し、
前記判断部は、前記特定の通信パケットに含まれる宛先ポート番号と、前記第2のテーブルとに基づいて、前記特定の通信パケットの転送先を判断する
中継装置。
【請求項8】
請求項1ないし請求項6のいずれか記載の中継装置であって、
前記記憶部は、前記中継装置に割り当てられた前記第2のネットワークでのIPアドレスと、前記電子機器に割り当てられた前記第1のネットワークでのIPアドレスとを対応付けた第3のテーブルを記憶し、
前記判断部は、前記特定の通信パケットに含まれる宛先IPアドレスと、前記第3のテーブルとに基づいて、前記特定の通信パケットの転送先を判断する
中継装置。
【請求項9】
第1のネットワークと、該第1のネットワークとセグメントが異なる第2のネットワークとが中継装置を介して接続された環境下において、前記第1のネットワークに通信可能に接続された電子機器を、前記第2のネットワーク側から起動させる電子機器の起動方法であって、
前記中継装置において、前記電子機器に割り当てられた前記第1のネットワークでのIPアドレスと、前記電子機器のMACアドレスとの対応関係を記憶し、
前記第2のネットワークから前記第1のネットワークに向けた前記通信パケットであって、前記電子機器において該電子機器の起動後に実行可能なアプリケーションを利用するための通信パケットである特定の通信パケットを前記中継装置が受信した場合に、前記中継装置において、前記特定の通信パケットの転送先を判断し、
前記中継装置において、前記判断された転送先としての前記電子機器である転送先電子機器のMACアドレスを用いて、前記転送先電子機器に起動要求パケットを送信し、前記転送先電子機器を起動させる
電子機器の起動方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2013−115737(P2013−115737A)
【公開日】平成25年6月10日(2013.6.10)
【国際特許分類】
【出願番号】特願2011−262494(P2011−262494)
【出願日】平成23年11月30日(2011.11.30)
【出願人】(390040187)株式会社バッファロー (378)
【Fターム(参考)】