(57)【要約】【課題】異なるネットワーク間の情報漏えいを抑制して入出力装置を共用できるネットワーク機器を提供すること。【解決手段】複数のネットワークインタフェースを備えたネットワーク機器１０であって、第一のネットワークの入出力装置と通信を行う第一の通信手段ＮＩＣ＿Ｃと、第二のネットワークの第一の機器と通信を行う第二の通信手段ＮＩＣ＿Ａと、第三のネットワークの第二の機器と通信を行う第三の通信手段ＮＩＣ＿Ｂと、を有し、前記第二の通信手段は、前記第二のネットワークからデータを受信した場合、前記第三のネットワークに前記データを送信することなく前記第一の通信手段から前記第一のネットワークに前記データを送信し、前記第三の通信手段は、前記第三のネットワークからデータを受信した場合、前記第二のネットワークに前記データを送信することなく前記第一の通信手段から前記第一のネットワークに前記データを送信する。【選択図】図１
2017200178.tif 000002
【特許請求の範囲】
【請求項１】
複数のネットワークインタフェースを備えたネットワーク機器であって、
第一のネットワークインタフェースと接続された第一のネットワークの入出力装置と通信を行う第一の通信手段と、
第二のネットワークインタフェースと接続された第二のネットワークの第一の機器と通信を行う第二の通信手段と、
第三のネットワークインタフェースと接続された第三のネットワークの第二の機器と通信を行う第三の通信手段と、を有し、
前記第二の通信手段は、前記第二のネットワークからデータを受信した場合、前記第三のネットワークに前記データを送信することなく前記第一の通信手段から前記第一のネットワークに前記データを送信し、
前記第三の通信手段は、前記第三のネットワークからデータを受信した場合、前記第二のネットワークに前記データを送信することなく前記第一の通信手段から前記第一のネットワークに前記データを送信するネットワーク機器。
【請求項２】
前記入出力装置から前記第一の通信手段がデータを受信した場合、前記データを前記第二のネットワーク又は前記第三のネットワークのどちらに送信するかに関する情報が設定された通信経路制御情報に基づいて前記第二のネットワーク又は前記第三のネットワークのどちらに前記データを送信かを判断する送信先判断手段を有し、
前記送信先判断手段は、前記第二のネットワークに送信すると判断した場合、前記第二の通信手段にデータを送信させ、前記第三のネットワークに送信すると判断した場合、前記第三の通信手段にデータを送信させる請求項１に記載のネットワーク機器。
【請求項３】
前記通信経路制御情報には、前記第二のネットワークから受信したデータを前記第一のネットワークに送信する旨が登録されており、前記第三のネットワークから受信したデータを前記第一のネットワークに送信する旨が登録されており、
前記第一のネットワークから受信したデータが有する宛先のアドレス情報に応じて前記第二のネットワーク又は前記第三のネットワークに前記データを送信する旨が登録されている請求項２に記載のネットワーク機器。
【請求項４】
前記第一のネットワークと前記第二のネットワークはネットワークアドレスが同じネットワークであり、前記第一のネットワーク又は前記第二のネットワークと前記第三のネットワークはネットワークアドレスが異なるネットワークである請求項１〜３のいずれか１項に記載のネットワーク機器。
【請求項５】
前記第二の通信手段は、前記第二のネットワークと前記第一のネットワークの間でＭＡＣアドレス及び宛先ＩＰアドレスを変換せずデータを転送し、
前記第三の通信手段は、前記第三のネットワークと前記第一のネットワークの間でＭＡＣアドレス及び宛先ＩＰアドレスを変換してデータを転送する請求項４に記載のネットワーク機器。
【請求項６】
前記第二のネットワークと前記第一のネットワークの間でブリッジ接続するブリッジ接続手段と、
前記第三のネットワークと前記第一のネットワークの間をＮＡＴ（Network Address Translation）変換するＮＡＴ変換手段と、を有する請求項５に記載のネットワーク機器。
【請求項７】
前記第二の通信手段は、ＩＰアドレス及びＭＡＣアドレスを有し、
前記第二の通信手段は前記入出力装置のデフォルトゲートウェイとして設定されている請求項１〜６のいずれか１項に記載のネットワーク機器。
【請求項８】
前記第一のネットワークと前記第二のネットワークはネットワークアドレスが異なるネットワークであり、前記第一のネットワークと前記第三のネットワークはネットワークアドレスが異なるネットワークである請求項１又は２に記載のネットワーク機器。
【請求項９】
前記第二のネットワークと前記第一のネットワークの間でＮＡＰＴ（Network Address Port Translation）変換する第一のＮＡＰＴ変換手段と、
前記第三のネットワークと前記第一のネットワークの間をＮＡＰＴ変換する第二のＮＡＰＴ変換手段と、を有する請求項８に記載のネットワーク機器。
【請求項１０】
前記通信経路制御情報は外部から変更される請求項３に記載のネットワーク機器。
【請求項１１】
請求項１〜１０いずれか１項に記載のネットワーク機器を有する入出力装置。
【請求項１２】
複数のネットワークインタフェースを備えたネットワーク機器であって、
入出力装置が接続された第一のネットワークと接続された第一のネットワークインタフェースと、
第一の機器が接続された第二のネットワークと接続された第二のネットワークインタフェースと、
第二の機器が接続された第三のネットワークと接続された第三のネットワークインタフェースと、
前記第二のネットワークから前記第一のネットワークに、前記第三のネットワークから前記第一のネットワークに、データを転送する旨が記憶された記憶手段と、
前記記憶手段を参照し、前記第二のネットワークから前記第一のネットワークに、及び、前記第三のネットワークから前記第一のネットワークに、データを転送する制御手段と、
を有するネットワーク機器。
【請求項１３】
複数のネットワークインタフェースを備えた情報処理装置を、
第一のネットワークインタフェースと接続された第一のネットワークの入出力装置と通信を行う第一の通信手段と、
第二のネットワークインタフェースと接続された第二のネットワークの第一の機器と通信を行う第二の通信手段と、
第三のネットワークインタフェースと接続された第三のネットワークの第二の機器と通信を行う第三の通信手段、として機能させ、
前記第二の通信手段は、前記第二のネットワークからデータを受信した場合、前記第三のネットワークに前記データを送信することなく前記第一の通信手段から前記第一のネットワークに前記データを送信し、
前記第三の通信手段は、前記第三のネットワークからデータを受信した場合、前記第二のネットワークに前記データを送信することなく前記第一の通信手段から前記第一のネットワークに前記データを送信するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク機器、入出力装置及びプログラムに関する。
【背景技術】
【０００２】
同じ組織の中に異なるネットワーク（ネットワークアドレスが異なる）が存在することは少なくないが、一般にルータを介して異なるネットワークが相互に通信できる。しかしながら、同じ組織内でも異なるネットワークの相互の通信を制限したい場合がある。例えば、官公庁や病院では個人情報などの秘匿すべき情報が流れる第一のネットワークと、売上や人事データなど個人情報よりは秘匿性が高くない情報が流れるＯＡ（Office Automation）系の第二のネットワークが存在する。また、一般企業においても、Ｍ＆Ａなどにより元は異なる複数の企業が同じフロアで作業する場合があり、それぞれが別のネットワークを使用する（ある企業は第一のネットワークを使用し、別の企業は第二のネットワークを使用する）場合がある。
【０００３】
このような場合、第一のネットワークの情報は第二のネットワークに流れるべきでないし、第二のネットワークの情報は第一のネットワークに流れるべきでない。
【０００４】
一方で、官公庁や病院、企業などの業務ではプリンタなどの入出力装置が使用される場合が多いが、ネットワーク毎に入出力装置が用意されると組織側の負担が大きいし、設置スペースも入出力装置の台数分だけ必要になってしまう。このため、異なるネットワークで共通の入出力装置を使用することで台数を削減したいという要請がある。
【０００５】
このような要請に対し、複数のネットワークインタフェースを備えた入出力装置が知られている（例えば、特許文献１参照。）。特許文献１には、複数のネットワークインタフェースを備え、それら各ネットワークインタフェースにより複数のセグメントのネットワークにそれぞれ接続された画像処理装置が開示されている。この画像処理装置は、各ネットワークインタフェースとの間の通信を行うか否かが装置全体について設定された通信可否設定手段に基づいて各ネットワークインタフェースと他の機器との通信を制御する。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に開示されているように、入出力装置に異なるネットワークが接続されると、入出力装置を介して異なるネットワーク間で情報が漏洩するおそれがあるという問題が生じる。例えば、第一のネットワークと第二のネットワークは別々に設計されているので、同じＩＰアドレスを持った機器が存在する可能性がある。多くの入出力装置は１つのルーティングテーブルしか有さないので、同じＩＰアドレスの機器がＩＰ通信可能な範囲に存在すると、ＡＲＰ要求やＴＣＰコネクションの確立時等において様々な不都合を引き起こし得る。この不都合が生じないとしても第一のネットワークに送信すべきデータを第二のネットワークに送信するなどの情報漏えいが生じ得る。
【０００７】
また、ＩＰアドレスを整理して同じＩＰアドレスの機器がない状態にすることが検討されるが、少なくともネットワークインタフェースが２つ必要になってしまう。また、第一のネットワークと第二のネットワークの間をルータで仕切ることが考えられるが、データにルータを超えるような宛先のＩＰアドレスが設定されることで、第一のネットワークと第二のネットワークで相互に情報が行き来してしまう。
【０００８】
本発明は、上記課題に鑑み、異なるネットワーク間の情報漏えいを抑制して入出力装置を共用できるネットワーク機器を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、複数のネットワークインタフェースを備えたネットワーク機器であって、第一のネットワークインタフェースと接続された第一のネットワークの入出力装置と通信を行う第一の通信手段と、第二のネットワークインタフェースと接続された第二のネットワークの第一の機器と通信を行う第二の通信手段と、第三のネットワークインタフェースと接続された第三のネットワークの第二の機器と通信を行う第三の通信手段と、を有し、前記第二の通信手段は、前記第二のネットワークからデータを受信した場合、前記第三のネットワークに前記データを送信することなく前記第一の通信手段から前記第一のネットワークに前記データを送信し、前記第三の通信手段は、前記第三のネットワークからデータを受信した場合、前記第二のネットワークに前記データを送信することなく前記第一の通信手段から前記第一のネットワークに前記データを送信する。
【発明の効果】
【００１０】
異なるネットワーク間の情報漏えいを抑制して入出力装置を共用できるネットワーク機器を提供することができる。
【図面の簡単な説明】
【００１１】
【図１】本実施形態のネットワーク機器の概略的な動作を説明する図の一例である。
【図２】ネットワーク機器により通信の経路が制御されるネットワークシステムの構成図の一例である。
【図３】ネットワーク機器の一例のハードウェア構成図である。
【図４】入出力装置の一例としての複合機のハードウェア構成図の一例である。
【図５】ネットワーク機器の機能の一部を模式的に説明する図の一例である。
【図６】OpenFlowを説明する図の一例である。
【図７】ネットワークＡのクライアント端末ＡとネットワークＢのクライアント端末Ｂが入出力装置との通信を行うシーケンス図の一例である。
【図８】ネットワークシステムの構成図の一例である。
【図９】ネットワークＡにデフォルトゲートウェイがある場合に、ネットワークＡのクライアント端末ＡとネットワークＢのクライアント端末Ｂが入出力装置との通信を行うシーケンス図の一例である。
【図１０】ネットワーク機器が通信経路を制御する場合の比較例となるネットワークシステムの構成図の一例である。
【図１１】ネットワーク機器の概略的な動作を説明する図の一例である（実施例２）。
【図１２】ネットワーク機器により通信の経路が制御されるネットワークシステムの構成図の一例である。
【図１３】入出力装置の機能の一部を模式的に説明する図の一例である。
【図１４】ネットワークＡのクライアント端末Ａが入出力装置との通信を行うシーケンス図の一例である。
【図１５】ネットワーク機器の構造を説明する図の一例である。
【図１６】ネットワーク機器を有する入出力装置を説明する図の一例である。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための形態について図面を参照しながら説明する。
【実施例１】
【００１３】
図１は、本実施形態のネットワーク機器１０の概略的な動作を説明する図の一例である。図１ではネットワークＡにクライアント端末３０（以下、クライアント端末Ａという）が接続され、ネットワークＢにクライアント端末３０（以下、クライアント端末Ｂという）が接続されている。ネットワークＡとＢはネットワーク機器１０に接続されているが、後述するようにネットワーク機器１０はネットワークＡからＢ、又はＢからＡへの通信を行わない。
【００１４】
ネットワーク機器１０にはプリンタなどの入出力装置４０が接続されている。ネットワーク機器１０は入出力装置４０をネットワークＡに接続されている装置として扱う。すなわち、入出力装置４０はクライアント端末Ｂが接続されたネットワークＢとは別のネットワークＡに属している。このような構成により以下のような通信の経路制御が可能になる。
(i) クライアント端末Ａが送信するパケットはクライアント端末Ａと同一ネットワークのネットワークＡに属する入出力装置４０にそのまま送信される。
(ii) クライアント端末Ｂが送信するパケットはネットワーク機器１０でいわゆるルータ越えを行い入出力装置４０に送信される。本実施形態では、ＮＡＴ（Network Address Translation）変換を行うが通常のＮＡＴ変換とは変換の向きが逆になる。このＮＡＴ変換により入出力装置４０に到達するパケットの宛先のＩＰアドレスはネットワーク機器１０のＩＰアドレスから入出力装置４０のＩＰアドレスに変換される。
【００１５】
クライアント端末Ａ、Ｂから入出力装置４０に送信されたパケットに応答するため、入出力装置４０はネットワーク機器１０にパケットを送信する。入出力装置４０がクライアント端末Ａ、Ｂに送信するパケットは、ネットワーク機器１０によって宛先を判断されネットワークＡ又はＢに送信される。
(iii) 入出力装置４０がクライアント端末Ａに応答する場合、入出力装置４０とクライアント端末Ａのネットワークアドレスが一致するので、入出力装置４０はクライアント端末Ａを宛先にしてパケットを送信する。すなわち、宛先は、ＭＡＣアドレス：クライアント端末Ａ、ＩＰアドレス：クライアント端末Ａである。ネットワーク機器１０は宛先のＭＡＣアドレスが自分宛でないのでネットワークＡにパケットをそのまま送信する。あるいは、宛先のＩＰアドレスとネットワークＡのサブネットマスクでパケットがネットワークＡへ送信されるものであると判断してネットワークＡにパケットをそのまま送信する。
(iv) 入出力装置４０がクライアント端末Ｂに応答する場合、クライアント端末Ｂと入出力装置４０のネットワークアドレスが一致しないので、入出力装置４０はデフォルトゲートウェイであるネットワーク機器１０を宛先にしてパケットを送信する。すなわち、宛先は、ＭＡＣアドレス：ネットワーク機器１０、ＩＰアドレス：クライアント端末Ｂである。ネットワーク機器１０は宛先のＭＡＣアドレスが自分宛であるので、ＮＡＴテーブルを参照し送信元のＩＰアドレスを入出力装置４０からネットワーク機器１０のＩＰアドレスに書き換える。また、宛先のＭＡＣアドレスはクライアント端末ＢのＭＡＣアドレスに変換される。したがって、宛先は、ＭＡＣアドレス：クライアント端末Ｂ、ＩＰアドレス：クライアント端末Ｂである。
【００１６】
このようにして、ネットワークＡのクライアント端末Ａと、ネットワークＡと異なるネットワークであるネットワークＢのクライアント端末Ｂが共通の入出力装置４０を使用できる。また、入出力装置４０はネットワークＡに接続されており、入出力装置４０がネットワークＡに送信するパケットはそのままネットワークＡに送信されるため、情報漏えいするおそれはほとんどない。入出力装置４０がネットワークＢに送信するパケットはネットワーク機器１０によりネットワークＢに送信されるため、情報漏えいするおそれはほとんどない。また、ネットワークＡからネットワークＢへパケットを送信する制御は行われないため、ネットワークＡからネットワークＢへパケットが漏洩するおそれはない。ネットワークＢからネットワークＡへパケットを送信する制御は行われないため、ネットワークＢからネットワークＡへパケットが漏洩するおそれはない。
【００１７】
また、仮に、クライアント端末ＡとＢが同じＩＰアドレスであるとしても、クライアント端末Ａから送信されたパケットに入出力装置４０が応答する場合、宛先のＭＡＣアドレスがクライアント端末Ａのものなので、クライアント端末Ａにしか送信されない。クライアント端末Ｂから送信されたパケットに入出力装置４０が応答する場合、宛先のＭＡＣアドレスはネットワーク機器１０なので、ネットワーク機器１０はネットワークＢにパケットを転送できる。したがって、ネットワークＡとＢの間で情報が漏洩することおそれがないか又はほとんどない。
【００１８】
なお、本実施形態では、入出力装置４０からクライアント端末Ａ又はＢに対し通信を開始する際の処理を説明しない。入出力装置４０から開始する通信としては、例えば、入出力装置４０が原稿を読み取って（スキャンして）生成した画像データをクライアント端末Ａ又はＢに送信する際の通信が挙げられる。このような機能はSCAN To Folderなどと呼ばれるが、本実施形態では説明の対象外とする。
【００１９】
＜用語について＞
そのまま送信するとは、パケットをあるがままに送信することをいう。また、パケットに何ら変更が加えられないことをいう。具体的にはレイヤ２のアドレスであるＭＡＣアドレスとレイヤ３のＩＰアドレスに変更がないことをいう。
【００２０】
アドレス情報とは、ネットワーク上で装置を識別するための情報、又は、ネットワーク機器がデータをネットワーク上の宛先の装置に転送するための情報である。具体的には、ＩＰアドレス、ＭＡＣアドレス、及び、ポート番号などである。
【００２１】
データとは、ネットワーク上を流れる情報であり、具体的にはパケットやフレームなどと呼ばれる。
【００２２】
＜システム構成の補足＞
図２を用いてシステム構成について補足する。図２は、ネットワーク機器１０により通信の経路が制御されるネットワークシステム１００の構成図の一例である。図２では、以後の説明を分かりやすくするため、ＩＰアドレス及びサブネットマスクが示されている。また、ＩＰアドレスに続くかっこ内にＭＡＣアドレスの下二桁が示されている。
【００２３】
入出力装置４０のＩＰアドレスは165.96.10.11であり、クライアント端末ＡのＩＰアドレスは165.96.10.01であり、クライアント端末ＢのＩＰアドレスは192.168.5.01である。また、ネットワーク機器１０は３つのＮＩＣ（Network Interface Card）５０７を有しており、ネットワークＡと接続されたＮＩＣ＿ＡのＩＰアドレスが165.96.10.200であり、ネットワークＢと接続されたＮＩＣ＿ＢのＩＰアドレスが192.168.5.100である。ネットワークＣと接続されたＮＩＣ＿ＣはＩＰアドレスを持っていない。これは、ネットワーク機器１０のネットワークＣと接続されるＮＩＣ＿Ｃは単に通信のインタフェースを提供すればよく、例えばハブやＬＡＮスイッチと同様に扱われるためである（レイヤ２以下の通信制御だけを行えばよいためである。）。また、入出力装置４０がネットワークＣと接続されるＮＩＣ＿ＣのＩＰアドレスを宛先にして通信することもない（ネットワークＣと接続されるＮＩＣ＿ＣがＩＰアドレスを有する必要がない。）。
【００２４】
この点は、ネットワークＡと接続されたＮＩＣ＿Ａも同じであるが、このＮＩＣ＿ＡがＩＰアドレスを有することで後述する効果（図８，９）を奏することができる。なお、ネットワークＡのサブネットマスクは165.96.10.0/24であり、ネットワークＢのサブネットマスクは192.168.5.0/24である。
【００２５】
ネットワーク機器１０が有するＮＩＣの数は３つ以上であればよく、上限はネットワーク機器１０の処理能力やＮＩＣの搭載スペースなどに応じて決定される。例えば、ＮＩＣの数が４つの場合、３つの異なるネットワークで１つの入出力装置４０を共用できる。
【００２６】
また、ネットワーク機器１０と入出力装置４０は例として有線で接続されていてもよいし、無線ＬＡＮ（Wi-Fi）で接続されていてもよい。また、ネットワークＡ上に無線ＬＡＮのアクセスポイントを設け、クライアント端末Ａがアクセスポイントと無線ＬＡＮで通信してもよい。クライアント端末Ｂについても同様である。
【００２７】
入出力装置４０は、一例として、プリント機能、コピー機能、スキャナ機能及びＦＡＸ機能といった複数の機能を１つの筐体で実現する複合機である。複合機の他、ＭＦＰ（Multifunction Peripheral）、複写機、などと呼ばれていてもよい。入出力装置４０は、プリント機能、コピー機能、スキャナ機能又はＦＡＸ機能の１つだけを有していてもよい。この場合、入出力装置４０はプリンタ、複写機、スキャナ装置、又はＦＡＸ装置と呼ばれる。また、入出力装置４０は複合機の他、電子黒板、プロジェクタ又はテレビ会議端末などでもよい。これらの装置は、ネットワークＡ，Ｂからユーザが共用することができ、電子黒板、プロジェクタ又はテレビ会議端末が扱う情報がネットワークＡ，Ｂに送信される可能性がある。
【００２８】
クライアント端末Ａ,Ｂは、ネットワークＡ，Ｂに接続できる情報処理装置である。例えば、ＰＣ（Personal Computer）、スマートフォン、タブレット型コンピュータ、ＰＤＡ（Personal Digital Assistant）、携帯電話などである。これらの他、通信装置と情報処理装置の機能を有していれば、ウェアラブル端末（ヘッドアップディスプレイ、腕時計型端末など）、デジタルカメラ、ゲーム機などでもよい。
【００２９】
ネットワーク機器１０は、クライアント端末ＡとＢのいずれからもネットワークを介した通信を可能とし、更に、入出力装置４０がクライアント端末Ａに送信すべきパケットをクライアント端末Ｂに送信したり、入出力装置４０がクライアント端末Ｂに送信すべきパケットをクライアント端末Ａに送信したりすることを防止する。ネットワーク機器１０は具体的には情報処理装置である。ここで、クライアント端末Ｂからはネットワーク機器１０が入出力装置４０として見えることに注意されたい。ネットワーク機器１０のＮＩＣ＿Ｂには入出力装置４０と同様のコンピュータ名が付与されており、クライアント端末ＢのＯＳやプリンタドライバなどはコンピュータ名を使ってネットワーク機器１０を入出力装置４０であると認識する。コンピュータ名はネットワーク上のマスターブラウザが管理しており、クライアント端末Ｂはネットワーク機器１０のコンピュータ名を取得できる。また、ＳＭＢ（Server Message Block）という通信プロトコルでコンピュータ名を宛先にネットワーク機器１０に問い合わせると、ネットワーク機器１０のＩＰアドレスを取得できる（名前解決する）。したがって、クライアント端末Ｂが入出力装置４０と通信を開始する場合、宛先のＩＰアドレスはＮＩＣ＿Ｂの192.168.5.100となる。なお、このような仕組みでの他、ＤＮＳ（Domain Name System）により名前解決してもよい。
【００３０】
なお、ネットワーク機器１０のＮＩＣ＿Ａには入出力装置４０と同様のコンピュータ名が付与されていない。ネットワークＡとネットワークＣは同じネットワークなのでＮＩＣ＿ＡとＮＩＣ＿ＣはハブやＬ２スイッチと同様に通信のインタフェースを提供するだけである。したがって、クライアント端末Ａから見るとネットワーク機器１０は通信経路に見え、入出力装置４０は例えばプリンタとして見える。
【００３１】
ネットワーク機器１０と入出力装置４０を１セットとすると、同じセットが他に２つネットワークＡ，Ｂに接続されている。ネットワーク機器１０´と入出力装置４０´が１つのセットであり、ネットワーク機器１０´´と入出力装置４０´´が１つのセットである。セットは４つ以上でもよい。
【００３２】
入出力装置４０´のＩＰアドレスは165.96.10.12、ネットワーク機器１０´のＮＩＣ＿ＡのＩＰアドレスは165.96.10.201、ネットワーク機器１０´のＮＩＣ＿ＢのＩＰアドレスは192.168.5.101である。したがって、入出力装置４０´とネットワーク機器１０´のＮＩＣ＿ＡはネットワークＡに所属しており、ネットワーク機器１０´のＮＩＣ＿ＢはネットワークＢに所属している。
【００３３】
入出力装置４０´´のＩＰアドレスは165.96.10.13、ネットワーク機器１０´´のＮＩＣ＿ＡのＩＰアドレスは165.96.10.202、ネットワーク機器１０´´のＮＩＣ＿ＢのＩＰアドレスは192.168.5.102である。したがって、入出力装置４０´´とネットワーク機器１０´´のＮＩＣ＿ＡはネットワークＡに所属しており、ネットワーク機器１０´´のＮＩＣ＿ＢはネットワークＢに所属している。
【００３４】
このように、ネットワーク機器１０と入出力装置４０のセットをネットワークＡとＢに接続することにより、クライアント端末Ａ及びＢの数が増えても適正な数の入出力装置４０を配置できる。また、ネットワーク機器１０の処理負荷が増大しにくくなる。各クライアント端末Ａ、Ｂには優先して使用する（デフォルトの）入出力装置４０が設定されている。以下では特に断らない限り、ネットワーク機器１０と入出力装置４０の動作を説明するが、ネットワーク機器１０´と入出力装置４０´のセット、ネットワーク機器１０´´と入出力装置４０´´のセットの動作も同様になる。
【００３５】
なお、各ネットワーク機器１０が使用する入出力装置４０が予め決まっていてもよいが、ネットワークシステム１００がロードバランサを有する場合、ロードバランサが入出力装置４０、４０´、４０´´の負荷に応じて入出力装置４０、４０´、４０´´のいずれかを選択してもよい。
【００３６】
＜ハードウェア構成について＞
図３は、本実施形態に係るネットワーク機器１０の一例のハードウェア構成図である。ネットワーク機器１０は入力装置５０１、表示装置５０２、外部Ｉ／Ｆ５０３、ＲＡＭ５０４、ＲＯＭ５０５、ＣＰＵ５０６、ＮＩＣ５０７及びＨＤＤ５０８などを備え、それぞれがバスＢで相互に接続されている。なお、入力装置５０１及び表示装置５０２は必要なときに接続して利用する形態であってもよい。
【００３７】
入力装置５０１はキーボードやマウス、タッチパネルなどを含み、ユーザが各操作信号を入力するのに用いられる。表示装置５０２はディスプレイ等を含み、ネットワーク機器１０による処理結果を表示する。
【００３８】
ＮＩＣ５０７はネットワーク機器１０をネットワークＡ〜Ｃに接続するインタフェースである。ネットワーク機器１０がＬＡＮに接続するための通信装置である。ネットワークカードと呼ばれてもよい。また、具体的にはやEthernet（登録商標）カードが知られている。ＮＩＣは脱着可能でもよいし、ネットワーク機器１０に固定されていてもよい。また、ネットワーク機器１０に対し外付けされる外付け型でもよい。この場合、ネットワーク機器１０とＮＩＣはＵＳＢケーブルやＩＥＥＥ１３９４ケーブルなどで接続される。また、図３のＮＩＣ５０７は３つであるが、４つ以上でもかまわない。ＮＩＣ５０７の数は入出力装置４０を共用したい異なるネットワークの数やＣＰＵ５０６の能力によって決定される。
【００３９】
また、ＨＤＤ５０８は、プログラムやデータを格納している不揮発性の記憶装置の一例である。格納されるプログラムやデータには、ネットワーク機器１０の全体を制御する基本ソフトウェアであるＯＳ、及びＯＳ上において各種機能を提供するアプリケーションソフトウェア（以下、単にアプリケーションと呼ぶ）などがある。なお、ＨＤＤ５０８に替え、記録媒体としてフラッシュメモリを用いるドライブ装置（例えばソリッドステートドライブ：ＳＳＤ）を利用するものであってもよい。
【００４０】
外部Ｉ／Ｆ５０３は、外部装置とのインタフェースである。外部装置には、記録媒体５０３ａなどがある。これにより、ネットワーク機器１０は外部Ｉ／Ｆ５０３を介して記録媒体５０３ａの読み取り及び／又は書き込みを行うことができる。記録媒体５０３ａにはフレキシブルディスク、ＣＤ、ＤＶＤ等の光学ディスク、ＳＤメモリカード、ＵＳＢメモリなどがある。
【００４１】
ＲＯＭ５０５は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリ（記憶装置）の一例である。ＲＯＭ５０５にはネットワーク機器１０の起動時に実行されるＢＩＯＳ、ＯＳ設定、及びネットワーク設定などのプログラムやデータが格納されている。ＲＡＭ５０４はプログラムやデータ（パケット）を一時保持する揮発性の半導体メモリ（記憶装置）の一例である。
【００４２】
ＣＰＵ５０６は、ＲＯＭ５０５やＨＤＤ５０８などの記憶装置からプログラムやデータをＲＡＭ５０４上に読み出し、処理を実行することで、ネットワーク機器１０全体の制御や機能を実現する演算装置である。
【００４３】
なお、図示するネットワーク機器１０のハードウェア構成は、１つの筐体に収納されていたりひとまとまりの装置として備えられていたりする必要はなく、ネットワーク機器１０が備えていることが好ましいハード的な要素を示す。また、クラウドコンピューティングに対応するため、本実施例のネットワーク機器１０の物理的な構成は固定的でなくてもよく、負荷に応じてハード的なリソースが動的に接続・切断されることで構成されてよい。
【００４４】
図４は、入出力装置４０の一例としての複合機のハードウェア構成図の一例である。複合機はコントローラ３２０を有する。コントローラ３２０は、ＣＰＵ３０１、ＡＳＩＣ（Application Specific Integrated Circuit）３０５、ＳＤＲＡＭ３０２、フラッシュメモリ３０３、ＨＤＤ３０４、及び、ＮＩＣ＿Ｘ３０６を有する。
【００４５】
ＡＳＩＣ３０５は、ＣＰＵインタフェース、ＳＤＲＡＭインタフェース、ローカルバスインタフェース、ＰＣＩバスインタフェース、ＭＡＣ（Media Access Controller）、及び、ＨＤＤインタフェースなどを備える多機能デバイスボードである。
【００４６】
ＣＰＵ３０１は、ＡＳＩＣ３０５を介して各種プログラムをＨＤＤ３０４から読み取り実行する。
【００４７】
ＳＤＲＡＭ３０２は、各種プログラムを記憶するプログラムメモリや、ＣＰＵ３０１が各種プログラムを実行する際に使用するワークメモリ等として機能する。なお、ＳＤＲＡＭ３０２の代わりに、ＤＲＡＭやＳＲＡＭを用いてもよい。
【００４８】
フラッシュメモリ３０３は不揮発性メモリであり、複合機を起動させるブートローダ（ブートプログラム）やＯＳを記憶する。また、各プログラムを記憶するアプリケーションメモリとして機能する。また、フラッシュメモリ３０３は、各サービス（コピーサービス、プリントサービス、ファクシミリサービス）のソフトウェアを記憶するサービスメモリとして機能する。更に、フラッシュメモリ３０３は、ファームウェアを記憶するファームメモリ、ネットワークアドレスや機種機番等を記憶するデータメモリとして機能する。
【００４９】
なお、フラッシュメモリ３０３の代わりに、ＲＡＭと電池を利用したバックアップ回路を集積した不揮発性ＲＡＭや、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read-Only Memory）等の他の不揮発性メモリを使用してもよい。
【００５０】
ＨＤＤ３０４は、複合機の電源のオン、オフに関わりなくデータを記憶する不揮発性の記憶媒体である。ＨＤＤ３０４は、フラッシュメモリ３０３内に記憶されたプログラム及びデータ以外のプログラム及びデータを記録する。なお、ＨＤＤ３０４は、ファームメモリとして使用してもよい。
【００５１】
ＮＩＣ＿Ｘ３０６は、ネットワーク機器１０が有するものと同様である。すなわち、ネットワーク機器１０はＮＩＣ＿Ｘ３０６を使用してネットワークＣを介してネットワーク機器１０と通信を行う。コントローラ３２０には、操作パネル３０７が接続されている。操作パネル３０７は、各種の操作キー、表示装置としてのＬＣＤ（Liquid crystal display）又はＣＲＴの文字表示器及びタッチパネルを有し、ユーザ９が複合機に各種指示を入力する際に用いられる。
【００５２】
更に、コントローラ３２０には、ＰＣＩバス３３０を介して、ファックス制御ユニット３０８、記憶媒体３０９ａが脱着可能なＵＳＢ３０９、ＩＥＥＥ１３９４（３１０）、プロッタエンジン３１１、スキャナエンジン３１２及びＢＬＥモジュール３１３が接続されている。これにより、複合機では、コピーサービス、プリントサービス、ファクシミリサービス等の各サービスを提供することができる。プロッタエンジン３１１は電子写真方式又はインクジェット方式のいずれの方式を採用していてもよい。
【００５３】
なお、図示する構成は一例に過ぎず、複合機のハードウェア構成は図４の構成には限られない。例えば、ＮＩＣ＿Ｘ３０６はＰＣＩバス３３０に接続されていてもよい。また、ＮＩＣ＿Ｘ３０６は有線でネットワークＮに接続される他、無線ＬＡＮなど無線で接続されていてもよい。ＮＩＣ＿Ｘ３０６が複数あってもよい。
【００５４】
更に、ＮＩＣ＿Ｘ３０６に代えて又はＮＩＣ＿Ｘ３０６と共に、電話回線網に接続するＤＳＵ（Digital Service Unit）又はモデムを有していてもよい。携帯電話網に接続する通信装置を有していてもよい。
【００５５】
＜ネットワーク機器の機能＞
次に、図５を用いてネットワーク機器の機能について説明する。図５は、ネットワーク機器の機能の一部を模式的に説明する図の一例である。ネットワーク機器１０は、ネットワークＡからパケットを受信し、ネットワークＡにパケットを送信する送受信部２１（以下、送受信部Ａという）、ネットワークＢからパケットを受信し、ネットワークＢにパケットを送信する送受信部２２（以下、送受信部Ｂという）、ネットワークＣからパケットを受信し、ネットワークＣにパケットを送信する送受信部２３（以下、送受信部Ｃという）を有する。送受信部Ａ〜Ｃは、ネットワーク機器１０のＣＰＵ５０６がプログラムを実行しＮＩＣ５０７等を制御することで実現される機能又は手段である。
【００５６】
また、ネットワーク機器１０はブリッジ接続部２４、ＮＡＴ接続部２６及び経路制御部２５を有している。ブリッジ接続部２４、ＮＡＴ接続部２６、及び、経路制御部２５は、ネットワーク機器１０のＣＰＵ５０６がプログラムを実行し図３に示した各種ハードウェアを制御することで実現される機能又は手段である。
【００５７】
経路制御部２５は、主に送受信部Ａ又はＢのどちらがパケットを受信したかによって、ブリッジ接続部２４又はＮＡＴ接続部２６にパケットの転送を要求する。また、送受信部Ｃがパケットを受信した場合は宛先のＭＡＣアドレス等によって、ブリッジ接続部２４又はＮＡＴ接続部２６にパケットの転送を要求する。これらの判断を行うため、経路制御部２５は図３のＲＡＭ５０４やＨＤＤ５０８などにより実現される通信経路制御情報記憶部３１の通信経路制御情報を参照する。
【００５８】
【表１】
2017200178.tif 000003
表１は通信経路制御情報の一例を示す。通信経路制御情報は、ネットワークインタフェースＡ〜Ｃごとに、サブネットマスク、ＩＰアドレス、接続先のネットワーク、及び、転送方式が登録されている。「ネットワークインタフェース名」はネットワークインタフェースＡ〜Ｃを識別するための識別情報である。「ＩＰアドレス」はＮＩＣ＿Ａ、ＮＩＣ＿Ｂに割り振られたＩＰアドレスである。上記のようにＮＩＣ＿ＣにはＩＰアドレスは割り当てられない。「接続先のネットワーク」は、ネットワークインタフェースＡ〜Ｃが接続するネットワークの識別情報である。「転送方式」は、ＮＩＣ_Ａ〜ＮＩＣ＿Ｃで受信したパケットをブリッジ接続部２４又はＮＡＴ接続部２６のどちらに転送するかが登録されている。
【００５９】
表１によれば、ＮＩＣ＿Ａが165.96.10.100のＩＰアドレスを持ち、ネットワークＡに接続し、ネットワークＣとはブリッジ方式でパケットを転送することが登録されている。また、ＮＩＣ＿Ｂが192.168.5.100のＩＰアドレスを持ち、ネットワークＢに接続し、ネットワークＣとはＮＡＴ方式でパケットを転送することが登録されている。ＮＩＣ＿ＣはＩＰアドレスを持たず、入出力装置４０に直結し、宛先ＭＡＣアドレスが自機以外（ネットワーク機器１０以外）の場合はネットワークＡとブリッジ接続し、宛先ＭＡＣアドレスが自機（ネットワーク機器）の場合はネットワークＢとＮＡＴ接続することが登録されている。
【００６０】
なお、通信経路制御情報はネットワーク管理者が設定・変更・削除することが可能である。例えば、ＩＰアドレス、サブネットマスク、転送方式などをネットワークＡ〜Ｃの適した値に設定できる。したがって、ユーザのネットワーク運用の変更に柔軟に対応できる。
【００６１】
経路制御部２５は、通信経路制御情報を参照し、以下のように制御する。
・送受信部Ａが受信…ブリッジ接続部２４にパケットを送出する。
・送受信部Ｂが受信…ＮＡＴ接続部２６にパケットを送出する。
・送受信部Ｃが受信…宛先のＭＡＣアドレスがネットワーク機器１０でない場合、ブリッジ接続部２４にパケットを送出する。宛先のＭＡＣアドレスがネットワーク機器１０の場合、ＮＡＴ接続部２６にパケットを送出する。なお、宛先のＩＰアドレスに基づいて送信先のネットワークを判断してもよい。例えば、宛先のＩＰアドレスがネットワークＡのネットワークアドレスの場合、ブリッジ接続部２４にパケットを送出し、宛先のＩＰアドレスがネットワークＢのネットワークアドレスの場合、ＮＡＴ接続部２６にパケットを送出する。しかし、宛先のＭＡＣアドレスで判断することでクライアント端末ＡとＢが同じＩＰアドレスの場合も適切に通信経路を制御しやすくなる。
【００６２】
ブリッジ接続部２４はＯＳＩ（Open Systems Interconnection）のデータリンク層（レイヤ２）で動作するパケット（より正確にはイーサネット（登録商標）フレーム）の中継機能である。ブリッジ接続部２４は、ネットワークＡから送信されたパケットのＭＡＣアドレスをＭＡＣアドレステーブルに記憶しておき、ネットワークＣから送信されたパケットのＭＡＣアドレスをＭＡＣアドレステーブルに記憶しておく。
【００６３】
【表２】
2017200178.tif 000004
表２はＭＡＣアドレステーブルの一例を示す。ネットワークＡのＮＩＣ＿ＡとネットワークＣのＮＩＣ＿Ｃと対応付けて、それぞれに接続されたネットワークＡ，Ｂのクライアント端末Ａ、Ｂが有するＭＡＣアドレスが登録されている。
【００６４】
ブリッジ接続部２４は、ネットワークＡから、ネットワークＣの機器のＭＡＣアドレスを宛先とするパケットが送信された場合、ＭＡＣアドレステーブルを参照してこのＭＡＣアドレスの機器がネットワークＣにあることを検出してネットワークＣにパケットをそのまま送信する。本実施形態ではネットワークＣの機器は入出力装置４０である。逆の場合も同様で、ネットワークＣから、ネットワークＡの機器のＭＡＣアドレスを宛先とするパケットが送信された場合、ＭＡＣアドレステーブルを参照してこのＭＡＣアドレスの機器がネットワークＡにあることを検出してネットワークＡにパケットをそのまま送信する。
【００６５】
ブリッジ機能は１対１の接続において（この場合は、入出力装置４０とクライアント端末Ａ）、ＭＡＣアドレスに基づきデータの送信先を制御する機能であり、１対ｎ又はｎ対ｎでＭＡＣアドレスに基づきデータの送信先を制御するハブやＬ２スイッチと機能は同じである。
【００６６】
ＮＡＴ接続部２６は、ＯＳＩのＩＰ層（レイヤ３）で動作するパケットのＩＰアドレスの相互変換を行う機能である。また、ネットワーク機器１０は、図３のＲＡＭ５０４やＨＤＤ５０８などにより実現されるＮＡＴテーブル記憶部３２を有している。ＮＡＴテーブル記憶部３２にはＮＡＴテーブルが記憶されている。
【００６７】
【表３】
2017200178.tif 000005
表３はＮＡＴテーブルの一例を示す。ＮＡＴテーブルには、変換前のＩＰアドレスと変換後のＩＰアドレスが対応付けられている。変換前のＩＰアドレスはネットワーク機器１０のＩＰアドレス（クライアント端末Ｂはネットワーク機器１０を宛先にするため）であり、変換後のＩＰアドレスは入出力装置４０のＩＰアドレスである。
【００６８】
ＮＡＴ接続部２６は、ネットワークＢのクライアント端末Ｂからネットワーク機器１０を宛先とするＩＰアドレスが送信された場合（送信元のＩＰアドレスはクライアント端末Ｂ）、ＮＡＴテーブルを参照してこのパケットの宛先のＩＰアドレスを入出力装置４０のＩＰアドレスに変換する。このパケットの応答として、入出力装置４０からクライアント端末ＢのＩＰアドレスを宛先とするパケットが送信された場合、ＮＡＴ接続部２６はＮＡＴテーブルを参照して、送信元のＩＰアドレスを入出力装置４０のＩＰアドレスからネットワーク機器１０のＩＰアドレスに変換してネットワークＢに送信する。
【００６９】
なお、本実施例ではＮＡＴ変換を例に説明するが、ＮＡＰＴ（Network Address Port Translation）変換してもよい。すなわち、ＩＰアドレスと共にポート番号を変換してもよい。なお、ＮＡＰＴ変換はＩＰマスカレード又はＮＡＴ＋（プラス）と呼ばれる場合がある。
【００７０】
＜ネットワーク機器の具体的な実装方法について＞
従来のネットワークは、ハブ、スイッチ、ルータ、ファイアウォールなどのそれぞれ決まった機能を有する機器が配置されて構築されていた。ネットワーク構成の変更が必要な場合には、ネットワーク管理者が関連する機器の設定を変更したり、機器の接続自体を変更したりする必要があった。このような従来のネットワークに対し、ソフトウェアによってネットワークの構成や機能を設計する概念（コンセプト）としてＳＤＮ（Software-Defined Network）が知られている。また、ＳＤＮを実現するための具体的な仕組みとしてOpenFlowが知られている。
【００７１】
図６は、OpenFlowを説明する図の一例である。OpenFlowは、主に、経路制御を司るOpenFlowコントローラ６２と、データの転送機能を備えるOpenFlowスイッチ６１と、OpenFlowコントローラ６２とOpenFlowスイッチ６１の通信方法を規定するOpenFlowプロトコル６３とから構成される。OpenFlowコントローラ６２はソフトウェアで実現され、OpenFlowスイッチ６１はソフトウェア又はハードウェアで実現される。
【００７２】
OpenFlowコントローラ６２は処理対象となるパケットの条件とアクションを１つのエントリとして複数のエントリが含まれるルール群を「Flow Table」として定義し、OpenFlowプロトコル６３にしたがってFlow TableをOpenFlowスイッチ６１に書き込む。条件として、ポート番号、ＭＡＣアドレス、ＩＰアドレスなどパケットのさまざまなフィールドが使用される。また、条件に合致した場合、条件に応付けられたアクションとして、所定のポートから出力する、パケットのフィールドを書き換える、パケットを破棄する、などが指定される。
【００７３】
OpenFlowスイッチ６１は、書き込まれたFlow Tableにしたがってパケットを処理するため、Flow Tableが出力するポートを制御する場合は、Ｌ２スイッチとして動作し、ＩＰアドレスでポートを制御したりＩＰアドレスを変換したりする制御を行う場合、ルータのように動作する。また、特定のパケットを破棄することで、ファイアウォールとして動作する。
【００７４】
また、OpenFlowスイッチ６１は、書き込まれたFlow Tableにしたがってパケットを処理するため、OpenFlowコントローラ６２との通信を行うことなくパケットを処理できる。
【００７５】
本実施形態においても、ネットワークＡからのパケット、及び、ネットワークＣからクライアント端末Ａへのパケットに対し、ネットワーク機器がブリッジのように動作することが、OpenFlowコントローラ６２によりFlow Tableとして定義される。OpenFlowスイッチ６１では、ネットワークＡからのパケット、及び、ネットワークＣからクライアント端末Ａへのパケットかどうかという条件を経路制御部２５が判断し、ブリッジ接続部２４がブリッジのように動作するというアクションを実行する。
【００７６】
また、ネットワークＢからのパケット、及び、ネットワークＣからクライアント端末Ｂへのパケットに対し、ネットワーク機器がＮＡＴ接続部２６のように動作することが、OpenFlowコントローラ６２によりFlow Tableとして定義される。OpenFlowスイッチ６１では、ネットワークＢからのパケット、及び、ネットワークＣからクライアント端末Ｂへのパケットがどうかという条件を経路制御部２５が判断し、ＮＡＴ接続部２６がＮＡＴ制御を行うというアクションを実行する。
【００７７】
また、OpenFlowでは、OpenFlowスイッチ６１の制御を動的に変更できる。つまり、条件Ａが成立する状況から条件Ｂが成立する状況が生じても、実行されるアクションが変わるだけで、ネットワーク管理者がネットワーク機器１０を停止したり再起動させたりする必要がない。例えば、ブリッジ接続部２４をＮＡＴ接続部として動作させたり、ブリッジ接続部２４とＮＡＴ接続部２６とを交換したりすることなども可能である。したがって、柔軟にネットワークを構築できる。
【００７８】
＜動作手順例＞
図７は、ネットワークＡのクライアント端末ＡとネットワークＢのクライアント端末Ｂが入出力装置４０との通信を行うシーケンス図の一例である。
（クライアント端末Ａと入出力装置４０の通信）
S1：ネットワークＡのクライアント端末Ａがネットワーク機器１０にパケットを送信する。送信の契機は種々あるが、例えばユーザが印刷ジョブを要求する場合などである。クライアント端末Ａは自分のＩＰアドレスとサブネットマスクの論理積、入出力装置４０のＩＰアドレスとサブネットマスクの論理積が同じなので、入出力装置４０が同じネットワークにあると判断する。したがって、宛先のＭＡＣアドレス及びＩＰアドレスはいずれも入出力装置４０のものでよい。
送信元ＭＡＣアドレス：XX:XX:XX:XX:XX:AA  宛先ＭＡＣアドレス：XX:XX:XX:XX:XX:XX
送信元ＩＰアドレス：165.96.10.01         宛先ＩＰアドレス：165.96.10.11
S2：ネットワーク機器１０の送受信部Ａは通信経路としてパケットを受信する。送受信部Ａはパケットを受信したことを経路制御部２５に通知する。
【００７９】
S3：経路制御部２５は、ＮＩＣ＿Ａで受信したことを検出し通信経路制御情報記憶部３１を参照する。
【００８０】
S4：通信経路制御情報によるとＮＩＣ＿ＡはネットワークＣとブリッジ接続しているので、経路制御部２５はブリッジ接続部２４にパケットを送出すると判断する。
【００８１】
S5：経路制御部２５はブリッジ接続部２４にパケットを送出する。
【００８２】
S6：ブリッジ接続部２４は、ＭＡＣアドレステーブルを参照し、宛先ＭＡＣアドレス：XX:XX:XX:XX:XX:XXはＮＩＣ＿Ｃと対応付けられているのでＮＩＣ＿Ｃを制御する送受信部Ｃにパケットを転送する。宛先ＭＡＣアドレスや宛先ＩＰアドレスを変換することはない。
【００８３】
S7：送受信部Ｃは入出力装置４０にパケットを送信する。入出力装置４０は宛先ＭＡＣアドレスが自分宛なのでパケットを受信する。
送信元ＭＡＣアドレス：XX:XX:XX:XX:XX:AA  宛先ＭＡＣアドレス：XX:XX:XX:XX:XX:XX
送信元ＩＰアドレス：165.96.10.01         宛先ＩＰアドレス：165.96.10.11
S8：入出力装置４０はクライアント端末Ａに応答するため、ネットワークＡのクライアント端末Ａにパケットを送信する。ステップＳ７の送信元ＩＰアドレス：165.96.10.01が宛先となる。この場合も入出力装置４０とクライアント端末Ａは同じネットワークなので、宛先ＭＡＣアドレスと宛先ＩＰアドレスはクライアント端末Ａである。
送信元ＭＡＣアドレス：XX:XX:XX:XX:XX:XX  宛先ＭＡＣアドレス：XX:XX:XX:XX:XX:AA
送信元ＩＰアドレス：165.96.10.11         宛先ＩＰアドレス：165.96.10.01
S9：ネットワーク機器１０の送受信部ＣはＮＩＣ＿Ｃにてパケットを受信する。送受信部Ｃはパケットを受信したことを経路制御部２５に通知する。
【００８４】
S10：経路制御部２５はＮＩＣ＿Ｃで受信したことを検出し通信経路制御情報を参照する。
【００８５】
S11：通信経路制御情報では、ネットワークＡにブリッジ転送するかネットワークＢにＮＡＴ転送するかを判断する。入出力装置４０はネットワーク機器１０に対し単なるインタフェース又は通信経路としてパケットを送信する。このため、宛先ＭＡＣアドレスはXX:XX:XX:XX:XX:AAなので自機以外に送信されたことが分かる。また、宛先ＩＰアドレス：165.96.10.01とサブネットマスクからクライアント端末ＡのネットワークアドレスがネットワークＡと同じであることが分かる。したがって、経路制御部２５はネットワークＡにブリッジ転送すると判断する。
【００８６】
S12：経路制御部２５は、ブリッジ接続部２４にパケットを転送する。
【００８７】
S13：ブリッジ接続部２４は、ＭＡＣアドレステーブルを参照し、宛先ＭＡＣアドレス：XX:XX:XX:XX:XX:AAはＮＩＣ＿Ａと対応付けられているのでＮＩＣ＿Ａを制御する送受信部Ａにパケットを転送する。宛先ＭＡＣアドレスや宛先ＩＰアドレスを変換することはない。
【００８８】
S14：送受信部Ａは、ネットワークＡのクライアント端末Ａにパケットを送信する。クライアント端末Ａは宛先ＭＡＣアドレスが自分宛なのでパケットを受信する。
送信元ＭＡＣアドレス：XX:XX:XX:XX:XX:XX  宛先ＭＡＣアドレス：XX:XX:XX:XX:XX:AA
送信元ＩＰアドレス：165.96.10.11         宛先ＩＰアドレス：165.96.10.01
（クライアント端末Ｂと入出力装置４０の通信）
S21：ネットワークＢのクライアント端末ＢはＮＩＣ＿Ｂを制御する送受信部Ｂにパケットを送信する。送信の契機は種々あるが、例えばユーザが印刷ジョブを要求する場合などである。クライアント端末Ｂからはネットワーク機器１０が入出力装置４０に見えている。クライアント端末Ｂは自分のＩＰアドレスとサブネットマスクの論理積、ネットワーク機器１０のＩＰアドレスとサブネットマスクの論理積が同じなので、ネットワーク機器１０が同じネットワークにあると判断する。したがって、宛先のＭＡＣアドレス及びＩＰアドレスはいずれもネットワーク機器１０のものでよい。
送信元ＭＡＣアドレス：XX:XX:XX:XX:XX:BB  宛先ＭＡＣアドレス：XX:XX:XX:XX:XX:BI
送信元ＩＰアドレス：192.168.5.01         宛先ＩＰアドレス：192.168.5.100
S22：送受信部Ｂはパケットを受信したことを経路制御部２５に通知する。
【００８９】
S23：経路制御部２５はＮＩＣ＿Ｂでパケットを受信したことを検出し通信経路制御情報を参照する。
【００９０】
S24：通信経路制御情報によるとＮＩＣ＿ＢはネットワークＣとＮＡＴ接続されているので、経路制御部２５はＮＡＴ接続部２６にパケットを送出すると判断する。
【００９１】
S25：経路制御部２５はＮＡＴ接続部２６にパケットを送出する。
【００９２】
S26：ＮＡＴ接続部２６はＮＡＴ変換テーブルを参照する。
【００９３】
S27：ＮＡＴ変換テーブルでは、宛先のＩＰアドレスを入出力装置４０のＩＰアドレス（165.96.10.11）に変換することが登録されているので、ＮＡＴ接続部２６はパケットの宛先ＩＰアドレスを入出力装置４０のＩＰアドレスに変換する。また、送信元ＩＰアドレスはクライアント端末Ｂのままでよい。この時点ではＭＡＣアドレスは付与されない。
送信元ＩＰアドレス：192.168.5.01         宛先ＩＰアドレス：165.96.10.11  
S28：ＮＡＴ接続部２６は送受信部Ｃにパケットを転送する。
【００９４】
S29：送受信部Ｃは入出力装置４０にパケットを送信する。入出力装置４０は宛先ＭＡＣアドレスが自分宛なのでパケットを受信する。
送信元ＭＡＣアドレス：XX:XX:XX:XX:XX:BI   宛先ＭＡＣアドレス：XX:XX:XX:XX:XX:XX
送信元ＩＰアドレス：192.168.5.01          宛先ＩＰアドレス：165.96.10.11  
S30：入出力装置４０はクライアント端末Ｂに応答するため、ネットワーク機器にパケットを送信する。宛先ＩＰアドレスはステップＳ２９の送信元ＩＰアドレス：192.168.5.01である。入出力装置４０は自分のＩＰアドレスとサブネットマスクの論理積、クライアント端末ＢのＩＰアドレスとサブネットマスクの論理積が異なるので、クライアント端末Ｂが同じネットワークにないと判断する。したがって、宛先のＭＡＣアドレスはデフォルトゲートウェイとなる。説明の便宜上、デフォルトゲートウェイはネットワーク機器１０のＮＩＣ＿Ｂであるとする。したがって、宛先ＭＡＣアドレスはＮＩＣ＿ＢのＭＡＣアドレスでよい。
送信元ＭＡＣアドレス：XX:XX:XX:XX:XX:XX  宛先ＭＡＣアドレス：XX:XX:XX:XX:XX:BI
送信元ＩＰアドレス：165.96.10.11         宛先ＩＰアドレス：192.168.5.01
S31：ネットワーク機器１０の送受信部Ｃはパケットを受信する。送受信部Ｃはパケットを受信したことを経路制御部２５に通知する。
【００９５】
S32：経路制御部２５はＮＩＣ＿Ｃでパケットを受信したことを検出し、通信経路制御情報を参照する。
【００９６】
S33：通信経路制御情報により、ネットワークＡにブリッジ転送するかネットワークＢにＮＡＴ転送するかを判断する。宛先ＭＡＣアドレスはXX:XX:XX:XX:XX:BIなので自機（ネットワーク機器１０）に送信されたものであること（通信経路の制御対象であること）が分かる。また、宛先ＩＰアドレス：192.168.5.01とサブネットマスクからクライアント端末ＢのネットワークアドレスがネットワークＢと同じであることが分かる。したがって、経路制御部２５はネットワークＢにＮＡＴ転送すると判断する。
【００９７】
S34：経路制御部２５は、ＮＡＴ接続部２６にパケットを転送する。
【００９８】
S35：ＮＡＴ接続部２６はＮＡＴテーブルを参照する。
【００９９】
S36：ＮＡＴテーブルによれば、入出力装置４０のＩＰアドレスとネットワーク機器１０のＩＰアドレスが対応付けられているので、ＮＡＴ接続部２６はパケットの送信元ＩＰアドレスをネットワーク機器１０のＩＰアドレスに変換する。
送信元ＩＰアドレス：192.168.5.100       宛先ＩＰアドレス：192.168.5.01
S37：また、ＮＡＴ接続部２６は宛先ＭＡＣアドレスをクライアント端末ＢのＭＡＣアドレスに変換する。
【０１００】
S38：ＮＡＴ接続部２６はＮＩＣ＿Ｂを制御する送受信部Ｂにパケットを転送する。
【０１０１】
S39：送受信部ＢはパケットをネットワークＢのクライアント端末Ｂに送信する。
送信元ＭＡＣアドレス：XX:XX:XX:XX:XX:BI  宛先ＭＡＣアドレス：XX:XX:XX:XX:XX:BB
送信元ＩＰアドレス：192.168.5.100       宛先ＩＰアドレス：192.168.5.01
以上のようにして、ネットワーク機器はネットワークＡ及びＢからのパケットを入出力装置４０に送信でき、入出力装置４０からのパケットをネットワークＡ及びＢに転送できる。
【０１０２】
＜変形例＞
図７の処理では、入出力装置４０のデフォルトゲートウェイがＮＩＣ＿Ｂであると説明した。このため、入出力装置４０が送信するパケットの宛先ＩＰアドレスがクライアント端末Ｂであっても（通常のＮＡＴではネットワーク機器１０になる）、ネットワーク機器１０にパケットが送信されクライアント端末Ｂに送信される。
【０１０３】
これに対し、図８に示すようにネットワークＡに例えばインターネットｉに繋がるルータ２００がある場合がある。図８は、図２と同様のネットワークシステム１００の構成図の一例である。図８ではネットワークＡにルータ２００が接続されており、ルータ２００の先にインターネットｉが繋がっている。このような構成では、デフォルトゲートウェイがＮＩＣ＿Ｂだと、入出力装置４０がルータ２００を超えてパケットを送信する場合、デフォルトゲートウェイのＮＩＣ＿Ｂに送信されてしまう。ネットワーク機器１０はネットワークＢからＡにパケットを送信しないので（通信経路制御情報にそのような記述がない）、入出力装置４０はルータ２００を超えてパケットを送信できないことになる。
【０１０４】
このような不都合を回避するにはＮＩＣ＿ＡがＩＰアドレス及びＭＡＣアドレスを有することが有効になる。ＮＩＣ＿ＡがＩＰアドレス及びＭＡＣアドレスを有するため、ネットワーク管理者は入出力装置４０のデフォルトゲートウェイをＮＩＣ＿ＡのＩＰアドレスに設定できる。これにより、入出力装置４０がルータを超えてパケットを送信する場合、ネットワーク機器１０はルーティングテーブルによりルータ２００を超えるにはネットワークＡに送信すればよいことが分かるので、ＮＩＣ＿Ａからパケットを送信できる。
【０１０５】
一方、入出力装置４０がネットワークＢのクライアント端末Ｂにパケットを送信する場合、デフォルトゲートウェイ（ＮＩＣ＿Ａ）に送信するのは同じだが、ネットワーク機器１０は図７にて説明したようにＭＡＣアドレスやＩＰアドレスによりネットワークＢに送信すればよいことが分かる。したがって、入出力装置４０はルータ２００の先にもクライアント端末Ｂにもパケットを送信できる。
【０１０６】
図９は、ネットワークＡにデフォルトゲートウェイがある場合に、ネットワークＡのクライアント端末ＡとネットワークＢのクライアント端末Ｂが入出力装置４０との通信を行うシーケンス図の一例である。なお、図９では主に図７との相違を説明する。また、図９では入出力装置４０にデフォルトゲートウェイとしてＮＩＣ＿ＡのＩＰアドレス（165.96.10.200）が設定されている。
【０１０７】
まず、ステップＳ１〜Ｓ２９までの処理は図７と同様でよい。
S30：入出力装置４０はクライアント端末Ｂに応答するため、ネットワーク機器にパケットを送信する。宛先ＩＰアドレスはステップＳ２９の送信元ＩＰアドレス：192.168.5.01である。入出力装置４０は自分のＩＰアドレスとサブネットマスクの論理積、クライアント端末ＢのＩＰアドレスとサブネットマスクの論理積が異なるので、クライアント端末Ｂが同じネットワークにないと判断する。したがって、宛先のＭＡＣアドレスはデフォルトゲートウェイとなる。デフォルトゲートウェイはネットワーク機器のＮＩＣ＿Ａなので、宛先ＭＡＣアドレスはＮＩＣ＿ＡのＭＡＣアドレスとなる。
送信元ＭＡＣアドレス：XX:XX:XX:XX:XX:XX  宛先ＭＡＣアドレス：XX:XX:XX:XX:XX:AI
送信元ＩＰアドレス：165.96.10.11         宛先ＩＰアドレス：192.168.5.01
S31：ネットワーク機器１０の送受信部Ｃはパケットを受信する。送受信部Ｃはパケットを受信したことを経路制御部２５に通知する。
【０１０８】
S32：経路制御部２５はＮＩＣ＿Ｃでパケットを受信したことを検出し、通信経路制御情報を参照する。
【０１０９】
S33：通信経路制御情報では、ネットワークＡにブリッジ転送するかネットワークＢにＮＡＴ転送すると登録されている。宛先ＭＡＣアドレスはXX:XX:XX:XX:XX:AIなのでネットワーク機器１０に送信されたものであること（通信経路の制御対象であること）が分かる。また、宛先ＩＰアドレス：192.168.5.01とサブネットマスクからクライアント端末ＢのネットワークアドレスがネットワークＢと同じであることが分かる。したがって、経路制御部２５はネットワークＢにＮＡＴ転送すると判断する。
【０１１０】
S34：経路制御部２５は、ＮＡＴ接続部２６にパケットを転送する。
【０１１１】
S35：ＮＡＴ接続部２６はＮＡＴテーブルを参照する。
【０１１２】
S36：ＮＡＴテーブルによれば、入出力装置４０のＩＰアドレスとネットワーク機器１０のＩＰアドレスが対応付けられているので、ＮＡＴ接続部２６はパケットの送信元ＩＰアドレスをネットワーク機器１０のＩＰアドレスに変換する。
送信元ＩＰアドレス：192.168.5.100       宛先ＩＰアドレス：192.168.5.01
S37：また、ＮＡＴ接続部２６は宛先ＭＡＣアドレスをクライアント端末ＢのＭＡＣアドレスに変換する。
【０１１３】
S38：ＮＡＴ接続部２６はＮＩＣ＿Ｂを制御する送受信部Ｂにパケットを転送する。
【０１１４】
S39：送受信部ＢはパケットをネットワークＢのクライアント端末Ｂに送信する。
送信元ＭＡＣアドレス：XX:XX:XX:XX:XX:BI  宛先ＭＡＣアドレス：XX:XX:XX:XX:XX:BB
送信元ＩＰアドレス：192.168.5.100       宛先ＩＰアドレス：192.168.5.01
このように、ＮＩＣ＿ＡがＩＰアドレスとＭＡＣアドレスを有し、ＮＩＣ＿Ａをデフォルトゲートウェイとすることで、入出力装置４０はルータの先にもクライアント端末Ｂにもパケットを送信できる。
【０１１５】
＜比較例＞
図１０は、ネットワーク機器１０が通信経路を制御する場合の比較例となるネットワークシステムの構成図を示す。図１０では、クライアント端末Ａと入出力装置４０がネットワークＡを介して接続されており、クライアント端末Ｂとプリントサーバ７０がネットワークＢを介して接続されている。また、入出力装置４０とプリントサーバ７０はネットワークではなく１対１での通信が可能な例えばＵＳＢケーブル７１などで接続されている。
【０１１６】
プリントサーバ７０とは、自身に接続されたプリンタをネットワーク上の他のコンピュータと共有するためのコンピュータである。当初、プリントサーバ７０は、ＮＩＣを装備していないプリンタを複数のコンピュータで共有するために利用されたが、プリンタがＮＩＣを装備するようになっても多く利用されている。これは、プリントサーバ７０はコンピュータから送信されたジョブをスプールして順次プリンタにジョブを実行要求するため、各コンピュータにかかる負担を軽減することができるためである。
【０１１７】
図１０の構成で、仮にクライアント端末Ａもプリントサーバ７０に接続された場合、従来と同様の構成となる。すなわち、クライアント端末ＡとＢが同じネットワークに属する状況となり、情報漏えいのおそれが生じる。
【０１１８】
これに対し、図１０の構成では、入出力装置４０とプリントサーバ７０がＵＳＢケーブル７１で接続されていてもイーサネットフレームやパケットが送受信されるネットワークでないので、クライアント端末Ａからクライアント端末Ｂに又はこの逆に情報が漏洩するおそれはほとんどない。また、クライアント端末ＡとＢが入出力装置４０を共有できる。
【０１１９】
しかしながら、ネットワークＢ側の例えば管理者端末から入出力装置４０のＭＩＢ（Management Information Base）を取得することが困難である（より正確にはＵＳＢ上でパケットをカプセル化すれば取得できる）。ＭＩＢはＳＮＭＰ（Simple Network Management Protocol）で取得されるがＳＮＭＰはＴＣＰ／ＩＰネットワーク上のプロトコルのためである。また、入出力装置４０の設定をネットワーク越しの管理者端末等から参照したり変更したりすることができるが、ネットワークＢ側の例えば管理者端末から入出力装置４０の設定にアクセスできない。
【０１２０】
これに対し、本実施形態ではネットワーク機器１０が通信経路を制御することで、クライアント端末Ａと入出力装置４０はネットワークＡを介して接続されており、クライアント端末Ｂと入出力装置４０はネットワークＢとＡを介して接続されている。したがって、クライアント端末Ａ，ＢのいずれもＭＩＢを取得できるし、入出力装置４０の設定にアクセスできる。
【０１２１】
また、ネットワーク機器１０でなくルータでネットワークＡ〜Ｃが接続されると、少なくとも同じＩＰアドレスがあると相互に情報漏えいするおそれがある。また、同じＩＰアドレスがないとしても、デフォルトゲートウェイの存在などによっては相互に情報が送受信されるおそれがある。
【実施例２】
【０１２２】
本実施例では、ネットワークが３つに分割されている場合を説明する。すなわち、入出力装置４０もクライアント端末Ａとは異なるネットワークＣに所属する場合である。
【０１２３】
図１１は、本実施形態のネットワーク機器１０の概略的な動作を説明する図の一例である。図１１ではネットワークＡにクライアント端末Ａが接続され、ネットワークＢにクライアント端末Ｂが接続され、ネットワークＣに入出力装置４０が接続されている。ネットワークＡとＣのネットワークアドレスは異なっている。このような構成でも実施例１とほぼ同様の通信経路の制御が可能である。
【０１２４】
(i) 本実施例のクライアント端末Ａは実施例１のクライアント端末Ｂと同様に動作する。クライアント端末Ａが送信するパケットはネットワーク機器１０のＩＰアドレスを宛先としていわゆるルータ越えを行い入出力装置４０に送信される。ルータ越えにより入出力装置４０に到達するパケットの宛先ＩＰアドレスはネットワーク機器１０のＩＰアドレスに変換される。
【０１２５】
(ii) 入出力装置４０がクライアント端末Ａに応答する場合、クライアント端末Ａと入出力装置４０のネットワークアドレスが一致しないので、入出力装置４０はデフォルトゲートウェイであるネットワーク機器１０を宛先にしてパケットを送信する。すなわち、宛先は、ＭＡＣアドレス：ネットワーク機器１０、ＩＰアドレス：クライアント端末Ａである。ネットワーク機器１０はＩＰアドレスがネットワークＡに含まれるので、ＮＡＴテーブルを参照し宛先のＩＰアドレスをクライアント端末ＡのＩＰアドレスに書き換える。すなわち、宛先は、ＭＡＣアドレス：クライアント端末Ａ、ＩＰアドレス：クライアント端末Ａである。
【０１２６】
(iii) クライアント端末Ｂが入出力装置４０に送信するパケットに関する処理及び入出力装置４０がクライアント端末Ｂに送信するパケットに関する処理は、実施例１と同様である。
【０１２７】
したがって、実施例１と同様に、ネットワークＡのクライアント端末Ａと、ネットワークＡと異なるネットワークであるネットワークＢのクライアント端末Ｂが共通の入出力装置４０を使用できる。また、ネットワークＡからネットワークＢ、ネットワークＢからネットワークＡへパケットが漏洩するおそれはない。
【０１２８】
また、クライアント端末ＡとＢが同じＩＰアドレスである可能性を考慮すると、ポート番号を利用することが有効になる。クライアント端末Ａ、Ｂからのパケットに対し入出力装置４０が応答する場合、クライアント端末Ａ、Ｂどちらの場合も宛先のＩＰアドレスはクライアント端末Ａ,ＢのＩＰアドレスである。クライアント端末Ａ、ＢのＩＰアドレスが同じでは通信制御が困難になる。そこで、変換前と後のＩＰアドレスとポート番号がネットワーク機器１０に登録されていれば、ポート番号に基づいて通信制御が可能になる。
【０１２９】
本実施例では、クライアント端末Ａからネットワーク機器１０へのパケットの送信時、後述するＮＡＰＴ機能により宛先のポート番号をネットワーク機器１０のポート番号から入出力装置４０のポート番号に変換する。入出力装置４０は、変換されたポート番号を送信元のポート番号に設定するので、ネットワーク機器１０はポート番号に基づきクライアント端末Ａ又はＢのどちらのパケットに対する応答かを判断できる。したがって、クライアント端末Ａとクライアント端末ＢのＩＰアドレスが同じでも、ネットワーク機器１０はクライアント端末Ａ、Ｂからのパケットの通信経路を制御できる。
【０１３０】
なお、実施例１と同様にネットワークＡ及びＢにはネットワーク機器１０´及び１０´が接続されている。ネットワーク機器１０´には入出力装置４０´が接続されており、ネットワーク機器１０´´には入出力装置４０´´が接続されている。作図の関係でネットワーク機器１０´がネットワーク機器１０と接続されているが実際には通信しない。同様に、ネットワーク機器１０´´もネットワーク機器１０´又はネットワーク機器１０とは通信しない。
【０１３１】
入出力装置４０、４０´、及び４０´´はネットワークＣに所属している。したがって、実施例１と同様にクライアント端末Ａ、Ｂは入出力装置４０、４０´、及び４０´´を利用できる。なお、入出力装置４０はネットワークＣ、入出力装置４０´はネットワークＤ、入出力装置４０´´はネットワークＥのように、入出力装置４０、４０´、及び４０´´が異なるネットワークに所属していてもよい。
【０１３２】
＜システム構成＞
本実施例において、実施例１の説明において同一の符号を付した構成要素は同様の機能を果たすので、主に本実施例の主要な構成要素についてのみ説明する場合がある。例えば、本実施例においても、実施例１の図３に示したネットワーク機器１０のハードウェア構成図、及び、図４の入出力装置４０のハードウェア構成図を使用して説明する。また、同一の符号を付した構成要素については、同様の機能を果たすので、一度説明した構成要素の説明を省略あるいは相違点についてのみ説明する場合がある。
【０１３３】
図１２は、ネットワーク機器１０により通信の経路が制御されるネットワークシステムの構成図の一例である。図１２では、入出力装置４０がネットワークＣに所属するため、ＮＩＣ＿ＣがＩＰアドレスを有している。また、入出力装置４０のＮＩＣ＿ＣのＩＰアドレスは165.96.20.100、ネットワークＣのサブネットマスクは165.96.20.0/24である。また、入出力装置４０のＩＰアドレスは165.96.20.01である。
【０１３４】
ネットワーク機器１０´のＮＩＣ＿ＣのＩＰアドレスは165.96.20.101、ネットワークＣのサブネットマスクは165.96.20.0/24である。また、入出力装置４０´のＩＰアドレスは165.96.20.02である。ネットワーク機器１０´´のＮＩＣ＿ＣのＩＰアドレスは165.96.20.102、ネットワークＣのサブネットマスクは165.96.20.0/24である。また、入出力装置４０´´のＩＰアドレスは165.96.20.03である。その他の構成は実施例１の図２と同様でよい。
【０１３５】
なお、本実施例では、クライアント端末Ａ、Ｂからネットワーク機器１０が入出力装置４０、４０´、４０´´として見える。
【０１３６】
＜機能について＞
図１３は、入出力装置４０の機能の一部を模式的に説明する図の一例である。実施例１の図５と比較すると、ネットワーク機器１０がブリッジ接続部２４の代わりにＮＡＰＴ接続部２７（以下、ＮＡＰＴ接続部Ａという）を有し、ＮＡＴ接続部２６の代わりにＮＡＰＴ接続部２８（以下、ＮＡＰＴ接続部Ｂという）を有する。
【０１３７】
また、本実施例の経路制御部２５は、主に送受信部Ａ又はＢのどちらがパケットを受信したかによって、ＮＡＰＴ接続部Ａ又はＮＡＰＴ接続部Ｂにパケットの転送を要求する。また、送受信部Ｃがパケットを受信した場合は、宛先又は送信元のポート番号の少なくとも一方に基づいてＮＡＰＴ接続部Ａ又はＮＡＰＴ接続部Ｂにパケットの転送を要求する。実施例１と同様に経路制御部２５は図３のＲＡＭ５０４やＨＤＤ５０８などにより実現される通信経路制御情報記憶部３１の通信経路制御情報を参照する。
【０１３８】
【表４】
2017200178.tif 000006
表４は本実施例の通信経路制御情報の一例を示す。表４の通信経路制御情報は、ネットワークインタフェースＣがＩＰアドレスを有し、ネットワークインタフェースＡ〜Ｃの転送方式が表１と異なっている。すなわち、ネットワークインタフェースＡ、Ｂの転送方式はどちらもネットワークＣとＮＡＰＴである。また、ネットワークインタフェースＣの転送方式は、宛先のポート番号がＡＡＡＡの場合は「ネットワークＡとＮＡＰＴ」であり、宛先のポート番号がＢＢＢＢの場合は「ネットワークＢとＮＡＰＴ」である。
【０１３９】
経路制御部２５は、通信経路制御情報を参照し、以下のように制御する。
・送受信部Ａが受信…ＮＡＰＴ接続部Ａにパケットを送出する。
・送受信部Ｂが受信…ＮＡＰＴ接続部Ｂにパケットを送出する。
・送受信部Ｃが受信…宛先のポート番号がＡＡＡＡ（又は送信元のポート番号がＸＸＡＡ）である場合、ＮＡＰＴ接続部Ａにパケットを送出する。宛先のポート番号がＢＢＢＢ（又は送信元のポート番号がＸＸＢＢ）である場合、ＮＡＰＴ接続部Ｂにパケットを送出する。
【０１４０】
ＮＡＰＴ接続部Ａ、Ｂは、ＯＳＩのＩＰ層（レイヤ３）で動作するパケットのＩＰアドレスとポート番号の相互変換を行う機能である。このため、ネットワーク機器１０は、図３のＲＡＭ５０４やＨＤＤ５０８などにより実現されるＮＡＰＴテーブル記憶部３３（以下、ＮＡＰＴテーブル記憶部Ａという），ＮＡＰＴテーブル記憶部３４（以下、ＮＡＰＴテーブル記憶部Ｂという）を有している。ＮＡＰＴテーブル記憶部ＡはＮＡＰＴ接続部Ａにより参照され、ＮＡＰＴテーブル記憶部ＢはＮＡＰＴ接続部Ｂにより参照される。
【０１４１】
【表５】
2017200178.tif 000007
表５（ａ）はＮＡＰＴテーブル記憶部Ａに記憶されているＮＡＰＴテーブルＡの一例を示す。ＩＰアドレスの変換は実施例１のＮＡＴテーブルと同様である。変換前のポート番号はネットワーク機器１０がパケットの宛先に設定するポート番号（ＣＣＡＡ）であり、変換後のポート番号は、入出力装置４０にパケットを送信する際の宛先のポート番号（ＸＸＡＡ）である。
【０１４２】
表５（ｂ）はＮＡＰＴテーブル記憶部Ｂに記憶されているＮＡＰＴテーブルＢの一例を示す。表５（ｂ）では、表５（ａ）のクライアント端末Ａがクライアント端末Ｂに変わっただけで同様の構造である。
【０１４３】
ＮＡＰＴ接続部Ａは、ネットワークＡのクライアント端末Ａからネットワーク機器１０のＮＩＣ＿ＡのＩＰアドレス（165.96.10.200）とポート番号（ＣＣＡＡ）を宛先とするパケットが送信された場合、ＮＡＰＴテーブルＡを参照して宛先のＩＰアドレスを入出力装置４０のＩＰアドレス（165.96.20.01）に変換する。また、パケットの宛先のポート番号（ＣＣＡＡ）を、入出力装置４０のポート番号であるポート番号（ＸＸＡＡ）に変換する。
【０１４４】
ネットワークＣの入出力装置４０はクライアント端末ＡのＩＰアドレス（165.96.10.01）とポート番号（ＡＡＡＡ）を宛先にして、入出力装置４０のＩＰアドレス（165.96.20.01）とポート番号（ＸＸＡＡ）を送信元とするパケットを送信する（応答する）。ＮＡＰＴ接続部Ａは、送信元のＩＰアドレス（165.96.20.01）をネットワーク機器１０のＮＩＣ＿ＡのＩＰアドレス（192.168.10.200）に変換し、送信元のポート番号をネットワーク機器１０のＮＩＣ＿Ａのポート番号（ＣＣＡＡ）に変換する。ＮＡＰＴ接続部Ｂは、ＮＡＰＴテーブルＢを参照して処理するが、処理の手順はＮＡＰＴ接続部Ａと同様である。
【０１４５】
＜動作手順＞
図１４は、ネットワークＡのクライアント端末Ａが入出力装置４０との通信を行うシーケンス図の一例である。なお、本実施例ではクライアント端末Ｂが入出力装置４０との通信を行う処理はクライアント端末Ａと同様でよいため図１４には示されていない。また、全体的な手順は図７のクライアント端末Ｂの通信と同様であるため、主に相違点を説明する。
【０１４６】
S7：図７のステップＳ２７に相当する。ＮＡＰＴ変換テーブルでは、宛先のＩＰアドレスを入出力装置４０のＩＰアドレス（165.96.20.11）に変換することが登録されているので、ＮＡＰＴ接続部Ａはパケットの宛先ＩＰアドレスを入出力装置４０のＩＰアドレスに変換する。また、ＮＡＰＴ接続部Ａは宛先のポート番号（ＣＣＡＡ）を入出力装置４０のポート番号（ＸＸＡＡ）に変換する。送信元ＩＰアドレスと送信元ポート番号はクライアント端末Ａのままでよい。
送信元ＩＰアドレス：165.96.10.01         宛先ＩＰアドレス：165.96.20.01
送信元ポート番号：ＡＡＡＡ               宛先ポート番号：ＸＸＡＡ
S8：図７のステップＳ２８に相当する。ＮＡＰＴ接続部Ａは送受信部Ｃにパケットを転送する。
【０１４７】
S9：図７のステップＳ２９に相当する。送受信部Ｃは入出力装置４０にパケットを送信する。入出力装置４０は宛先ＭＡＣアドレスが自分宛なのでパケットを受信する。
送信元ＭＡＣアドレス：XX:XX:XX:XX:XX:BI   宛先ＭＡＣアドレス：XX:XX:XX:XX:XX:XX
送信元ＩＰアドレス：165.96.10.01         宛先ＩＰアドレス：165.96.20.01  
送信元ポート番号：ＡＡＡＡ               宛先ポート番号：ＸＸＡＡ
S10：ステップＳ３０に相当。入出力装置４０はクライアント端末Ａに応答するため、ネットワーク機器にパケットを送信する。宛先ＩＰアドレスはステップＳ９の送信元ＩＰアドレス：165.96.10.01である。入出力装置４０は自分のＩＰアドレスとサブネットマスクの論理積、クライアント端末ＡのＩＰアドレスとサブネットマスクの論理積が異なるので、クライアント端末Ａが同じネットワークにないと判断する。したがって、宛先のＭＡＣアドレスはデフォルトゲートウェイとなる。説明の便宜上、デフォルトゲートウェイはネットワーク機器のＮＩＣ＿Ｃであるとする。したがって、宛先ＭＡＣアドレスはＮＩＣ＿ＣのＭＡＣアドレスでよい。また、宛先ポート番号はクライアント端末Ａのポート番号：ＡＡＡＡである。
送信元ＭＡＣアドレス：XX:XX:XX:XX:XX:XX  宛先ＭＡＣアドレス：XX:XX:XX:XX:XX:CI
送信元ＩＰアドレス：165.96.20.01         宛先ＩＰアドレス：165.96.10.01
送信元ポート番号：ＸＸＡＡ               宛先ポート番号：ＡＡＡＡ
S11：ステップＳ３１に相当。ネットワーク機器１０の送受信部Ｃはパケットを受信する。送受信部Ｃはパケットを受信したことを経路制御部２５に通知する。
【０１４８】
S12：ステップＳ３２に相当。経路制御部２５はＮＩＣ＿Ｃでパケットを受信したことを検出し、通信経路制御情報を参照する。
【０１４９】
S13：ステップＳ３２に相当。通信経路制御情報では、宛先のポート番号に応じてネットワークＡにブリッジ転送するかネットワークＢにＮＡＴ転送するかが登録されている。宛先のポート番号がＡＡＡＡ又は送信元のポート番号がＸＸＡＡの場合、ネットワークＡとＮＡＰＴ接続するので、経路制御部２５はネットワークＡにＮＡＰＴ転送すると判断する。
【０１５０】
S14：ステップＳ３４に相当。経路制御部２５は、ＮＡＰＴ接続部Ａにパケットを転送する。
【０１５１】
S15：ステップＳ３５に相当。ＮＡＰＴ接続部ＡはＮＡＴテーブルＡを参照する。
【０１５２】
S16：ステップＳ３６に相当。ＮＡＰＴテーブルＡによれば、入出力装置４０のＩＰアドレスとネットワーク機器１０のＩＰアドレスが対応付けられているので、ＮＡＰＴ接続部Ａはパケットの送信元ＩＰアドレスをネットワーク機器１０のＩＰアドレスに変換する。また、ＮＡＰＴテーブルＡによればネットワーク機器１０のポート番号ＣＣＡＡと入出力装置４０のポート番号ＸＸＡＡが対応付けられているので、ＮＡＰＴ接続部Ａはパケットの送信元ポート番号をネットワーク機器１０のＣＣＡＡに変換する。
送信元ＩＰアドレス：165.96.10.200       宛先ＩＰアドレス：165.96.10.01
送信元ポート番号：ＣＣＡＡ              宛先ポート番号：ＡＡＡＡ
S17：ステップＳ３７に相当。また、ＮＡＰＴ接続部Ａは宛先ＭＡＣアドレスをクライアント端末ＡのＭＡＣアドレスに変換する。
【０１５３】
S18：ステップＳ３８に相当。ＮＡＰＴ接続部ＡはＮＩＣ＿Ａを制御する送受信部Ａにパケットを転送する。
【０１５４】
S19：ステップＳ３９に相当。送受信部ＡはパケットをネットワークＡのクライアント端末Ａに送信する。
送信元ＭＡＣアドレス：XX:XX:XX:XX:XX:AI 宛先ＭＡＣアドレス：XX:XX:XX:XX:XX:AA
送信元ＩＰアドレス：165.96.10.200       宛先ＩＰアドレス：165.96.10.01
送信元ポート番号：ＣＣＡＡ              宛先ポート番号：ＡＡＡＡ
以上のようにして、ネットワーク機器はネットワークＡ及びＢからのパケットを入出力装置４０に送信でき、入出力装置４０からのパケットをネットワークＡ及びＢに転送できる。
【０１５５】
図１４はネットワークＡにデフォルトゲートウェイがない場合のシーケンス図であるが、ネットワークＡにデフォルトゲートウェイがある場合も図１４と同様でよい。本実施例ではＮＩＣ＿Ｃがデフォルトゲートウェイなので、ネットワークＡにデフォルトゲートウェイがある場合ＮＩＣ＿ＣからネットワークＡにパケットを送信できるためである。
【０１５６】
＜その他の適用例＞
<<ハードウェアスイッチとしてのネットワーク機器１０>>
本実施例で説明した図３のネットワーク機器１０はOpenFlowスイッチ６１をソフトウェアで実現する場合のハードウェア構造であるが、ネットワーク機器１０をハード的なOpenFlowスイッチ６１として実現してもよい。
【０１５７】
図１５はネットワーク機器１０の構造を説明する図の一例である。図１５（ａ）は比較のために示したＬ３スイッチのハードウェア構造であり、図１５（ｂ）はネットワーク機器１０のハードウェア構造である。図１５（ａ）に示すように、Ｌ３スイッチはコントロールプレーン７３、データプレーン７４及びバックプレーン７５を有する。コントロールプレーン７３は、転送処理を行うために必要な情報を管理しネットワーク機器１０の全体を制御する。データプレーン７４は、レイヤ２とレイヤ３の転送処理を担当し、各通信プロトコルに対応してヘッダ情報などから適切な物理ポートを決定する。バックプレーン７５は、スイッチの内部でパケットを高速に運ぶための仕組みを提供する。
【０１５８】
OpenFlowでは、コントロールプレーンがOpenFlowコントローラ６２に相当し、データプレーン７４とバックプレーン７５がOpenFlowスイッチ６１に相当する。
【０１５９】
図１５（ｂ）に示すようにデータプレーン７４は主にＡＳＩＣ７４ａ及びＴＣＡＭ７４ｂ（Ternary Content Addressable Memory）を有する。ＴＣＡＭ７４ｂは連想記憶メモリなどと呼ばれ、高速な検索が可能な記憶素子である。ＴＣＡＭ７４ｂにはOpenFlowの条件が記述されており、ＡＳＩＣ７４ａは条件に合致するアクション（転送）を行う。いずれもハードウェアであるため高速な処理が可能である。
【０１６０】
バックプレーンは主に例えばクロスバースイッチ７５Ａと複数のＮＩＣ５０７を有する。クロスバースイッチ７５Ａは複数のバスが網目状に構築されたバスであり、編目の交点が機械的なスイッチにより断接されることで１つのパスを形成する。パスの本数と同じ数のデータを同時に送受信できるため、高速な転送が可能である。なお、バックプレーン７５の方式はバス方式や共有メモリ方式などでもよい。
【０１６１】
このように本実施形態のネットワーク機器１０はハードウェアスイッチとしても実現可能である。
【０１６２】
<<入出力装置４０にネットワーク機器１０が組み込まれる場合>>
本実施形態では、入出力装置４０とネットワーク機器１０とを別体の装置として説明したが、入出力装置４０とネットワーク機器１０は一体でもよい。
【０１６３】
図１６は、ネットワーク機器１０を有する入出力装置４０を示す。入出力装置４０が有するネットワーク機器１０はＮＩＣ＿ＡとＮＩＣ＿Ｂのインタフェースを外部に開放し、ネットワークＡ及びネットワークＢと接続されている。また。ＮＩＣ＿Ｃはネットワーク機器１０が本来有するＮＩＣ＿Ｘと接続される。したがって、入出力装置４０がネットワーク機器１０を有していても、ネットワーク機器１０は本実施形態と同様の処理が可能である。
【０１６４】
<<ＮＡＰＴテーブルの有効期限>>
ＮＡＰＴテーブルには有効期限が設定可能でもよい。
【０１６５】
【表６】
2017200178.tif 000008
表６は実施例２のＮＡＰＴテーブルに対し有効期限が設定されたＮＡＰＴテーブルを示す。有効期限が適切に設定されていれば、古いエントリ（ＮＡＰＴテーブルの一行分）が消去される（又は有効でなくなる）ので、ネットワーク機器１０に接続するクライアント端末の数が増加しエントリ最大数を超えた際でも通信できるようになる。
【０１６６】
また、有効期限が設定されていない場合、ネットワーク機器１０はＮＡＰＴテーブルのエントリが最大数を超えた際に過去のエントリから削除してもよい。接続するクライアント端末が増加しエントリ最大数を超えた際でも通信できるようになる。
【０１６７】
<<その他>>
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【０１６８】
例えば、実施例１では通常のＮＡＴと逆向きのＮＡＴ変換が行われたが、通常のＮＡＴ変換と同じ変換が行われてもよい。実施例２では通常のＮＡＰＴと逆向きのＮＡＰＴ変換が行われたが、通常のＮＡＰＴ変換と同じ変換が行われてもよい。
【０１６９】
例えば、図５，１３などの構成例は、ネットワーク機器１０による処理の理解を容易にするために、主な機能に応じて分割したものである。処理単位の分割の仕方や名称によって本願発明が制限されることはない。ネットワーク機器１０の処理は、処理内容に応じて更に多くの処理単位に分割することもできる。また、１つの処理単位が更に多くの処理を含むように分割することもできる。
【０１７０】
なお、送受信部Ｃは第一の通信手段の一例であり、送受信部Ａは第二の通信手段の一例であり、送受信部Ｂは第三の通信手段の一例であり、経路制御部２５は送信先判断手段の一例であり、ネットワークＣは第一のネットワークの一例であり、ネットワークＡは第二のネットワークの一例であり、ネットワークＢは第三のネットワークの一例であり、ＮＩＣ＿Ｃは第一のネットワークインタフェースの一例であり、ＮＩＣ＿Ａは第二のネットワークインタフェースの一例であり、ＮＩＣ＿Ｂは第三のネットワークインタフェースの一例であり、ブリッジ接続部２４はブリッジ接続手段の一例であり、ＮＡＴ接続部２６はＮＡＴ変換手段の一例である。第一のＮＡＰＴ変換手段はＮＡＰＴ接続部２７の一例であり、第二のＮＡＰＴ変換手段はＮＡＰＴ接続部２８の一例である。クライアント端末Ａは第一の機器の一例であり、クライアント端末Ｂは第二の機器の一例である。ＴＣＡＭ７４ｂは記憶手段の一例であり、ＡＳＩＣ７４ａは制御手段の一例である。
【符号の説明】
【０１７１】
１０        ネットワーク機器
２１〜２３  送受信部
２４        ブリッジ接続部
２５        経路制御部
２６        ＮＡＴ接続部
２７、２８  ＮＡＰＴ接続部
３０        クライアント端末
３１        通信経路制御情報記憶部
３２        ＮＡＴテーブル記憶部
３３、３４  ＮＡＰＴテーブル記憶部
４０        ：入出力装置
【先行技術文献】
【特許文献】
【０１７２】
【特許文献１】特開２００５‐２２９３３２号公報
【図１】
2017200178.tif 000009
【図２】
2017200178.tif 000010
【図３】
2017200178.tif 000011
【図４】
2017200178.tif 000012
【図５】
2017200178.tif 000013
【図６】
2017200178.tif 000014
【図７】
2017200178.tif 000015
【図８】
2017200178.tif 000016
【図９】
2017200178.tif 000017
【図１０】
2017200178.tif 000018
【図１１】
2017200178.tif 000019
【図１２】
2017200178.tif 000020
【図１３】
2017200178.tif 000021
【図１４】
2017200178.tif 000022
【図１５】
2017200178.tif 000023
【図１６】
2017200178.tif 000024