(57)【要約】【課題】  ネットワーク端末とネットワーク機器とを中継し、ネットワーク機器に新たな機能を付加する機能付加装置を提供する。【解決手段】  機能付加装置１００は、第１及び第２のネットワークインタフェース２０６及び２０８と、ネットワークインタフェース２０６及び２０８を用い、双方のネットワーク上の端末の間でパケットの送信元端末及び送信先端末のアドレス情報を変更せずにパケットを中継するパケット中継処理部と、パケット中継処理部により中継されるパケットのうち、第１のネットワーク上の機器あてで、かつＨＴＴＰＳのパケットを、ＨＴＴＰパケットに変換し、第１のネットワーク上の機器からのＨＴＴＰパケットはＨＴＴＰＳパケットの送信元へのＨＴＴＰＳパケットに変換するＨＴＴＰ／ＨＴＴＰＳデコード処理部２５２及びＨＴＴＰＳ／ＨＴＴＰエンコード処理部２５８とを含む。【選択図】        図３
2009038731.tif 000002
【特許請求の範囲】
【請求項１】
第１のネットワーク上の端末との間でパケットを送受信するための第１のパケット送受信手段と、
第２のネットワーク上の端末との間でパケットを送受信するための第２のパケット送受信手段と、
前記第１のパケット送受信手段及び前記第２のパケット送受信手段を用い、前記第１のネットワーク上の端末と、前記第２のネットワーク上の端末との間で、各パケットの送信元端末のアドレス情報及び送信先端末のアドレス情報を変更せずにパケットを中継するためのパケット中継手段と、
前記パケット中継手段が受信したパケットのうち、特定の条件を充足するものに対し、予め定める処理を行なうための第１のパケット処理手段とを含み、
それによって、前記第１のネットワーク上の端末に、前記予め定める処理による機能を付加する、機能付加装置。
【請求項２】
前記第１のパケット処理手段は、
前記第１のパケット送受信手段が前記第１のネットワーク上の端末から受信したパケットから送信元端末のアドレス情報を抽出し記憶するためのアドレス記憶手段と、
前記パケット中継手段により前記第２のネットワークから前記第１のネットワークに中継されるパケットのうち、前記アドレス記憶手段に記憶されたアドレス情報を送信先端末のアドレス情報として持つパケットに対して、前記予め定める処理を行なうための第２のパケット処理手段とを含む、請求項１に記載の機能付加装置。
【請求項３】
前記第２のパケット処理手段は、前記パケット中継手段が前記第２のパケット送受信手段から受信した、前記第２のネットワーク上の端末からのパケットのうち、前記アドレス記憶手段に記憶されたアドレス情報を送信先端末のアドレス情報として持ち、かつ特定の第１のプロトコルによる通信のためのパケットに対し、当該パケットを特定の第２のプロトコルによる通信のためのパケットに変換するための第１のプロトコル変換手段を含む、請求項２に記載の機能付加装置。
【請求項４】
前記第２のパケット処理手段はさらに、
前記パケット中継手段が前記第２のパケット送受信手段から受信した、前記第２のネットワーク上の端末からのパケットから、当該パケットの送信元端末及び送信元アプリケーションを特定するための送信元特定情報を抽出し記憶するための送信元特定情報記憶手段と、
前記パケット中継手段が前記第１のパケット送受信手段から受信した、前記第１のネットワーク上の端末からの、前記第２のプロトコルによる通信のためのパケットの送信先端末及び送信先アプリケーションが、前記送信元特定情報記憶手段に記憶された前記送信元特定情報と一致するときに、当該パケットを前記第１のプロトコルを用いた通信のためのパケットに変換するための第２のプロトコル変換手段とを含む、請求項３に記載の機能付加装置。
【請求項５】
前記第１のプロトコルは、アドレス情報から作成される電子的な自己署名証明書を用いて暗号化されたパケットで通信を行なうためのプロトコルであり、前記第２のプロトコルは暗号化されないパケットで通信を行なうためのプロトコルであり、
前記機能付加装置はさらに、受信したパケットの送信元アドレス情報を用いて前記電子的な自己署名証明書を作成し、記憶するための証明書記憶手段を含み、
前記第２のプロトコル変換手段は、前記パケット中継手段が前記第１のパケット送受信手段から受信した、前記第１のネットワーク上の端末からの、前記第２のプロトコルによる通信のためのパケットの送信先端末及び送信先アプリケーションが、前記送信元特定情報記憶手段により記憶された送信元特定情報と一致するときに、当該パケットを、前記証明書記憶手段に記憶された前記電子的な自己署名証明書を用いて暗号化することにより、前記第１のプロトコルによる通信のためのパケットに変換するための手段を含む、請求項４に記載の機能付加装置。
【請求項６】
前記第１のプロトコルはＨＴＴＰＳ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ  Ｓｅｃｕｒｉｔｙ）であり、前記第２のプロトコルはＨＴＴＰ（ＨｙｐｔｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）である、請求項５に記載の機能付加装置。
【請求項７】
さらに、前記第１のパケット送受信手段に接続され、前記第１のネットワーク上の端末とのリンクが失われたことを検知して、前記アドレス記憶手段に記憶された、当該端末のアドレス情報を削除するための監視手段を含む、請求項２に記載の機能付加装置。
【請求項８】
前記第２のパケット処理手段は、
前記アドレス記憶手段に何らかのアドレス情報が新たに記憶されたことに応答して、ネットワーク機器に関する情報を問合せるための第１のプロトコルの問合せパケットを生成し前記アドレス記憶手段に新たに記憶されたアドレス情報を送信先アドレス情報として、前記第１のパケット送受信手段を介して前記第１のネットワーク上に送出するためのパケット送信手段と、
前記問合せパケットに対する応答パケットを前記第１のパケット送受信手段から受信したことに応答して、当該パケットに含まれるネットワーク機器に関する情報を記憶するためのネットワーク機器情報記憶手段と、
前記第２のネットワーク上から前記アドレス記憶手段に記憶されたアドレス情報を送信先として、ネットワーク機器に関する情報を問合せるための第２のプロトコルの問合せパケットを受信したことに応答して、前記ネットワーク機器情報記憶手段に記憶された前記ネットワーク機器に関する前記情報を含み、前記アドレス記憶手段に記憶されたアドレス情報を送信元アドレス情報として持ち、前記第２のプロトコルの問合せパケットの送信元端末を送信先として持つ前記第２のプロトコルの応答パケットを生成し、前記第２のパケット送受信手段を介して前記第２のネットワークに送出するための手段とを含む、請求項２に記載の機能付加装置。
【請求項９】
前記第１のパケット処理手段は、
前記第２のネットワークから前記第１のネットワークへの中継が禁止されるパケットが満たすべき条件を記憶するための条件記憶手段と、
前記第２のパケット送受信手段が前記第２のネットワークから受信したパケットにより、前記条件記憶手段に記憶された条件が充足されるか否かを判定し、充足される場合には当該パケットを破棄し、それ以外の場合には当該パケットを前記第１のパケット送受信手段を介して前記第１のネットワークに中継するための手段とを含む、請求項１に記載の機能付加装置。
【請求項１０】
前記条件記憶手段はさらに、前記第１のネットワークから前記第２のネットワークへの中継が禁止されるパケットが満たすべき条件を記憶し
前記第１のパケット処理手段はさらに、前記第１のパケット送受信手段が前記第１のネットワークから受信したパケットにより、前記条件記憶手段に記憶された条件が充足されるか否かを判定し、充足される場合には当該パケットを破棄し、それ以外の場合には当該パケットを前記第２のパケット送受信手段を介して前記第２のネットワークに中継するための手段を含む、請求項９に記載の機能付加装置。
【請求項１１】
前記第１のパケット処理手段は、
前記第２のネットワークから前記第１のネットワークへの中継が許可されるパケットが満たすべき条件を記憶するための条件記憶手段と、
前記第２のパケット送受信手段が前記第２のネットワークから受信したパケットにより、前記条件記憶手段に記憶された条件が充足されるか否かを判定し、充足される場合には当該パケットを前記第１のパケット送受信手段を介して前記第１のネットワークに中継し、それ以外の場合には当該パケットを破棄するための手段とを含む、請求項１に記載の機能付加装置。
【請求項１２】
前記条件記憶手段はさらに、前記第１のネットワークから前記第２のネットワークへの中継が許可されるパケットが満たすべき条件を記憶し
前記第１のパケット処理手段はさらに、前記第１のパケット送受信手段が前記第１のネットワークから受信したパケットにより、前記条件記憶手段に記憶された条件が充足されるか否かを判定し、充足される場合には当該パケットを前記第２のパケット送受信手段を介して前記第２のネットワークに中継し、それ以外の場合には当該パケットを破棄するための手段を含む、請求項１１に記載の機能付加装置。
【請求項１３】
各パケットは、送信先端末で当該パケットを処理すべきアプリケーションを特定するアプリケーション特定情報を含み、
前記第１のパケット処理手段は、前記アプリケーション特定情報の複数の対を記憶したアプリケーション特定情報変換テーブルを記憶するためのテーブル記憶手段を含み、前記複数の対の各々は、第１のアプリケーション特定情報と、第２のアプリケーション特定情報とを含み、
前記第１のパケット処理手段はさらに、
前記第２のネットワーク送受信手段から受信した前記第２のネットワークからのパケットの前記アプリケーション特定情報と一致する前記第２のアプリケーション特定情報を前記テーブル記憶手段内で検索し、検索された前記第２のアプリケーション特定情報と対になっている前記第２のアプリケーション特定情報で前記パケット内の前記アプリケーション特定情報を置換するための手段を含む、請求項１に記載の機能付加装置。
【請求項１４】
前記第１のパケット処理手段はさらに、
前記第１のネットワーク送受信手段から受信した前記第１のネットワークからのパケットの前記アプリケーション特定情報と一致する前記第１のアプリケーション特定情報を前記テーブル記憶手段内で検索し、検索された前記第１のアプリケーション特定情報と対になっている前記第２のアプリケーション特定情報で前記パケット内の前記アプリケーション特定情報を置換するための手段を含む、請求項１３に記載の機能付加装置。
【請求項１５】
前記第１のパケット処理手段はさらに、前記第２のネットワーク送受信手段から受信した前記第２のネットワークからのパケットの前記アプリケーション特定情報と一致する前記第２のアプリケーション特定情報が前記テーブル記憶手段内になかったことに応答し、当該パケットを破棄するための手段を含む、請求項１３又は請求項１４に記載の機能付加装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ネットワークの分野における機能付加装置に関し、特に、ネットワーク機器に接続されることによって、当該ネットワーク機器に新たな機能を付加したように動作させる機能付加装置に関する。
【背景技術】
【０００２】
最近のコンピュータネットワーク（以下、ネットワークと呼ぶ。）の発達に伴い、各種ネットワーク機器が急速に普及してきている。一般的に、現在のネットワーク機器は、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）又はＵＤＰ／ＩＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）というトランスポート層のプロトコルを使用して通信を行なう。これらのプロトコルは、簡単には、ＩＰアドレスというネットワーク上での自身のノードを表すアドレス情報と、ノード内におけるアプリケーションに対応付けられているポート番号とにより構成されている。
【０００３】
今日のネットワークにおいて、その社会インフラストラクチャとしての需要の高まりに伴い、数多くのアプリケーションプロトコルが使用され、大規模化・複雑化の一途を辿っている。
【０００４】
上述したように、近年のネットワーク環境は大規模化・複雑化の一途を辿っており、ワークステーション及びＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等のネットワーク端末だけではなく、組込のネットワーク機器においても、多種多様なプロトコルに対応する必要に迫られている。
【０００５】
通常、ワークステーション及びＰＣ等のネットワーク端末にはハードウェア及びソフトウェアの高性能化に伴い、今後多種多様なプロトコルが出現しても、柔軟に対応することが可能である。しかし、今後、特に組込のネットワーク機器において、そのハードウェア及びソフトウェアのリソースが制限となって、多種多様なプロトコルに対応するのが、現状と比較し、より困難になると考えられている。
【０００６】
この代表例として、ＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ）通信とＨＴＴＰＳ（ＨＴＴＰ  Ｓｅｃｕｒｉｔｙ）通信とがある。ＨＴＴＰは、通常のＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）情報を送受信するためのプロトコルであり、比較的古いネットワーク機器に標準的に搭載されている。ユーザーインタフェースを持たないネットワーク機器においては、簡易ＷＷＷサーバ機能によってＰＣから設定画面にアクセスし、設定パラメータを入力することがよく行なわれている。一方、ＨＴＴＰＳはＨＴＴＰにセキュリティ機能を付加したプロトコルである。
【０００７】
一般的に現在のＷＷＷサーバは、ＨＴＴＰ及びＨＴＴＰＳ両方のプロトコルに対応している。しかし、組込み機器であるネットワーク機器は、ワークステーション及びＰＣ等と比較し、ソフトウェア及びハードウェアの自由度が高くなく、セキュアな通信が望まれている場合であっても、やむを得ずセキュリティ機能を持たないＨＴＴＰ通信を使用しているのが現状である。したがって、このようなセキュリティレベルの低いネットワーク機器をトリガとした情報漏洩等のリスクは、日々高まっている。
【０００８】
また、別の代表例として、ＳＬＰ（Ｓｅｒｖｉｃｅ  Ｌｏｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）通信がある。ＳＬＰ通信とは、ネットワーク上のサービス情報を検出及び構成できるようにするプロトコルである。また、ＩＰｖ４及びＩＰｖ６に対応しているため、今後頻繁に使用されるものと考えられる仕様である。
【０００９】
しかし、今日普及している組込のネットワーク機器においては、ＳＬＰに対応していないものが多い。そのような装置は、ＳＬＰ通信に対し応答することができず、したがってそのようなネットワーク機器からＳＬＰ通信を使用してサービス情報を取得することはできない。
【００１０】
一方、ネットワーク情報を取得するためのプロトコルとして、ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）がある。ＳＮＭＰはネットワーク上のネットワーク機器を監視及び制御するために利用され、各ネットワーク機器の様々な情報を提供することができる。組込のネットワーク機器にはＳＮＭＰに対応しているものが多いが、ＳＮＭＰでは、ブロードキャストアドレスでネットワーク情報を取得することがあるため、この場合にはＩＰｖ６を用いるネットワークには適用することができない。
【００１１】
さらに、今後ネットワーク上のセキュリティが問題になることが予想される。旧来のネットワーク機器ではセキュリティ機能を備えていないものが多く、そうした機器をそのまま使用し続けることは危険である。
【特許文献１】特開２００６−１３９４２９号（段落００３６、００４６、００４７）
【発明の開示】
【発明が解決しようとする課題】
【００１２】
そこで、上述のようなネットワーク機器には何ら手を加えることなく、当該ネットワーク機器に新たな機能が備えられたかのように動作させるようにしたい、という希望が出てくることが予想される。その場合、ユーザにかかる負担をきるだけ小さくする必要もあると思われる。
【００１３】
例えば、プロトコル変換を行なう装置として、特許文献１に記載の装置がある。特許文献１に記載の装置では、通信プロトコルにＨＴＴＰを採用したサーバ・クライアントモデルを用いている。そして、特定の機能を持たないレガシー装置については、その機能を特定してその旨を表示したり、外部から利用できないようにしたりする。
【００１４】
しかし、この特許文献１に記載のシステムでは、サーバ・クライアントモデルを採用しているため、全体に大掛かりなシステムとなる。その上、システム内にＤＨＣＰ（Dynamic  Host  Configuration  Protocol）サーバ又はこれと類似の機能を準備して各コンポーネントにＩＰアドレスを設定する必要があり、ユーザにとってはこのような設定作業が煩わしい作業となる。またサーバ・クライアントモデルの常として、特にネットワークにあまり詳しくないユーザにとって、このシステムを矛盾なく設定するのは困難な作業となる。さらに、このシステムでは、特定の機能を持たないレガシー装置に、その機能を付加することは開示されていない。特に、レガシー装置に変更を施さずにそのセキュリティ機能を追加することについては全く開示されていない。
【００１５】
このように、今までのネットワーク機器というハードウェア資産を活かしながら、簡単な作業で新たな機能をこれらネットワーク機器に付加することの必要性は今後ますます大きくなると思われる。しかし現在までのところ、そのような問題についての明確な認識はなく、そうした問題に対する解決策は従来技術には示唆されていない。
【００１６】
それ故に本発明の一つの目的は、ある機能を持たないネットワーク機器に対し、簡単な作業でその機能を付加することができるような機能付加装置を提供することである。
【００１７】
本発明の他の目的は、ワークステーション及びＰＣ等のネットワーク端末から、あるプロトコルに対応していない機能を持つネットワーク機器に、その機能を利用する通信がなされたとしても、当該ネットワーク機器を改良することなく通信を可能とすることができる、ネットワーク機器に対する機能付加装置を提供することである。
【００１８】
本発明の他の目的は、十分なセキュリティ機能を持たないネットワーク機器に対し、簡単な作業で一定のセキュリティ機能を付加できるような機能付加装置を提供することである。
【００１９】
本発明の他の目的は、組込のネットワーク機器に適応したパケットのみを、当該ネットワーク機器に送信することができるパケットフィルタリング機能を備えた機能付加装置を提供することである。
【００２０】
本発明のさらに他の目的は、ネットワーク機器で使用しているポート番号を外部から調べることを困難にする機能を持つ機能付加装置を提供することである。
【課題を解決するための手段】
【００２１】
本発明の第１の局面に係る機能付加装置は、第１のネットワーク上の端末との間でパケットを送受信するための第１のパケット送受信手段と、第２のネットワーク上の端末との間でパケットを送受信するための第２のパケット送受信手段と、第１のパケット送受信手段及び第２のパケット送受信手段を用い、第１のネットワーク上の端末と、第２のネットワーク上の端末との間で、各パケットの送信元端末のアドレス情報及び送信先端末のアドレス情報を変更せずにパケットを中継するためのパケット中継手段とを含む。機能付加装置はさらに、パケット中継手段が受信したパケットのうち、特定の条件を充足するものに対し、予め定める処理を行なうための第１のパケット処理手段を含み、それによって、第１のネットワーク上の端末に、予め定める処理による機能を付加する。
【００２２】
パケット中継手段は、第１のネットワーク上の端末と第２のネットワーク上の端末との間でのパケットの中継を行なう。パケット中継手段が受信したパケットのうち、特定の条件を充足するパケットについては、第１のパケット処理手段によって予め定められる処理が行なわれる。すなわち、第１のパケット処理手段は、第１のネットワーク上の端末に、予め定める処理による機能を付加する。したがって、第１のネットワーク上の端末が、予め定める処理により実現される特定の機能を備えていなかったとしても、当該端末には何ら手を加えることなく、この機能付加装置を第２のネットワークとの間に介在させるだけで、その機能による通信が付加的に行なえるようになる。このとき、この機能付加装置のためのアドレスは不要である。
【００２３】
好ましくは、第１のパケット処理手段は、第１のパケット送受信手段が第１のネットワーク上の端末から受信したパケットから送信元端末のアドレス情報を抽出し記憶するためのアドレス記憶手段と、パケット中継手段により第２のネットワークから第１のネットワークに中継されるパケットのうち、アドレス記憶手段に記憶されたアドレス情報を送信先端末のアドレス情報として持つパケットに対して、予め定める処理を行なうための第２のパケット処理手段とを含む。
【００２４】
第１のネットワーク上の端末から第２のネットワーク上の端末にパケットが送信されるとき、アドレス記憶手段はそのパケット中の送信元端末のアドレス情報を抽出し記憶する。第２のネットワーク上の端末から送信されてくるパケットについては、そのパケットの送信先のアドレス情報と、アドレス記憶手段に記憶されたアドレス情報とを比較することにより、そのパケットが第１のネットワーク上の端末を送信先とするものか否かが判定できる。第２のパケット処理手段は、そうした判定により、第１のネットワーク上の端末を送信先として、パケットが送信されたときに、予め定める処理を行なう。したがって、第１のネットワーク上の端末に何ら手を加えることなく、その端末を送信先とするパケットに対し、機能付加装置が代わりに予め定める処理を行なうことができる。
【００２５】
より好ましくは、第２のパケット処理手段は、パケット中継手段が第２のパケット送受信手段から受信した、第２のネットワーク上の端末からのパケットのうち、アドレス記憶手段に記憶されたアドレス情報を送信先端末のアドレス情報として持ち、かつ特定の第１のプロトコルによる通信のためのパケットに対し、当該パケットを特定の第２のプロトコルによる通信のためのパケットに変換するための第１のプロトコル変換手段を含む。
【００２６】
この機能付加装置を中継すれば、第１のネットワーク上の端末を送信先とする第１のプロトコルによるパケットを、第１のプロトコル変換手段が第２のプロトコルに変換する。したがって、仮に第１のネットワーク上の端末においては第１のプロトコルによる通信が不可能でも、第２のプロトコルによる通信が可能であれば、第１のネットワーク上の端末には何ら改良を加えることなく、第２のネットワーク上からの第１のプロトコルによるパケットを受信し処理することができる。
【００２７】
さらに好ましくは、第２のパケット処理手段はさらに、パケット中継手段が第２のパケット送受信手段から受信した、第２のネットワーク上の端末からのパケットから、当該パケットの送信元端末及び送信元アプリケーションを特定するための送信元特定情報を抽出し記憶するための送信元特定情報記憶手段を含む。第２のパケット処理手段はさらに、パケット中継手段が第１のパケット送受信手段から受信した、第１のネットワーク上の端末からの、第２のプロトコルによる通信のためのパケットの送信先端末及び送信先アプリケーションが、送信元特定情報記憶手段に記憶された送信元特定情報と一致するときに、当該パケットを第１のプロトコルを用いた通信のためのパケットに変換するための第２のプロトコル変換手段を含む。
【００２８】
第１のネットワーク上の端末は第２のプロトコルによる通信が可能であり、第２のネットワーク上の端末は第１のプロトコルによる通信が可能であるものとする。第２のネットワーク上の端末から第１のネットワーク上の端末をあて先として、第１のプロトコルによるパケットを送信する場合、当該パケットは機能付加装置内において第２のプロトコルによるパケットに変換され、第１のネットワーク上の端末に送信される。同時に、送信元である第２のネットワークの端末の送信元特定情報が送信元特定情報記憶手段に記憶される。第１のネットワーク上の端末は、このパケットを受信した後、応答のための第２のプロトコルによるパケットを返す。機能付加装置は、このパケットを、第１のプロトコルにプロトコル変換し、指定された送信先にパケットを送信する。このとき、機能付加装置は、無条件にプロトコルを変換することはしない。第１のネットワークから受信したパケットが第２のプロトコルであり、かつその送信先端末とそのアプリケーションとが送信元特定情報記憶手段に記憶されているときに、このようなプロトコル変換を行なう。その結果、第２のネットワーク上の端末から第１のネットワーク上の端末に送信された第１のプロトコルによるパケットに対する応答パケットに対してのみ、プロトコル変換が行なわれる。この結果、第１のネットワーク上の端末が第１のプロトコルによるパケットを処理する機能を持たなくても、第２のネットワーク上の端末にとっては、第１のプロトコルによるパケットを処理可能であるかのように見える。すなわち、この機能付加装置によって、第１のプロトコルによる通信機能が第１のネットワーク上の端末に付加されたことになる。
【００２９】
さらに好ましくは、第１のプロトコルは、アドレス情報から作成される電子的な自己署名証明書を用いて暗号化されたパケットで通信を行なうためのプロトコルであり、第２のプロトコルは暗号化されないパケットで通信を行なうためのプロトコルである。機能付加装置はさらに、受信したパケットの送信元アドレス情報を用いて電子的な自己署名証明書を作成し、記憶するための証明書記憶手段を含む。第２のプロトコル変換手段は、パケット中継手段が第１のパケット送受信手段から受信した、第１のネットワーク上の端末からの、第２のプロトコルによる通信のためのパケットの送信先端末及び送信先アプリケーションが、送信元特定情報記憶手段により記憶された送信元特定情報と一致するときに、当該パケットを、証明書記憶手段に記憶された電子的な自己署名証明書を用いて暗号化することにより、第１のプロトコルによる通信のためのパケットに変換するための手段を含む。
【００３０】
第１のネットワーク上の端末が暗号化されたパケットで通信を行なうことができないとしても、機能付加装置が第１のネットワーク及び第２のネットワークの間を中継することによって、第１のネットワーク上の端末による暗号化されたパケットでの通信が可能になり、一定のセキュリティ機能を付加することができる。
【００３１】
さらに好ましくは、第１のプロトコルはＨＴＴＰＳであり、第２のプロトコルはＨＴＴＰである。
【００３２】
例えば、第１のネットワーク上の端末が、ＨＴＴＰＳに対応していないネットワーク機器であるとする。機能付加装置をこの端末と第２のネットワークとの間に介在させることで、第１のネットワーク上の端末がＨＴＴＰＳに対応しているように見える。その結果、第１のネットワーク上のネットワーク機器を改良することなく、当該ネットワーク機器にＨＴＴＰＳ通信の機能を付加することができる。
【００３３】
さらに好ましくは、機能付加装置はさらに、第１のパケット送受信手段に接続され、第１のネットワーク上の端末とのリンクが失われたことを検知して、アドレス記憶手段に記憶された、当該端末のアドレス情報を削除するための監視手段を含む。
【００３４】
監視手段は、第１のネットワーク上の端末とのリンクの状態を検知し、第１のネットワーク上の端末とのリンクが失われると、その端末のアドレス情報をアドレス記憶手段から削除する。その結果、第２のネットワーク上の端末から第１のネットワーク上の当該機器を送信先とするパケットを受信した場合、そのパケットに対し予め定める処理は行なわない。その結果、機能付加装置が第２のネットワーク上からパケットを受信したときに、第１のネットワーク上に端末が接続されているか否かに応じた適切な処理を行なうことができる。
【００３５】
さらに好ましくは、第２のパケット処理手段は、アドレス記憶手段に何らかのアドレス情報が新たに記憶されたことに応答して、ネットワーク機器に関する情報を問合せるための第１のプロトコルの問合せパケットを生成しアドレス記憶手段に新たに記憶されたアドレス情報を送信先アドレス情報として、第１のパケット送受信手段を介して第１のネットワーク上に送出するためのパケット送信手段と、問合せパケットに対する応答パケットを第１のパケット送受信手段から受信したことに応答して、当該パケットに含まれるネットワーク機器に関する情報を記憶するためのネットワーク機器情報記憶手段と、第２のネットワーク上からアドレス記憶手段に記憶されたアドレス情報を送信先として、ネットワーク機器に関する情報を問合せるための第２のプロトコルの問合せパケットを受信したことに応答して、ネットワーク機器情報記憶手段に記憶されたネットワーク機器に関する情報を含み、アドレス記憶手段に記憶されたアドレス情報を送信元アドレス情報として持ち、第２のプロトコルの問合せパケットの送信元端末を送信先として持つ第２のプロトコルの応答パケットを生成し、第２のパケット送受信手段を介して第２のネットワークに送出するための手段とを含む。
【００３６】
例えば、第１のネットワーク上の端末が、ネットワーク機器に関する情報の問合せに対する返答を行なうために、第１のプロトコルを使用可能であり、第２のプロトコルを使用不可能であるとする。また、第２のネットワーク上の端末は、ネットワーク機器に関する情報を問合せるために、第２のプロトコルを使用可能であり、第１のプロトコルを使用不可能であるとする。パケット送信手段は、第１のネットワークに新たな端末が接続されると、その端末に対し第１のプロトコルの問合せパケットをこの端末に送信する。ネットワーク機器情報記憶手段は、このパケットに対する応答パケットからその端末に関するネットワーク機器情報を記憶する。さらに、第２のネットワーク上の端末から第２のプロトコルによる、第１のネットワーク上の端末のネットワーク機器情報に関する問合せがあれば、ネットワーク機器情報記憶手段に記憶された情報に基づき、この機能付加装置が第２のプロトコルで返答する。したがって、この機能付加装置を中継すれば、第２のネットワーク上の端末は、第２のプロトコルの問合せパケットにより、第１のネットワーク上の端末の情報を取得することができる。第１のネットワーク上の端末を第２のプロトコルに対応できるように改良する必要はない。
【００３７】
さらに好ましくは、第１のパケット処理手段は、第２のネットワークから第１のネットワークへの中継が禁止されるパケットが満たすべき条件を記憶するための条件記憶手段を含む。第１のパケット処理手段は、第２のパケット送受信手段が第２のネットワークから受信したパケットにより、条件記憶手段に記憶された条件が充足されるか否かを判定し、充足される場合には当該パケットを破棄し、それ以外の場合には当該パケットを第１のパケット送受信手段を介して第１のネットワークに中継するための手段を含む。
【００３８】
機能付加装置は、第２のネットワーク上の端末から送信されたパケットが、条件記憶手段に記憶された条件を充足する場合に、当該パケットを破棄する。したがって、第１のネットワーク上の端末に適応したパケットのみが当該端末に送信される。第１のネットワーク上の端末に適応しない不適切なパケットは破棄される。その結果、第１のネットワーク上の端末が不適切なパケットを受けるおそれは少なく、当該端末のセキュリティを向上させることができる。
【００３９】
さらに好ましくは、条件記憶手段はさらに、第１のネットワークから第２のネットワークへの中継が禁止されるパケットが満たすべき条件を記憶する。第１のパケット処理手段はさらに、第１のパケット送受信手段が第１のネットワークから受信したパケットにより、条件記憶手段に記憶された条件が充足されるか否かを判定し、充足される場合には当該パケットを破棄し、それ以外の場合には当該パケットを第２のパケット送受信手段を介して第２のネットワークに中継するための手段を含む。
【００４０】
機能付加装置は、同様にして、第１のネットワーク上の端末から第２のネットワーク上の端末へ送信されたパケットであっても、第２のネットワーク上の端末に適応したパケットのみを送信することができる。
【００４１】
さらに好ましくは、第１のパケット処理手段は、第２のネットワークから第１のネットワークへの中継が許可されるパケットが満たすべき条件を記憶するための条件記憶手段と、第２のパケット送受信手段が第２のネットワークから受信したパケットにより、条件記憶手段に記憶された条件が充足されるか否かを判定し、充足される場合には当該パケットを第１のパケット送受信手段を介して第１のネットワークに中継し、それ以外の場合には当該パケットを破棄するための手段を含む。
【００４２】
機能付加装置は、第２のネットワーク上の端末から送信されたパケットが、条件記憶手段に記憶された条件に充足される場合にのみ、当該パケットを第１のネットワークに中継し、それ以外の場合には当該パケットを破棄する。したがって、第１のネットワーク上の端末に適応したパケットのみが当該端末に送信される。第１のネットワーク上の端末に適応しない不適切なパケットは破棄される。その結果、第１のネットワーク上の端末が不適切なパケットを受けるおそれは少なく、当該端末のセキュリティを向上させることができる。
【００４３】
さらに好ましくは、条件記憶手段はさらに、第１のネットワークから第２のネットワークへの中継が許可されるパケットが満たすべき条件を記憶する。第１のパケット処理手段はさらに、第１のパケット送受信手段が第１のネットワークから受信したパケットにより、条件記憶手段に記憶された条件が充足されるか否かを判定し、充足される場合には当該パケットを第２のパケット送受信手段を介して第２のネットワークに中継し、それ以外の場合には当該パケットを破棄するための手段を含む。
【００４４】
機能付加装置は、第１のネットワーク上の端末から第２のネットワーク上の端末へ送信されたパケットであっても、第２のネットワーク上の端末に適応したパケットのみを送信することができる。
【００４５】
さらに好ましくは、各パケットは、送信先端末で当該パケットを処理すべきアプリケーションを特定するアプリケーション特定情報を含む。第１のパケット処理手段は、アプリケーション特定情報の複数の対を記憶したアプリケーション特定情報変換テーブルを記憶するためのテーブル記憶手段を含む。複数の対の各々は、第１のアプリケーション特定情報と、第２のアプリケーション特定情報とを含む。第１のパケット処理手段はさらに、第２のネットワーク送受信手段から受信した第２のネットワークからのパケットのアプリケーション特定情報と一致する第２のアプリケーション特定情報をテーブル記憶手段内で検索し、検索された第２のアプリケーション特定情報と対になっている第２のアプリケーション特定情報でパケット内のアプリケーション特定情報を置換するための手段を含む。
【００４６】
機能付加装置は、第２のネットワークから受信したパケットに対して、それぞれのネットワークに適応したアプリケーション特定情報でパケットのアプリケーション特定情報を置換する。そのため、第１のネットワーク上の端末で行なっているサービス内容を知る目的、又は不正なアクセスをする目的で、一般的に使用されるアプリケーション特定情報を使用して第２のネットワーク上の端末からアクセスしようとしても、容易にはアクセスできない。また、第１のネットワーク上の端末においてどのようなサービスがどのようなアプリケーション特定情報で提供されているかを知ることも難しくなる。その結果、機能付加装置は、十分なセキュリティ機能を持たない第１のネットワーク上の端末のセキュリティ機能を高めることができる。
【００４７】
さらに好ましくは、第１のパケット処理手段はさらに、第１のネットワーク送受信手段から受信した第１のネットワークからのパケットのアプリケーション特定情報と一致する第１のアプリケーション特定情報をテーブル記憶手段内で検索し、検索された第１のアプリケーション特定情報と対になっている第２のアプリケーション特定情報でパケット内のアプリケーション特定情報を置換するための手段を含む。
【００４８】
第１のネットワークからのパケットについても、テーブルを逆に検索することでアプリケーション特定情報を逆変換し、第２のネットワークに送信する。したがって、この変換テーブルを知っていれば、第１及び第２のネットワーク上の端末の間で、特定アプリケーションに関するパケットの送受信を行なうことができる。そのときのアプリケーション特定情報としてどのような値にするかを外部から知ることは容易にはできない。その結果、機能付加装置は、十分なセキュリティ機能を持たない第１のネットワーク上の端末のセキュリティ機能を高めることができる。
【００４９】
さらに好ましくは、第１のパケット処理手段はさらに、第２のネットワーク送受信手段から受信した第２のネットワークからのパケットのアプリケーション特定情報と一致する第２のアプリケーション特定情報がテーブル記憶手段内になかったことに応答し、当該パケットを破棄するための手段を含む。
【００５０】
アプリケーション特定情報に記憶されていないアプリケーション情報を持つパケットは、第１のパケット処理手段により破棄される。したがって、変換テーブルの内容を把握していない端末からの、不正な情報による第１のネットワーク上の端末へのアクセスを排除できる。その結果、機能付加装置は、十分なセキュリティ機能を備えていない第１のネットワーク上の端末を不正なアクセスから保護することができる。
【発明を実施するための最良の形態】
【００５１】
以下、本発明について、実施の形態に基づいて説明する。なお、図面において、同じ部品には同じ参照番号を付し、それらについての詳細な説明は繰返さない。
【００５２】
［第１の実施の形態］
＜構成＞
図１に、本発明に係る機能付加装置の一例として、本発明の第１の実施の形態に係る機能付加装置１００のネットワーク環境の図を示す。
【００５３】
図１を参照して、ネットワーク９０は、ネットワーク回線１０８と、いずれもこのネットワーク回線１０８に接続されるネットワーク端末１０４、１０６及びＨＴＴＰ通信の機能は持つが、ＨＴＴＰＳ通信の機能を持たないネットワーク機器１０２を含む。ただし、ネットワーク機器１０２は、本実施の形態に係る、ネットワーク機器１０２に対してＨＴＴＰＳ通信の機能を付加するための機能付加装置１００を経由してネットワーク回線１０８に接続されている。ネットワーク機器１０２は、通信線１１０で機能付加装置１００と接続されている。本実施の形態では、通信線１１０で機能付加装置１００に接続されるネットワーク機器は１台のみであるとする。
【００５４】
以下の説明では、ネットワーク機器１０２は、ＨＴＴＰＳに対応していないＷＷＷサーバを搭載した組込のネットワーク機器であるとする。一方、ネットワーク端末１０４及びネットワーク端末１０６はＨＴＴＰＳで通信することが可能であるものとする。
【００５５】
図２に、本実施の形態に係る機能付加装置１００のハードウェア構成の図を示す。図２を参照して、機能付加装置１００はＣＰＵ（中央演算処理装置）２００と、機能付加装置１００のブートアッププログラム及びＣＰＵ２００によって実行されるプログラムを記憶するＲＯＭ（Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０２とを含む。機能付加装置１００は、ＣＰＵ２００によって使用される作業領域を提供するための記憶領域となるＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０４と、通信線１１０への接続を提供し、通信線１１０上のネットワーク端末との間でパケットを送受信するための第１のネットワークインタフェース２０６と、ネットワーク回線１０８への接続を提供し、ネットワーク回線１０８上のネットワーク端末との間でパケットを送受信するための第２のネットワークインタフェース２０８とをさらに含む。
【００５６】
図３は、機能付加装置１００の機能ブロック図である。図３を参照して、機能付加装置１００は、第２のネットワークインタフェース２０８がネットワーク回線１０８に接続されているネットワーク端末から受信したＨＴＴＰＳプロトコルによるパケット（以下単に「ＨＴＴＰＳパケット」と呼ぶ。）の送信元ＩＰアドレスとポート番号とを記憶するための送信元端末情報保存領域２６０と、第１のネットワークインタフェース２０６に接続されたネットワーク機器（本実施の形態ではネットワーク機器１０２）のＩＰアドレスとＨＴＴＰＳ通信のための証明書とを記憶するための証明書情報保存領域２６２とを含む。このＩＰアドレスは、後述するように機能付加装置がネットワーク機器１０２から送信されるパケットから取得する。なお、図３における第１のネットワークインタフェース２０６及び第２のネットワークインタフェース２０８は、図２を用いて説明したこれら物理インタフェースを動作させる為のＴＣＰ／ＩＰプロトコルなどのソフトウェアプログラムを含む。
【００５７】
詳しくは後述するが、第１のネットワークインタフェース２０６及び第２のネットワークインタフェース２０８は、機能付加装置１００にネットワークを介して接続されているネットワーク機器及びネットワーク端末とＴＣＰ接続をするために、それぞれネットワーク機器１０２及び当該ネットワーク端末とＴＣＰ接続確立パケットを送受信する。ここで、「ＴＣＰ接続確立パケット」とは、後述する「ＴＣＰ接続」、「ＴＣＰ接続／応答」、及び「ＴＣＰ応答確認」のパケットの総称である。
【００５８】
機能付加装置１００はさらに、第１のネットワークインタフェース２０６がネットワーク機器１０２から受信したパケットの送信元ＩＰアドレス及びＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスを保存するための送信先端末情報保存領域２６４とを含む。ネットワーク機器１０２がこのようなパケットを送信するのは、外部からネットワーク機器１０２を送信先とするパケットを受信したときに限られる。そのため、ここではネットワーク機器１０２のＩＰアドレスを「送信先」アドレスと呼んでいる。
【００５９】
機能付加装置１００はさらに、第１のパケット受信処理部２５０とＨＴＴＰ／ＨＴＴＰＳデコード処理部２５２とリンク監視部２５４とを含む。第１のパケット受信処理部２５０は、後述するＨＴＴＰ／ＨＴＴＰＳデコード処理部２５２に接続された第１の出力経路と、第１のネットワークインタフェース２０６に接続された第２の出力経路とを持つ。第１のパケット受信処理部２５０は、第２のネットワークインタフェース２０８から送信されたパケットを受信し、送信先端末情報保存領域２６４に受信パケットの送信先のＩＰアドレス及びＭＡＣアドレスが登録されているか否かを判定する。登録されていない場合、及び登録されていたとしても受信パケットがＴＣＰ接続確立パケット以外、且つＨＴＴＰＳ以外のパケットである場合には、第１のパケット受信処理部２５０は第２の出力経路に当該受信したパケットを送信し、一方、ＨＴＴＰＳのパケットであれば第１の出力経路に当該受信したパケットを送信する。一方、ポート番号が４４３番であるＴＣＰ接続確立パケットである場合には、第１のパケット受信処理部２５０は、ネットワーク端末１０４と自身である機能付加装置１００との間でＨＴＴＰＳ通信用のＴＣＰ接続（ポート番号＝４４３）を確立するため、第２のネットワークインタフェース２０８にネットワーク端末１０４とＴＣＰ接続確立パケットを送受信させるための指示を出し、パケットを破棄する。ＨＴＴＰ／ＨＴＴＰＳデコード処理部２５２は、第１のパケット受信処理部２５０の第１の出力経路に接続された入力を持ち、第１の出力経路から受信したＨＴＴＰＳのパケットの送信先であるネットワーク機器１０２と機能付加装置１００との間にてＨＴＴＰ通信用のＴＣＰ接続（ポート番号＝８０）を確立するため、第１のネットワークインタフェース２０６に、ネットワーク機器１０２とＴＣＰ接続確立パケットを送受信させるための指示を出し、証明書情報保存領域２６２を参照して、受信したパケットをＨＴＴＰのパケットにデコードし、送信元端末情報保存領域２６０に、パケットの送信元のＩＰアドレス及びポート番号を記憶する。リンク監視部２５４は、第１のネットワークインタフェース２０６とネットワーク機器１０２とのリンク状態を常時監視し、接続状態から切断状態への遷移を検知すると、当該ネットワーク機器１０２のＩＰアドレス及びＭＡＣアドレスを送信先端末情報保存領域２６４から削除する。
【００６０】
機能付加装置１００はさらに、第２のパケット受信処理部２５６とＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８とを含む。第２のパケット受信処理部２５６は、後述するＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８に接続された第１の出力経路と第２のネットワークインタフェース２０８に接続された第２の出力経路を含む。第２のパケット受信処理部２５６は、第１のネットワークインタフェース２０６よりパケットを受信し、受信パケットの送信元ＩＰアドレス及びＭＡＣアドレスを抽出する。第２のパケット受信処理部２５６は、それらが送信先端末情報保存領域２６４に記憶されていなければ、各アドレスを送信先端末情報保存領域２６４に登録し、パケットの送信元ＩＰアドレスに対応する証明書が証明書情報保存領域２６２に存在していなければ自己署名証明書を作成してネットワーク機器１０２のＩＰアドレスとともに証明書情報保存領域２６２に保存する。第２のパケット受信処理部２５６はさらに、当該受信パケットの送信元ポート番号を判定し、当該受信パケットの送信元ポート番号が８０であれば、当該受信パケットを第１の出力経路に出力し、一方、それ以外のパケットであれば、受信パケットを第２の出力経路に出力する。ＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８は、第２のパケット受信処理部２５６からパケットを受信し、そのパケットがＨＴＴＰＳパケットに対する応答のＨＴＴＰパケットであれば、ＨＴＴＰＳにエンコードして第２のネットワークインタフェース２０８に出力し、その他の場合にはそのまま第２のネットワークインタフェース２０８に出力する。
【００６１】
ＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８が、受信したパケットをＨＴＴＰＳにエンコードすべきか否かは、次のようにして判定する。ＨＴＴＰ／ＨＴＴＰＳデコード処理部２５２がネットワーク機器１０２あてのＨＴＴＰＳパケットを受信したとき、そのパケットの送信元端末のＩＰアドレスとポート番号とを送信元端末情報保存領域２６０に保存する。ＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８は、第２のパケット受信処理部からパケットを受信すると、送信元端末情報保存領域２６０を参照し、パケットの送信先のＩＰアドレスとポート番号との組合せが送信元端末情報保存領域２６０に存在していなければ第２のネットワークインタフェース２０８にそのまま送信する。存在すれば、証明書情報保存領域２６２を参照して、ＨＴＴＰＳのパケットにエンコードし、第２のネットワークインタフェース２０８に送信した後、送信元端末情報保存領域２６０に保存されていたＩＰアドレス及びポート番号の組合せを削除する。このようにすることで、ＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８は、受信したパケットをＨＴＴＰＳにエンコードすべきか否かを判定できる。
【００６２】
すなわち、第１のパケット受信処理部２５０、ＨＴＴＰ／ＨＴＴＰＳデコード処理部２５２、第２のパケット受信処理部２５６、及びＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８は、第１のネットワークインタフェース２０６及び第２のネットワークインタフェース２０８を用い、第１のネットワークインタフェース２０６の端末と、ネットワーク回線１０８上の端末との間で、各パケットの送信元端末のＩＰアドレス及び送信先端末のＩＰアドレスを変更せずにパケットを中継する機能を持っている。ただし、既に述べたように、これらは、特定の条件を充足するパケットについては、中継するパケットに対してプロトコル変換という特定の処理を実行する機能を持つ。
【００６３】
なお、本実施の形態に係る機能付加装置１００は、自身のＩＰアドレスを備えず、ネットワーク機器１０２及びネットワーク回線１０８に接続された各ネットワーク端末のＩＰアドレスを利用して、通信を行なう。
【００６４】
図４は、第１のパケット受信処理部２５０の機能をコンピュータプログラムで実現する際の、プログラムの制御構造を示すフローチャートである。以下で説明するコンピュータプログラムは、いずれも図２に示すＲＯＭ２０２に記憶されており、ＣＰＵ２００によってプロセスとして実行されることにより、各機能ブロックの機能を実現する。
【００６５】
図４を参照して、ステップ３００において、第１のパケット受信処理部２５０は、第２のネットワークインタフェース２０８からパケットを受信したか、そうでないかを判定する。判定結果がＹＥＳであれば制御はステップ３０２に進み、それ以外であればステップ３００に戻る。
【００６６】
ステップ３０２において、第１のパケット受信処理部２５０は、受信したパケットの送信先ＩＰアドレス及びＭＡＣアドレスが送信先端末情報保存領域２６４に登録されているか、そうでないかを判定する。判定結果がＹＥＳであれば制御はステップ３１０に進み、それ以外であればステップ３０６に進む。
【００６７】
ステップ３１０において、第１のパケット受信処理部２５０は、当該受信したパケットがＴＣＰ接続確立パケットであるか否かを判定する。判定結果がＹＥＳであれば、制御はステップ３１２に進み、それ以外であればステップ３０４に進む。
【００６８】
ステップ３１２において、第１のパケット受信処理部２５０は、当該受信したＴＣＰ接続確立パケットがポート番号＝４４３に対するパケットか否かを判定する。判定結果がＹＥＳであれば、制御はステップ３１４に進み、それ以外であればステップ３０６に進む。
【００６９】
ステップ３１４において、第１のパケット受信処理部２５０は、第２のネットワークインタフェース２０８に対し、当該ＴＣＰ接続確立パケット（ポート番号＝４４３）を送信したネットワーク端末とＴＣＰ接続を確立するために、当該ネットワーク端末とＴＣＰ接続確立パケットを送受信させるよう指示を出し、パケットを破棄する。その後、制御はステップ３００に戻る。
【００７０】
ステップ３０４において、第１のパケット受信処理部２５０は、受信したパケットがＨＴＴＰＳ通信によるものであるか、そうでないかを判定する。判定結果がＹＥＳであれば制御はステップ３０８に進み、それ以外であればステップ３０６に進む。
【００７１】
ステップ３０８において、第１のパケット受信処理部２５０は、ＨＴＴＰＳ通信によるパケットをＨＴＴＰのためのパケットにデコードするために、ＨＴＴＰ／ＨＴＴＰＳデコード処理部２５２にパケットを送信し、ステップ３００に戻る。なお、ステップ３０８における実際の動作は、第１のパケット受信処理部２５０として機能するプロセスからＨＴＴＰ／ＨＴＴＰＳのデコードプロセスにパケットデータを引渡すことにより行なわれる。
【００７２】
一方、ステップ３０６においては、受信したパケットに対して何も処理せず、パケットを第１のネットワークインタフェース２０６に送信する。この後、制御はステップ３００に戻る。
【００７３】
図５は、リンク監視部２５４の機能をコンピュータプログラムで実現する際の、プログラムの制御構造を示すフローチャートである。図５を参照して、リンク監視部２５４は、ステップ３２０において、第１のネットワークインタフェース２０６とネットワーク機器１０２とのリンクが切断されているか、そうでないかを判定する。判定結果がＹＥＳであればステップ３２２に進み、それ以外であればステップ３２０に戻る。
【００７４】
ステップ３２２において、リンク監視部２５４は、ネットワーク機器１０２とのリンクが切断されているので、送信先端末情報保存領域２６４に記憶されているＩＰアドレス及びＭＡＣアドレスを削除し、ステップ３２０に戻る。すなわちリンク監視部２５４は、第１のネットワークインタフェース２０６を常に監視し、接続されている機器との間のリンクが切断されると、送信先端末情報保存領域２６４に記憶されていたその機器のＩＰアドレス及びＭＡＣアドレスを削除する機能を実現する。
【００７５】
図６は、第２のパケット受信処理部２５６の機能をコンピュータプログラムで実現する際の、プログラムの制御構造を示すフローチャートである。図６を参照して、ステップ３３０において、第２のパケット受信処理部２５６は、第１のネットワークインタフェース２０６からパケットを受信したか、そうでないかを判定する。判定結果がＹＥＳであればステップ３３２に進み、それ以外であればステップ３３０に戻る。
【００７６】
ステップ３３２において、第２のパケット受信処理部２５６は、受信したパケットの送信元であるネットワーク機器１０２のＩＰアドレス及びＭＡＣアドレスが送信先端末情報保存領域２６４に記憶されているか、そうでないかを判定する。判定結果がＹＥＳであればステップ３４４に進み、それ以外であればステップ３３４に進む。
【００７７】
ステップ３３４において、第２のパケット受信処理部２５６はパケットの送信元ＩＰアドレス及びＭＡＣアドレスを送信先端末情報保存領域２６４に記憶させる。制御はステップ３３６に進む。
【００７８】
ステップ３３６において、第２のパケット受信処理部２５６は、ＨＴＴＰＳエンコードのための電子的な自己署名証明書が証明書情報保存領域２６２に既に存在しているか、そうでないかを判定する。判定結果がＹＥＳであればステップ３３８に進み、それ以外であればステップ３４２に進む。
【００７９】
ステップ３３８において、証明書情報保存領域２６２を参照し、ここに記憶されている自己署名証明書のＩＰアドレスと、第１のネットワークインタフェース２０６から受信したパケットの送信元ＩＰアドレス（すなわちネットワーク機器１０２のＩＰアドレス）とが違うか、そうでないかを判定する。判定結果がＹＥＳであればステップ３４２に進み、それ以外であればステップ３４４に進む。
【００８０】
ステップ３４２においては、現在、第１のネットワークインタフェース２０６に接続されているネットワーク機器１０２のＩＰアドレスのための証明書が証明書情報保存領域２６２に記憶されていないということであるので、第２のパケット受信処理部２５６は、受信したパケットの送信元端末のＩＰアドレスのための新しい自己署名証明書を作成する。第２のパケット受信処理部２５６は、その自己署名証明書と、受信したパケットの送信元ＩＰアドレスとを互いに関連付けて証明書情報保存領域２６２に記憶させ、ステップ３４４に進む。
【００８１】
ステップ３４４において、第２のパケット受信処理部２５６は、受信したパケットの送信元ポート番号が８０番であるか否かを判定する。判定結果がＹＥＳ（ポート番号＝８０）であれば、制御はステップ３４０に進み、それ以外であればステップ３４６に進む。
【００８２】
ステップ３４６において、第２のパケット受信処理部２５６は、受信したパケットをそのまま第２のネットワークインタフェース２０８に送信し、制御はステップ３３０に戻る。
【００８３】
ステップ３４０において、第２のパケット受信処理部２５６は、第１のネットワークインタフェース２０６から受信したパケットをＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８に送信する。この後、制御はステップ３３０に戻る。
【００８４】
図７は、ＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８の機能をコンピュータプログラムで実現する際の、プログラムの制御構造を示すフローチャートである。図７を参照して、ステップ３５０において、ＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８は、第２のパケット受信処理部２５６からパケットを受信したか、そうでないかを判定する。判定結果がＹＥＳであればステップ３５２に進み、それ以外であればステップ３５０に戻る。
【００８５】
ステップ３５２において、先ず、ＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８は、受信したパケットがＨＴＴＰパケットであるかを判定する。この結果、ＨＴＴＰパケット以外であれば制御がステップ３５６に進む。ＨＴＴＰパケットであれば、ＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８は、パケットの送信先ＩＰアドレス及びＭＡＣアドレスが送信元端末情報保存領域２６０に存在するか、そうでないかを判定する。本ステップは、受信したパケットがＨＴＴＰ／ＨＴＴＰＳデコード処理部２５２でデコードされたＨＴＴＰＳのパケットに対する応答であるか、そうでないかを判定するためのものである。もし、受信したパケットが、ＨＴＴＰＳをデコードして得られたＨＴＴＰに対する応答であれば、送信元端末情報保存領域２６０に元のＨＴＴＰＳパケットの送信元ＩＰアドレスとポート番号とが記憶されており、これらはネットワーク機器１０２から送信されるＨＴＴＰパケットの送信先ＩＰアドレスとポート番号とにそれぞれ一致する筈だからである。判定結果がＹＥＳ、即ちパケットの送信先ＩＰアドレス及びＭＡＣアドレスが送信元端末情報保存領域２６０に存在する場合、制御はステップ３５４に進み、それ以外であればステップ３５６に進む。
【００８６】
ステップ３５４において、ＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８は、証明書情報保存領域２６２に記憶されている、ネットワーク機器１０２のＩＰアドレスに対応する自己署名証明書を参照し、ＨＴＴＰのパケットをＨＴＴＰＳのパケットにエンコードする。次にＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８は、送信元端末情報保存領域２６０から受信したＨＴＴＰパケットの送信先ＩＰアドレスと、対応するポート番号とを削除する。この後制御はステップ３５６に進む。
【００８７】
ステップ３５６において、ＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８はパケットを第２のネットワークインタフェース２０８に送信する。この後、制御はステップ３５０に戻り、次のパケットを待つ。
【００８８】
＜動作＞
以上構成を説明した機能付加装置１００は以下のように動作する。以下では、ＨＴＴＰ通信をする場合と、ＨＴＴＰＳ通信をする場合とに分けて動作を説明する。
【００８９】
図３を参照して、最初は第１のネットワークインタフェース２０６にはネットワーク機器１０２が接続されておらず、送信元端末情報保存領域２６０、証明書情報保存領域２６２、及び送信先端末情報保存領域２６４には何の情報も保存されていないものとする。
【００９０】
機能付加装置１００が動作し始めると、リンク監視部２５４が起動し、第１のネットワークインタフェース２０６と、第１のネットワークインタフェース２０６に接続される機器とのリンク状態の監視を開始する。
【００９１】
ネットワーク機器１０２が第１のネットワークインタフェース２０６に接続されたものとする。この場合、リンク監視部２５４は第１のネットワークインタフェース２０６とネットワーク機器１０２とのリンクの確立を検知するが、それ以上は何も行なわない。以後リンク監視部２５４は、第１のネットワークインタフェース２０６とネットワーク機器１０２とのリンクが切断されたか否か、すなわちリンクが失われたか否かについて監視する。
【００９２】
リンクが切断されたとき、リンク監視部２５４は、送信先端末情報保存領域２６４を参照し、ネットワーク機器１０２のＩＰアドレス及びＭＡＣアドレスが登録されていれば、登録されている情報を削除する。
【００９３】
―ＨＴＴＰ通信―
図８は、図３に示すネットワーク回線１０８に接続されたネットワーク端末１０４から、機能付加装置１００を介して、ネットワーク機器１０２へＨＴＴＰ通信を行なうときのシーケンス図である。図８を参照して、ネットワーク端末１０４からネットワーク機器１０２へＨＴＴＰ通信を行なうものとする。
【００９４】
図８を参照して、先ず、矢印３７０は、ネットワーク端末１０４からネットワーク機器１０２へ、ＡＲＰ（Ａｄｄｒｅｓｓ  Ｒｅｓｏｌｕｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）リクエストを送信することを示している。最初、ネットワーク端末１０４は、パケットの送信先のＩＰアドレスを知っているが、そのＩＰアドレスに対応するＭＡＣアドレスを知らない。このＡＲＰリクエストは、ネットワーク端末１０４が、相手方のＭＡＣアドレスを知るためにネットワーク回線１０８上にブロードキャストするものである。
【００９５】
図３を参照して、ネットワーク端末１０４から送信されたＡＲＰリクエストのパケットは、第２のネットワークインタフェース２０８を介して、第１のパケット受信処理部２５０で受信される。送信先端末情報保存領域２６４には、ネットワーク機器１０２のＩＰアドレス及びＭＡＣアドレスは記憶されていない。したがって、第１のパケット受信処理部２５０は、このＡＲＰリクエストのパケットを第１のネットワークインタフェース２０６に与える。第１のネットワークインタフェース２０６はこのＡＲＰリクエストのパケットをネットワーク機器１０２に送信する。このＡＲＰリクエストがネットワーク機器１０２のＩＰアドレスに関するものであれば、ネットワーク機器１０２は自己のＭＡＣアドレスをＡＲＰ応答としてネットワーク端末１０４に返信する。ＡＲＰリクエストが自己のＩＰアドレスに関するものでなければネットワーク機器１０２は何も返信しない。以下の説明では、ＡＲＰリクエストがネットワーク機器１０２のＩＰアドレスに関するものであるものとする。
【００９６】
図８を参照して、矢印３７２は、ネットワーク機器１０２が、ネットワーク端末１０４へ、ネットワーク機器１０２のＭＡＣアドレスを含むＡＲＰ応答を返すことを示している。
【００９７】
図３を参照して、ＡＲＰ応答は先ず、ネットワーク機器１０２から第１のネットワークインタフェース２０６を介して、第２のパケット受信処理部２５６に到達する。第２のパケット受信処理部２５６は送信先端末情報保存領域２６４を参照して、ＡＲＰ応答のパケットの送信元であるネットワーク機器１０２のＩＰアドレス及びＭＡＣアドレスが送信先端末情報保存領域２６４に記憶されているかどうかを確認する。現状では、送信先端末情報保存領域２６４に何も登録されていないので、第２のパケット受信処理部２５６は、受信したパケットの送信元ＩＰアドレスとＭＡＣアドレスとを送信先端末情報保存領域２６４に登録する。その後、第２のパケット受信処理部２５６は、このＩＰアドレスのための自己署名証明書を作成し、作成した証明書をＩＰアドレスと関連付けて証明書情報保存領域２６２に記憶させる。第２のパケット受信処理部２５６はこの後、パケットをＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８に送信する。
【００９８】
このようにして、機能付加装置１００は、ネットワーク機器１０２と他の機器との通信を中継することにより、ネットワーク機器１０２のＩＰアドレスとＭＡＣアドレスとを知ることができる。
【００９９】
ＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８はこのパケットの送信先ＩＰアドレスとポート番号との組合せが送信元端末情報保存領域２６０に記憶されているか否かを判定する。ここでは送信元端末情報保存領域２６０には何も記憶されていないので、ＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８はパケットをそのまま第２のネットワークインタフェース２０８に与える。第２のネットワークインタフェース２０８はこのパケットをネットワーク回線１０８上に送出する。その結果、ＡＲＰ応答はネットワーク端末１０４に到達する。この結果、ネットワーク端末１０４はネットワーク機器１０２のＭＡＣアドレスを知ることができる。
【０１００】
図８を参照して、矢印３７４は、ネットワーク端末１０４がネットワーク機器１０２とポート番号を８０番としてＴＣＰ接続をするためのパケット通信を行なうことを示している。これは、即ち、ＨＴＴＰポートでＴＣＰ接続を開始することを意味する。このときにネットワーク端末１０４から送信されるパケットに対して、機能付加装置１００は何の処理も行なわず、第２のネットワークインタフェース２０８、第１のパケット受信処理部２５０、及び第１のネットワークインタフェース２０６を経由して、パケットをネットワーク機器１０２に送信する。この理由は、図４の説明で既に述べたように、当該受信したＴＣＰ接続パケットはＴＣＰ接続確立パケットの１つではあるものの、ポート番号が４４３でないため、第１のパケット受信処理部２５０において何も処理されず、そのまま第１のネットワークインタフェース２０６に送信されるからである。
【０１０１】
図８を参照して、矢印３７６は、ネットワーク機器１０２が矢印３７４で受信したＴＣＰ接続のためのパケットに対して、ＴＣＰ接続に対する応答をネットワーク端末１０４にパケット送信することを示している。そのときにネットワーク機器１０２から送信されるパケットに対して、機能付加装置１００は何の処理も行なわず、第１のネットワークインタフェース２０６、第２のパケット受信処理部２５６、ＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８及び第２のネットワークインタフェース２０８を経由して、パケットをネットワーク端末１０４に送信する。この理由は、図６を参照して、当該受信したＴＣＰ接続／応答パケットの送信元ポート番号が８０であるため、このパケットがＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８に送信され、次いで、図７を参照して、送信元端末情報保存領域２６０にネットワーク端末１０４のＩＰアドレス及びＭＡＣアドレスが登録されていないので、当該受信したＴＣＰ接続／応答パケットが何も処理されず、そのまま第２のネットワークインタフェース２０８に送信されるからである。
【０１０２】
矢印３７８は、ネットワーク端末１０４がネットワーク機器１０２からＴＣＰ接続に対する応答を受信し、ネットワーク機器１０２にＴＣＰ応答確認のためのパケットを送信することを示す。機能付加装置１００はこのパケットに対し何の処理も行なわず、ネットワーク機器１０２に送信する。この理由は、図４の説明で既に述べたように、当該受信したＴＣＰ応答確認パケットはＴＣＰ接続確立パケットの１つではあるものの、ポート番号が４４３でないため、第１のパケット受信処理部２５０において何も処理されず、そのまま第１のネットワークインタフェース２０６に送信されるからである。
【０１０３】
このようなネゴシエーションの結果、ネットワーク端末１０４とネットワーク機器１０２とのＴＣＰ接続が確立される。
【０１０４】
図８を参照して、矢印３８０は、ネットワーク端末１０４がネットワーク機器１０２にＨＴＴＰリクエストのためのパケットを送信することを示している。
【０１０５】
図３を参照して、機能付加装置１００はこのＨＴＴＰリクエストに対しても何ら処理を行なわず、その結果このパケットはネットワーク機器１０２に到達する。
【０１０６】
図８を参照して、矢印３８２は、ネットワーク機器１０２が、受信したＨＴＴＰリクエストに対し、ネットワーク端末１０４にＨＴＴＰ応答のためのパケットを送信することを示す。
【０１０７】
図３を参照して、このパケットはＨＴＴＰＳパケットに対する応答ではないので、機能付加装置１００はパケットには何の処理も行なわず、第１のネットワークインタフェース２０６、第２のパケット受信処理部２５６、ＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８、及び第２のネットワークインタフェース２０８を経由して、パケットをネットワーク端末１０４に送信する。
【０１０８】
―ＨＴＴＰＳ通信―
図９は、図３に示すネットワーク回線１０８に接続されたネットワーク端末１０４から、機能付加装置１００を介して、ネットワーク機器１０２との間でＨＴＴＰＳ通信を行なうときのシーケンス図である。図９を参照して、ネットワーク端末１０４がネットワーク機器１０２をあて先としてＨＴＴＰＳ通信を行なうものとする。
【０１０９】
図９を参照して、矢印３９０及び矢印３９２は、それぞれ図８に示す矢印３７０及び矢印３７２と同一の処理を示す。もしも送信先端末情報保存領域２６４にネットワーク機器１０２のＩＰアドレスとＭＡＣアドレスとが記憶されていない場合、この処理を通じてそれらが送信先端末情報保存領域２６４に記憶されることになる。
【０１１０】
図９を参照して、矢印３９４は、ネットワーク端末１０４がネットワーク機器１０２とポート番号＝４４３番でＴＣＰ接続をするためのパケット通信を行なうことを示す。これは、即ち、ＨＴＴＰＳプロトコルでＴＣＰ接続を開始することを意味する。ネットワーク機器１０２はＨＴＴＰＳ通信に対応していないため、通常はＨＴＴＰＳ通信を行なうことはできない。しかし本実施の形態に係る機能付加装置１００により、以下のようにしてネットワーク機器１０２はこのＨＴＴＰＳパケットに対するＨＴＴＰＳ応答を返すことができる。
【０１１１】
ネットワーク端末１０４からのポート番号＝４４３に対するＴＣＰ接続は、まず機能付加装置１００の第２のネットワークインタフェース２０８を経由して第１のパケット受信処理部２５０により受信される。該受信したＴＣＰ接続パケットがＴＣＰ接続確立パケットの１つであり、且つ、ポート番号が４４３なので、第１のパケット受信処理部２５０は、第２のネットワークインタフェース２０８に対してネットワーク端末１０４と自身である機能付加装置１００との間でＴＣＰ接続を確立するよう指示を出す。よって、以下に示すＴＣＰ接続のネゴシエーション（矢印３９６、３９８）は、本実施の形態では第２のネットワークインタフェース２０８によって実行されるものとする。
【０１１２】
矢印３９６は矢印３９４で受信したＴＣＰ接続のためのパケットに対して、ＴＣＰ接続に対する応答を第２のネットワークインタフェース２０８からネットワーク端末１０４に送信することを示している。
【０１１３】
ネットワーク端末１０４がこの応答を受信すると、矢印３９８により示されるように、ネットワーク機器１０２をあて先としてＴＣＰ応答確認のためのパケットを送信する。以上のネゴシエーションにより、ネットワーク端末１０４は、ネットワーク機器１０２との間のＨＴＴＰＳポートでのＴＣＰ接続が確立したと認識する。
【０１１４】
図９を参照して、ネットワーク端末１０４が機能付加装置１００に矢印４００で示すようにＨＴＴＰＳリクエストパケットを送信する。図３に示す第２のネットワークインタフェース２０８がこのパケットを受信し、第１のパケット受信処理部２５０に送信する。
【０１１５】
第１のパケット受信処理部２５０は、送信先端末情報保存領域２６４を参照して、パケットの送信先ＩＰアドレス及びＭＡＣアドレスが登録されているか否かを確認する。ここでは、既にネットワーク機器１０２のＩＰアドレスが及びＭＡＣアドレスが登録されている。したがって第１のパケット受信処理部２５０は、パケットをＨＴＴＰ／ＨＴＴＰＳデコード処理部２５２に送信する。
【０１１６】
図３に示すＨＴＴＰ／ＨＴＴＰＳデコード処理部２５２は、第１のパケット受信処理部２５０から与えられたＨＴＴＰＳのパケットの送信先であるネットワーク機器１０２と機能付加装置１００との間にてＨＴＴＰ通信用のＴＣＰ接続（ポート番号＝８０）を確立するよう、第１のネットワークインタフェース２０６に指示する（図９の矢印４１２、４１４、４１６）。なお、このＴＣＰ接続は、矢印４００にて受信したＨＴＴＰＳリクエストの送信元アドレス及びＭＡＣアドレスを送信元アドレスとして確立される。
【０１１７】
その後、当該受信したＨＴＴＰＳパケットをＨＴＴＰのパケットにデコードする（図９のＨＴＴＰＳ→ＨＴＴＰデコード処理４０２）。ＨＴＴＰ／ＨＴＴＰＳデコード処理部２５２はこのとき、送信元端末情報保存領域２６０に、パケットの送信元ＩＰアドレスとポート番号とを記憶させる。
【０１１８】
図９を参照して、ＨＴＴＰ／ＨＴＴＰＳデコード処理部２５２は、矢印４０４により示されるように、矢印４１２、４１４、４１６にて確立されたＴＣＰ接続（ポート番号＝８０）を用いて、デコードされたＨＴＴＰリクエストを、第１のネットワークインタフェース２０６を介してネットワーク機器１０２に送信する。
【０１１９】
このＨＴＴＰリクエストに対し、ネットワーク機器１０２内のＷＷＷサーバが矢印４０６により示されるようにＨＴＴＰ応答を機能付加装置１００に送信する。
【０１２０】
図３を参照して、機能付加装置１００の第１のネットワークインタフェース２０６がこのＨＴＴＰ応答パケットを受信し、第２のパケット受信処理部２５６に与える。第２のパケット受信処理部２５６は、このパケットの送信元ＩＰアドレス及びＭＡＣアドレスが送信先端末情報保存領域２６４に保存されているか否かを確認する。ここでは既に送信先端末情報保存領域２６４にこれら情報が保存されている。第２のパケット受信処理部２５６はこのパケットをＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８に与える。
【０１２１】
図３に示すＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８は、送信元端末情報保存領域２６０を参照して、受信したパケットがデコードされたＨＴＴＰリクエストに対する応答パケットであるかどうかを確認する。すなわち、ＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８は、送信元端末情報保存領域２６０を参照して、受信したパケットの送信先ＩＰアドレスとポート番号との組合せが送信元端末情報保存領域２６０に記憶されているか否かを判定する。ここでは、ＨＴＴＰ／ＨＴＴＰＳデコード処理部２５２によりこれらが送信元端末情報保存領域２６０に保存されている。したがってＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８は、証明書情報保存領域２６２を参照し、受信したパケットの送信元ＩＰアドレスに対応する自己署名証明書を読出し、受信したＨＴＴＰ応答のパケットをＨＴＴＰＳ応答のためのパケットにエンコードする。その後、ＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８は送信元端末情報保存領域２６０内に保存されていた、パケットの送信先ＩＰアドレスとポート番号との組合せを削除する。これらの処理が図９のＨＴＴＰ→ＨＴＴＰＳエンコード処理４０８として示されている。
【０１２２】
ＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８は、このようにして得られたＨＴＴＰＳ応答のパケットを第２のネットワークインタフェース２０８に与え、第２のネットワークインタフェース２０８はこのパケットをネットワーク回線１０８上に送出する。その結果、図９において矢印４１０により示されるように、エンコードされたＨＴＴＰＳ応答のパケットがネットワーク端末１０４に送信される。
【０１２３】
＜第１の実施の形態の効果＞
本実施の形態に係る機能付加装置１００を使用することにより、機能付加装置１００は、ネットワーク機器１０２が備えていないＨＴＴＰＳ通信機能を、付加的にネットワーク機器１０２に与えることができる。また、機能付加装置１００が独自にＩＰアドレスを必要とせず、ユーザは、機能付加装置１００、ネットワーク機器１０２、及びネットワーク回線１０８上のネットワーク端末のいずれに対しても、予め何らかの設定を施す必要がない。ネットワーク回線１０８上のネットワーク端末がネットワーク機器１０２にＨＴＴＰＳ通信を試みれば、ネットワーク機器１０２及び機能付加装置１００の組合せは、あたかもネットワーク機器１０２にＨＴＴＰＳ通信の機能が追加されたかのように動作する。即ち、ＨＴＴＰ通信機能は備えているがＨＴＴＰＳ通信の機能を備えていないネットワーク機器であっても、ネットワーク回線１０８との間に機能付加装置１００を介在させるだけで、外部からのＨＴＴＰＳプロトコルに対して応答することができる。この意味で機能付加装置１００は、ＨＴＴＰＳ通信機能をネットワーク機器１０２に付加するための装置といえる。さらに、ネットワーク機器１０２等の周辺機器（機能付加装置１００を含む。）に特別な設定は必要ではなく、単にネットワーク回線１０８とネットワーク機器１０２との間に機能付加装置１００を設置するだけでよい。したがって機能付加装置１００はあらゆるレベルの需用者ニーズに応えることができるものである。
【０１２４】
［第２の実施の形態］
＜構成＞
図１０に、本発明の第２の実施の形態に係る機能付加装置４５０の機能ブロック図を示す。機能付加装置４５０は、ＳＬＰによる通信機能を備えていないネットワーク機器に対し、ＳＬＰによる通信機能を付加するためのものである。
【０１２５】
機能付加装置４５０のネットワーク環境としては、図１に示すネットワーク９０とほぼ同様なものが想定される。以下に説明する機能付加装置４５０は、図１に示す機能付加装置１００と全く同様に、対象となる機器（この説明では図１０に示すようにネットワーク機器４６６とする。）とネットワーク回線１０８との間に設置することができる。なお、ネットワーク機器４６６は、ＳＮＭＰ通信の機能は持つが、ＳＬＰ通信の機能を持たないものとする。
【０１２６】
図１０を参照して、機能付加装置４５０は、図３に示すものと同様の第１のネットワークインタフェース２０６、第２のネットワークインタフェース２０８、送信先端末情報保存領域２６４、及びリンク監視部２５４を含む。機能付加装置４５０はさらに、ネットワーク機器情報保存領域４５２と第１のパケット受信処理部４５６とを含む。当該ネットワーク機器情報保存領域４５２には、第１のネットワークインタフェース２０６に接続されるネットワーク機器４６６に関するネットワーク機器情報が保存される。当該第１のパケット受信処理部４５６は、第２のネットワークインタフェース２０８に接続された入力経路を有し、第２のネットワークインタフェース２０８からパケットを受けたことに応答して、送信先端末情報保存領域２６４に受信パケットの送信先のＩＰアドレス及びＭＡＣアドレスが登録されているか否かを判定し、登録されていない場合、及び登録されていたとしても受信パケットがＳＬＰによるパケットでない場合には第２のネットワークインタフェース２０６に当該パケットを送信し、一方、受信パケットの送信先ＩＰアドレス及びＭＡＣアドレスが送信先端末情報保存領域２６４に登録されており、かつ当該パケットがＳＬＰによるパケットであれば、ネットワーク機器情報保存領域４５２に保存されているネットワーク機器の情報から問合せに対する返答としてＳＬＰ応答パケットを生成して問合せパケットを送信してきた端末に第２のネットワークインタフェース２０８を介して送信する。
【０１２７】
機能付加装置４５０はさらに、第２のパケット受信処理部４６２とＳＮＭＰリクエスト送信処理部４５８とを含む。当該第２のパケット受信処理部４６２は、後述するＳＮＭＰ応答解析処理部４６４に接続された第１の出力経路と、第２のネットワークインタフェース２０８に接続された第２の出力経路と、第１のネットワークインタフェース２０６に接続された入力経路とを持ち、第１のネットワークインタフェース２０６からパケットを受信したとき、送信先端末情報保存領域２６４にパケットの送信元のＩＰアドレス及びＭＡＣアドレスが登録されていなければ、各アドレスを登録する処理と、受信したパケットがＳＮＭＰに対する応答パケットであれば第１の出力に、それ以外のパケットであれば第２の出力に、それぞれ出力する処理とを行なう。当該ＳＮＭＰリクエスト送信処理部４５８は、送信先端末情報保存領域２６４にＩＰアドレス及びＭＡＣアドレスが登録されたかどうかを監視し、ＩＰアドレス及びＭＡＣアドレスが登録されたときには、登録されたＩＰアドレスをあて先としてそのネットワーク機器の情報を取得することを要求するＳＮＭＰリクエストのパケットを生成し、第１のネットワークインタフェース２０６を介してネットワーク機器４６６に送信する処理を行なう。
【０１２８】
機能付加装置４５０はさらに、第２のパケット受信処理部４６２の第１の出力に接続された入力を持ち、第２のパケット受信処理部４６２からＳＮＭＰ応答のパケットを受信し、パケットを解析してネットワーク機器４６６のネットワーク情報を取得し、取得した情報をネットワーク機器情報保存領域４５２に保存するためのＳＮＭＰ応答解析処理部４６４を含む。
【０１２９】
図１１は、第１のパケット受信処理部４５６の機能をコンピュータプログラムで実現する際の、プログラムの制御構造を示すフローチャートである。図１１を参照して、ステップ４８０において、第１のパケット受信処理部４５６は、第２のネットワークインタフェース２０８からパケットを受信したか、そうでないかを判定する。判定結果がＹＥＳであればステップ４８２に進み、それ以外であればステップ４８０に戻る。
【０１３０】
ステップ４８２において、第１のパケット受信処理部４５６は、受信したパケットの送信先ＩＰアドレス及びＭＡＣアドレスが送信先端末情報保存領域２６４に登録されているか、そうでないかを判定する。判定結果がＹＥＳであればステップ４８４に進み、それ以外であれば、ステップ４８８に進む。
【０１３１】
ステップ４８４において、パケットがＳＬＰリクエストか、そうでないかを判定する。判定結果がＹＥＳであればステップ４８６に進み、それ以外であればステップ４８８に進む。
【０１３２】
ステップ４８６において、第１のパケット受信処理部４５６は、ネットワーク機器情報保存領域４５２を参照し、ネットワーク機器４６６の情報を取得してＳＬＰ応答のためのパケットを生成する。第１のパケット受信処理部４５６はさらに、生成したパケットを第２のネットワークインタフェース２０８を介して、ＳＬＰリクエストを送信してきたネットワーク端末に送信し、ステップ４８０に戻る。
【０１３３】
一方、ステップ４８８においては、パケットを第１のネットワークインタフェース２０６に送信し、ステップ４８０に戻る。すなわち、受信されたパケットの送信先ＩＰアドレス及びＭＡＣアドレスが送信先端末情報保存領域２６４に登録されていない場合、及び登録されていてもそのパケットがＳＬＰリクエストではない場合には、何もせず当該パケットを第１のネットワークインタフェース２０６からネットワーク機器４６６に送信する。
【０１３４】
図１２は、第２のパケット受信処理部４６２の機能をコンピュータプログラムで実現する際の、プログラムの制御構造を示すフローチャートである。図１２を参照して、ステップ５００において、第２のパケット受信処理部４６２は、第１のネットワークインタフェース２０６からパケットを受信したか、そうでないかを判定する。判定結果がＹＥＳであればステップ５０２に進み、それ以外であればステップ５００に戻る。
【０１３５】
ステップ５０２において、第２のパケット受信処理部４６２は、パケットの送信元ＩＰアドレス及びＭＡＣアドレスが送信先端末情報保存領域２６４に登録されているか、そうでないかを判定する。判定結果がＹＥＳであればステップ５０４に進み、それ以外であればステップ５０６に進む。
【０１３６】
ステップ５０６においては、受信パケットの送信元ＩＰアドレス及びＭＡＣアドレスを送信先端末情報保存領域２６４に記憶させ、ステップ５０４に進む。
【０１３７】
ステップ５０４においては、パケットがＳＮＭＰ応答であるか、そうでないか判定される。判定結果がＹＥＳであれば制御はステップ５０８に進み、それ以外であればステップ５１０に進む。
【０１３８】
ステップ５０８において、第２のパケット受信処理部４６２は、パケットをＳＮＭＰ応答解析処理部４６４に送信し、ステップ５００に戻る。一方、ステップ５１０においては、第２のパケット受信処理部４６２は、パケットを第２のネットワークインタフェース２０８に送信し、ステップ５００に戻る。
【０１３９】
＜動作＞
以上構成を説明した機能付加装置４５０は以下のように動作する。
【０１４０】
図１０を参照して、最初はネットワーク機器情報保存領域４５２及び送信先端末情報保存領域２６４には何の情報も保存されていないものとする。また、第１のネットワークインタフェース２０６にもネットワーク機器が接続されていないものとする。ネットワーク機器４６６が第１のネットワークインタフェース２０６に接続されると、リンク監視部２５４が第１のネットワークインタフェース２０６とネットワーク機器４６６とのリンクが切断されたか否かに関する監視を開始する。
【０１４１】
図１３は、図１０に示すネットワーク回線１０８に接続されたネットワーク端末１０４が、機能付加装置１００を介して、ネットワーク機器４６６をあて先としてＳＬＰ通信を行なうときのシーケンス図である。
【０１４２】
図１３を参照して、先ず、矢印５２０により示されるように、ネットワーク端末１０４からネットワーク機器４６６へ、何らかのパケット、例えばＡＲＰリクエストが送信される。
【０１４３】
図１０を参照して、ネットワーク端末１０４から送信されたＡＲＰリクエストのパケットは、第２のネットワークインタフェース２０８を介して、第１のパケット受信処理部４５６で受信される。この状態では、送信先端末情報保存領域２６４には、パケットの送信先ＩＰアドレス及びＭＡＣアドレスがまだ記憶されていない（図１１、ステップ４８２においてＮＯ）。したがって、第１のパケット受信処理部４５６はこのパケットを第１のネットワークインタフェース２０６を介して、ネットワーク機器４６６に送信する（図１１、ステップ４８８）。
【０１４４】
図１３を参照して、矢印５２２により示されるように、ネットワーク機器４６６が、ネットワーク端末１０４に、ネットワーク機器４６６のＭＡＣアドレスの情報を付与したＡＲＰ応答を返す。このとき、図１０を参照して、ＡＲＰ応答は先ず、ネットワーク機器４６６から第１のネットワークインタフェース２０６を介して、第２のパケット受信処理部４６２で受信される。第２のパケット受信処理部４６２は送信先端末情報保存領域２６４を参照して、ＡＲＰ応答のパケットの送信元ＩＰアドレス及びＭＡＣアドレスが記憶されているかどうかを確認する。現状では、何も登録されていない（図１２、ステップ５０２においてＮＯ）ので、送信先端末情報保存領域２６４にパケットの送信元ＩＰアドレス及びＭＡＣアドレスを登録する（図１２、ステップ５０６）。このパケット（ＡＲＰ応答）はＳＮＭＰ応答パケットではないので（図１２、ステップ５０４においてＮＯ）、第２のパケット受信処理部４６２は、このＡＲＰ応答のパケットを第２のネットワークインタフェース２０８に与え（図１２、ステップ５１０）、その結果、このパケットはネットワーク端末１０４に到達する。
【０１４５】
ＡＲＰ応答が機能付加装置４５０を通過するとき、送信先端末情報保存領域２６４にネットワーク機器４６６のＩＰアドレス及びＭＡＣアドレスが記憶された（図１２、ステップ５０６）ので、それをＳＮＭＰリクエスト送信処理部４５８が検知する。そのため、ＳＮＭＰリクエスト送信処理部４５８は、ネットワーク機器４６６の情報を取得するためのＳＮＭＰリクエストのパケットを生成し、矢印５２４で示すように、第１のネットワークインタフェース２０６を介して、ネットワーク機器４６６に送信する。
【０１４６】
図１３を参照して、このＳＮＭＰリクエストに応答して、矢印５２６により示されるように、ネットワーク機器４６６から機能付加装置４５０に対し、ＳＮＭＰ応答パケットが送信される。図１０を参照して、ＳＮＭＰ応答のためのパケットは、第１のネットワークインタフェース２０６から第２のパケット受信処理部４６２に与えられる。既にネットワーク機器４６６のＩＰアドレス及びＭＡＣアドレスが送信先端末情報保存領域２６４に登録されている（図１２、ステップ５０２においてＹＥＳ）ため、第２のパケット受信処理部４６２は、受信パケットがＳＮＭＰ応答か否かを判定する（図１２、ステップ５０４）。受信パケットがＳＮＭＰ応答であるため（ステップ５０４においてＹＥＳ）、第２のパケット受信処理部４６２は、このＳＮＭＰ応答パケットをＳＮＭＰ応答解析処理部４６４に送信する。ＳＮＭＰ応答解析処理部４６４は、このＳＮＭＰ応答のパケットを解析してネットワーク機器４６６の情報を取得する。取得した情報はネットワーク機器情報保存領域４５２に記憶される。
【０１４７】
図１３を参照して、ネットワーク回線１０８上のネットワーク端末１０４が、矢印５２８により示されるようにネットワーク機器４６６と、ＳＬＰポートでＴＣＰ接続を開始するものとする。機能付加装置４５０の第２のネットワークインタフェース２０８がこのパケットを受信する。
【０１４８】
機能付加装置４５０の第２のネットワークインタフェース２０８は、矢印５３０で示されるように、ＴＣＰ接続に対する応答をネットワーク端末１０４にパケット送信する。これに対し、ネットワーク端末１０４は矢印５３２で示されるようにネットワーク機器４６６をあて先としてＴＣＰ応答確認のためのパケットを送信する。このようにして、ネットワーク端末１０４は、ネットワーク機器４６６との間でＳＬＰポートでのＴＣＰ接続を確立したと認識する。
【０１４９】
ネットワーク端末１０４は、図１３の矢印５３４により示すように、ネットワーク機器４６６をあて先としてＳＬＰリクエストを送信する。このＳＬＰリクエストのあて先はネットワーク機器４６６であるが、機能付加装置４５０の第１のパケット受信処理部４５６（図１０参照）がこのＳＬＰリクエストに応答し、ネットワーク機器情報保存領域４５２からネットワーク機器４６６の機器情報を読出し、矢印５３６により示すように、ネットワーク端末１０４にＳＬＰ応答のパケットを送信する。ＳＬＰ応答のパケットは第２のネットワークインタフェース２０８、及びネットワーク回線１０８を介して、ネットワーク端末１０４に到達する。
【０１５０】
なお、ＳＬＰ通信はＴＣＰだけでなくＵＤＰでも可能であり、この場合、ステップ５２８、ステップ５３０及びステップ５３２が不要となる。
【０１５１】
＜第２の実施の形態効果＞
本実施の形態に係る機能付加装置４５０を使用することにより、ＳＬＰには対応していないネットワーク機器４６６が、ネットワーク端末１０４からのＳＬＰリクエストに対して応答することができる。実際にはこの応答は機能付加装置４５０が行なっているが、ネットワーク端末１０４から見るとネットワーク機器４６６が応答をしているように見える。したがってネットワーク端末１０４としては、ＳＬＰ通信を使用することによって、ＳＬＰに対応していないネットワーク機器４６６のネットワーク情報を取得することができる。この際、ネットワーク機器４６６には独自のＩＰアドレスを割当てることは不要であり、ユーザは、機能付加装置４５０、ネットワーク機器４６６、及びネットワーク端末１０４に対して、予め何らかの設定をする必要がない。したがって機能付加装置４５０は、あらゆるレベルの需要者ニーズに対応することができる。さらに、ＩＰｖ６を採用した、ブロードキャストが使用されないネットワークに、ＳＬＰに対応していないネットワーク機器を接続し、他のネットワーク端末から利用させることが可能になる。
【０１５２】
［第３の実施の形態］
＜構成＞
図１４に、本発明の第３の実施の形態に係る機能付加装置５５０の機能ブロック図を示す。この機能付加装置５５０も、第１及び第２の実施の形態と同様、対象となる機器とネットワーク回線との間に設置される。なお、以下の説明では、機能付加装置５５０にネットワーク機器５６０が接続されるものとして説明する。
【０１５３】
図１４を参照して、機能付加装置５５０は、第１のネットワークインタフェース２０６及び第２のネットワークインタフェース２０８と、ネットワーク回線１０８に接続されたネットワーク端末からネットワーク機器５６０をあて先として送信されたパケットのうち、破棄すべきものを特定する条件であるフィルタ情報を記憶するためのフィルタ情報保存領域５５２と、第２のネットワークインタフェース２０８からパケットを受信するように接続され、フィルタ情報保存領域５５２に保存された条件に合致するパケットを破棄し、それ以外のパケットを第１のネットワークインタフェース２０６を介してネットワーク機器５６０に送信するための第１のパケット受信処理部５５４と、第１のネットワークインタフェース２０６からパケットを受信するように接続され、フィルタ情報保存領域５５２に保存された条件に合致するパケットは破棄し、それ以外のパケットはそのまま第２のネットワークインタフェース２０８に送信するための第２のパケット受信処理部５５６とを含む。
【０１５４】
本実施の形態に係る機能付加装置５５０では、フィルタ情報保存領域５５２はパケットのポート番号、ＩＰアドレス、及びＭＡＣアドレスを記憶している。第１のパケット受信処理部５５４は、第２のネットワークインタフェース２０８から受信したパケットのポート番号、ＩＰアドレス、及びＭＡＣアドレスのどれか一つが、フィルタ情報保存領域５５２に記憶されているポート番号、ＩＰアドレス、及びＭＡＣアドレスのどれかと一致するかどうかを判定し、一致するものが存在すればパケットを破棄し、いずれとも一致しなければパケットを第１のネットワークインタフェース２０６に送信する。第２のパケット受信処理部５５６の機能も第1のパケット受信処理部５５４と同様である。
【０１５５】
なお、このフィルタリング処理を行なうかどうかは、ユーザが予め定めることができる。
【０１５６】
図１５は、第１のパケット受信処理部５５４の機能をコンピュータプログラムで実現する際の、プログラムの制御構造を示すフローチャートである。図１５を参照して、ステップ５７０において、第１のパケット受信処理部５５４は、第２のネットワークインタフェース２０８からパケットを受信したか、そうでないかを判定する。判定結果がＹＥＳであればステップ５７２に進み、それ以外であればステップ５７０に戻る。
【０１５７】
ステップ５７２において、第１のパケット受信処理部５５４は、受信したパケットのポート番号、ＩＰアドレス、及びＭＡＣアドレスのどれか一つがフィルタ情報保存領域５５２に記憶されているものと一致するか否かを判定する。判定結果がＹＥＳであればステップ５７４に進み、それ以外であればステップ５７６に進む。
【０１５８】
ステップ５７４において、第１のパケット受信処理部５５４は受信パケットを破棄し、ステップ５７０に戻る。
【０１５９】
一方、ステップ５７６においては、第１のパケット受信処理部５５４は受信パケットを第１のネットワークインタフェース２０６に送信し、ステップ５７０に戻る。
【０１６０】
＜動作＞
以上、構成を説明した機能付加装置５５０は以下のように動作する。図１４を参照して、ネットワーク回線１０８に接続されたネットワーク端末１０４からネットワーク機器５６０に何らかのパケットを送信したものとする。フィルタ情報保存領域５５２には、予め、破棄するための複数のポート番号、ＩＰアドレス、及びＭＡＣアドレスが記憶されているものとする。
【０１６１】
ネットワーク端末１０４から送信されたパケットはネットワーク回線１０８、及び第２のネットワークインタフェース２０８を介して、第１のパケット受信処理部５５４に到達する。第１のパケット受信処理部５５４は、受信したパケットのポート番号、ＩＰアドレス、及びＭＡＣアドレスのどれか一つがフィルタ情報保存領域５５２に記憶されているものと一致するか否かを判定する。記憶されていれば（図１５、ステップ５７２においてＹＥＳ）、第１のパケット受信処理部５５４は受信したパケットを破棄し（ステップ５７４）、そうでなければ（ステップ５７２においてＮＯ）パケットを第１のネットワークインタフェース２０６に送信する（ステップ５７６）。第１のネットワークインタフェース２０６は、パケットをネットワーク機器５６０に送信し、パケットは通信線１１０を介してネットワーク機器５６０に到達する。
【０１６２】
ネットワーク機器５６０は、受信したパケットが自分あてのものであるから、このパケットに対して何らかの処理を行ない、応答パケットを生成して、ネットワーク端末１０４に向けて、応答パケットを送信する。このパケットは通信線１１０及び第１のネットワークインタフェース２０６を介して第２のパケット受信処理部５５６で受信される。
【０１６３】
第２のパケット受信処理部５５６は、受信したパケットのポート番号、ＩＰアドレス、及びＭＡＣアドレスが、フィルタ情報保存領域５５２に記憶されているポート番号、ＩＰアドレス、及びＭＡＣアドレスのいずれかと一致する、という条件が満たされているか否かを判定する。条件が満たされていれば、第２のパケット受信処理部５５６はこのパケットを破棄し、さもなければこのパケットを第２のネットワークインタフェース２０８に送信する。第２のネットワークインタフェース２０８はこのパケットをネットワーク回線１０８上に送信する。その結果、応答パケットはネットワーク端末１０４に到達する。
【０１６４】
＜第３の実施の形態の効果＞
本実施の形態に係る機能付加装置５５０を使用することにより、機能付加装置５５０はネットワーク機器５６０にとって不正なポート番号、ＩＰアドレス、又はＭＡＣアドレスを有するパケットを破棄することができる。したがって、上記のフィルタリング処理によって、十分なセキュリティ機能を備えていないネットワーク機器５６０を不正なアクセスから保護することができる。
【０１６５】
なお、この実施の形態では、ネットワーク機器５６０あてのパケットだけではなく、ネットワーク機器５６０からのパケットについてもフィルタリング処理を行なっている。しかし本発明はそのような実施の形態には限定されない。第１のパケット受信処理部５５４と第２のパケット受信処理部５５６のいずれか一方のみを採用するようにしてもよい。
【０１６６】
また、本実施の形態では、パケットがある条件を満たしている場合に当該パケットを破棄するようにし、他のパケットを中継するようにしているが、本発明はそのような実施の形態には限定されない。例えば、パケットがある条件を満たしているときには当該パケットを中継するが、それ以外の場合にはパケットを破棄するようにしてもよい。
【０１６７】
［第４の実施の形態］
＜構成＞
図１６に、本発明の第４の実施の形態に係る機能付加装置６００の機能ブロック図を示す。機能付加装置６００のネットワーク環境は、図１に示すネットワーク環境とほぼ同様である。また、機能付加装置６００のハードウェア構成は、図２に示すハードウェア構成とほぼ同様である。
【０１６８】
本実施の形態に係る機能付加装置６００は、機能付加装置６００が外部から受信したパケットの宛先ポート番号を、機能付加装置６００に接続されたネットワーク機器で使用するポート番号に変換し、逆に機能付加装置６００に接続されたネットワーク機器から送信される送信元ポート番号に対して受信時と逆の変換を行なう機能を持つ。
【０１６９】
図１６を参照して、機能付加装置６００は、第１のネットワークインタフェース２０６及び第２のネットワークインタフェース２０８を含む。第１のネットワークインタフェース２０６にはネットワーク機器が接続され、第２のネットワークインタフェース２０８はネットワーク回線１０８に接続される。以下の説明では、第１のネットワークインタフェース２０６に接続されるネットワーク機器がネットワーク機器６１０であるものとする。
【０１７０】
機能付加装置６００はさらに、ネットワーク回線１０８に接続されたネットワーク端末の間で使用されるポート番号と、ネットワーク機器６１０で動作するアプリケーション（サービス）が使用するポート番号との間の対応付けを記憶したポート番号変換情報保存領域６０２と、第２のネットワークインタフェース２０８からパケットを受信して、受信パケットのポート番号を、ポート番号変換情報保存領域６０２に保存された対応付けにしたがってネットワーク機器６１０のアプリケーション用のポート番号に置換し、更新されたパケットを第１のネットワークインタフェース２０６に送信するための第１のパケット受信処理部６０４と、第１のネットワークインタフェース２０６からパケットを受信して、受信パケットのポート番号を、ポート番号変換情報保存領域６０２に保存された対応付けにしたがって外部のネットワーク機器用のポート番号に戻して、更新されたパケットを第２のネットワークインタフェース２０８に送信するための第２のパケット受信処理部６０６とを含む。
【０１７１】
テーブル１に、ポート番号変換情報保存領域６０２に記憶される情報の例を示し、テーブル１を参照してこの情報の詳細について説明する。
【０１７２】
【表１】
2009038731.tif 000003
このテーブル１は、外部ポート番号と、内部ポート番号との対からなるエントリを複数個格納している。
【０１７３】
外部ポート番号とは、ここでは、ネットワーク回線１０８に接続されたネットワーク端末から見たときにネットワーク機器６１０が提供するサービスが使用しているポート番号のように見えるポート番号のことをいう。つまり、外部ポート番号とは、第１のパケット受信処理部６０４によって変換される前のポート番号のことである。一方、内部ポート番号とは、ネットワーク機器６１０が提供しているサービスで使用しているポート番号である。
【０１７４】
内部ポート番号とは、第２のパケット受信処理部６０６が置換対象とするポート番号でもある。すなわち、第２のパケット受信処理部６０６は、ネットワーク機器６１０から送信されたパケットを第１のネットワークインタフェース２０６から受け取り、そのポート番号（内部ポート番号）を、テーブル１を参照して対応する外部ポート番号に変換し、更新後のパケットをネットワーク上に送出する機能を持つ。
【０１７５】
なお、本実施の形態では、外部から受信したパケットのうち、テーブル１の外部ポート番号にないポート番号を持つパケットは第１のパケット受信処理部６０４により破棄される。同様に、ネットワーク機器６１０が出力したパケットのうち、ポート番号変換情報保存領域６０２に保持されている内部ポート番号以外のポート番号を持つパケットも第２のパケット受信処理部６０６により破棄される。したがって、外部から直接に内部ポート番号を指定してパケットをネットワーク機器６１０あてに送信しても、その内部ポート番号と一致する外部ポート番号がテーブル１にない限り、第１のパケット受信処理部６０４によってそのパケットは破棄されてしまう。指定されたポート番号が、たまたまテーブル１内の外部ポート番号と一致しても、そのポート番号は当初の番号と全く異なるポート番号に変換されてネットワーク機器６１０に送信される。そのため、テーブル１の内容を知らない限り、所望のサービスをネットワーク機器６１０から受けることはできない。
【０１７６】
図１７は、第１のパケット受信処理部６０４の機能をコンピュータプログラムで実現する際の、プログラムの制御構造を示すフローチャートである。図１７を参照して、ステップ６２０において、第１のパケット受信処理部６０４は、第２のネットワークインタフェース２０８からパケットを受信したか、そうでないかを判定する。判定結果がＹＥＳであればステップ６２２に進み、それ以外であればステップ６２０に戻る。
【０１７７】
ステップ６２２において、第１のパケット受信処理部６０４は、ポート番号変換情報保存領域６０２を参照して、受信したパケットの宛先ポート番号が、テーブル１に示す外部ポート番号の欄に存在するか、そうでないかを判定する。判定結果がＹＥＳであればステップ６２４に進み、それ以外であればステップ６２８に進む。
【０１７８】
ステップ６２８において、第１のパケット受信処理部６０４は受信パケットを破棄し、ステップ６２０に戻る。
【０１７９】
ステップ６２４において、パケットの宛先ポート番号が、対応する内部ポート番号に置換される。制御はステップ６２６に進む。
【０１８０】
ステップ６２６において、このパケットを第１のネットワークインタフェース２０６に送信する。制御はステップ６２０に戻る。
【０１８１】
図１８は、第２のパケット受信処理部６０６の機能をコンピュータプログラムで実現する際の、プログラムの制御構造を示すフローチャートである。図１８を参照して、ステップ６４０において、第２のパケット受信処理部６０６は、第１のネットワークインタフェース２０６からパケットを受信したか、そうでないかを判定する。判定結果がＹＥＳであればステップ６４２に進み、それ以外であればステップ６４０に戻る。
【０１８２】
ステップ６４２において、第２のパケット受信処理部６０６は、ポート番号変換情報保存領域６０２を参照して、受信したパケットの送信元ポート番号が、テーブル１に示す内部ポート番号の欄に存在するか、そうでないかを判定する。判定結果がＹＥＳであればステップ６４４に進み、それ以外であればステップ６４８に進む。
【０１８３】
ステップ６４８において、第２のパケット受信処理部６０６は受信パケットを破棄し、ステップ６４０に戻る。
【０１８４】
ステップ６４４において、パケットの送信元ポート番号が、ステップ６４２において一致した内部ポート番号に対応する外部ポート番号に変換される。制御はステップ６４６に進む。
【０１８５】
ステップ６４６において、パケットは第２のネットワークインタフェース２０８に送信される。この後、制御はステップ６４０に戻る。
【０１８６】
＜動作＞
以上構成を説明した機能付加装置６００は以下のように動作する。図１６を参照して、ネットワーク回線１０８に接続されたネットワーク端末１０４からネットワーク機器６１０へ、パケット送信を行ない、ネットワーク機器６１０から送信元のネットワーク端末１０４に応答が返るときの、機能付加装置６００の動作について説明する。ポート番号変換情報保存領域６０２には、予め、テーブル１に示すように外部ポート番号と内部ポート番号とからなる複数のエントリが記憶されているものとする。
【０１８７】
図１６を参照して、ネットワーク端末１０４から送信されたパケットはネットワーク回線１０８、及び第２のネットワークインタフェース２０８を介して、第１のパケット受信処理部６０４に到達する。
【０１８８】
第１のパケット受信処理部６０４は、ポート番号変換情報保存領域６０２を参照し、受信したパケットの宛先ポート番号が変換対象のものであればポート番号を変換して第１のネットワークインタフェース２０６に送信する。変換対象でなければ、パケットは破棄される。
【０１８９】
第１のネットワークインタフェース２０６は、受信したパケットをネットワーク機器６１０に向けて送信する。パケットは通信線１１０を介して、ネットワーク機器６１０に到達する。
【０１９０】
ネットワーク機器６１０は、受信したパケットの送信先ＩＰアドレスが自分のＩＰアドレスであり、ポート番号が自己の提供するアプリケーションサービスのポート番号に一致していれば、そのサービスを実行して、受信したパケットと同じポート番号を送信元ポート番号に持つ応答パケットを生成して、ネットワーク端末１０４に向けて送信する。応答パケットは通信線１１０、及び第１のネットワークインタフェース２０６を介して第２のパケット受信処理部６０６に到達する。一方、受信パケットの送信先ＩＰアドレスがネットワーク機器６１０のＩＰアドレスと一致しないか、一致してもネットワーク機器６１０の提供するアプリケーションサービスのポート番号と一致していなければ、ネットワーク機器６１０は何もしない。
【０１９１】
第２のパケット受信処理部６０６は、ポート番号変換情報保存領域６０２を参照し、受信したパケットの送信元ポート番号が内部ポート番号の欄に存在するかどうかを判定する。存在すれば、受信パケットの送信元ポート番号を、対応する外部ポート番号に変換し、第２のネットワークインタフェース２０８に送信する。存在しなければ、パケットは破棄される。
【０１９２】
このようにして、ネットワーク機器６１０から送信されたパケットは、第２のネットワークインタフェース２０８、及びネットワーク回線１０８を介して、ネットワーク端末１０４に到達する。
【０１９３】
例えば、外部のネットワーク端末からネットワーク機器６１０に向けて送信されたパケットの宛先ポート番号が「６２９４７」であるものとする。テーブル１を参照して、外部ポート番号には「６２９４７」があるので、第１のパケット受信処理部６０４は受信パケットの宛先ポート番号を、対応する内部ポート番号である「４４３」に変換する。そのようにして更新されたパケットが、ネットワーク機器６１０に送信される。ネットワーク機器６１０がＨＴＴＰＳ通信の可能な機器であり、かつネットワーク機器６１０内にＷＷＷサーバが起動していれば、このパケットに対する応答としてＷＷＷサーバがＨＴＴＰＳ応答パケットを出力することになる。
【０１９４】
この場合、応答パケットの送信元ポート番号はやはり４４３である。第２のパケット受信処理部６０６は、この内部ポート番号「４４３」に対応する外部ポート番号「６２９４７」をテーブル１から見出し、この値で送信元ポート番号を置換して、更新後のパケットを第２のネットワークインタフェース２０８を介して外部に送信する。外部のネットワーク端末は、このパケットを受信して、所定の処理をする。ネットワーク端末が最初に送信したパケットの宛先ポート番号も「６２９４７」であったから、このネットワーク端末では送信したパケットと受信したパケットとの対応をとることができる。
【０１９５】
一方、外部のネットワーク端末が、例えばポート番号＝４４３のパケットをネットワーク機器６１０に向けて送信したものとする。機能付加装置６００の第１のパケット受信処理部６０４は、外部ポート番号＝４４３がテーブル１にないため、このパケットを破棄する。したがって外部のネットワーク端末がネットワーク機器６１０によるＨＴＴＰＳ通信のサービスを受けることはできない。
【０１９６】
このようにポート番号を内部と外部とで置換することによって、実際はネットワーク機器６１０が提供するポート番号が一般的なものと同じであるにもかかわらず、外部からはネットワーク機器６１０が提供するサービスのポート番号は特殊な番号であるように見える。したがって、外部からは、このネットワーク機器６１０の提供するサービスがどのようなものであるか、又は、どのようなポート番号でどのプロトコルによってアクセスすればサービスを受けられるかを知ることができない。その結果、ネットワーク機器６１０に十分なセキュリティ機能が備わっていない場合、機能付加装置６００によってそのセキュリティを高めることができる。
【０１９７】
＜第４の実施の形態の効果＞
以上のように本実施の形態に係る機能付加装置６００を使用することにより、ネットワーク回線１０８に接続されているネットワーク端末からネットワーク機器６１０のサービス内容を知る目的、又は不正なアクセスをする目的で、一般的に使用されるポート番号を使用してネットワーク機器６１０にアクセスしようとしても、容易にはアクセスできない。また、ネットワーク機器６１０においてどのようなサービスがどのようなポート番号で提供されているかを知ることも難しくなる。その結果、十分なセキュリティ機能を持たないネットワーク機器のセキュリティ機能を、機能付加装置６００によって高めることが可能となる。
【０１９８】
なお、第１〜第４の実施の形態の動作で説明したネットワーク端末１０４及びネットワーク端末１０６は、ＰＣでなければならないわけではなく、どんなネットワーク端末であっても良い。
【０１９９】
今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内でのすべての変更を含む。
【図面の簡単な説明】
【０２００】
【図１】本発明の第１の実施の形態に係る機能付加装置１００のネットワーク環境を示す図である。
【図２】本発明の第１の実施の形態に係る機能付加装置１００のハードウェア構成を示す図である。
【図３】本発明の第１の実施の形態に係る機能付加装置１００の概略の機能的構成を示すブロック図である。
【図４】図３の第１のパケット受信処理部２５０を実現するコンピュータプログラムの制御構造を示すフローチャートである。
【図５】図３のリンク監視部２５４を実現するコンピュータプログラムの制御構造を示すフローチャートである。
【図６】図３の第２のパケット受信処理部２５６を実現するコンピュータプログラムの制御構造を示すフローチャートである。
【図７】図３のＨＴＴＰ／ＨＴＴＰＳエンコード処理部２５８を実現するコンピュータプログラムの制御構造を示すフローチャートである。
【図８】本発明の第１の実施の形態に係る機能付加装置１００において、ＨＴＴＰ通信を行なうときのシーケンスを示す図である。
【図９】本発明の第１の実施の形態に係る機能付加装置１００において、ＨＴＴＰＳ通信を行なうときのシーケンスを示す図である。
【図１０】本発明の第２の実施の形態に係る機能付加装置４５０の概略の機能的構成を示すブロック図である。
【図１１】図１０の第１のパケット受信処理部４５６を実現するコンピュータプログラムの制御構造を示すフローチャートである。
【図１２】図１０の第２のパケット受信処理部４６２を実現するコンピュータプログラムの制御構造を示すフローチャートである。
【図１３】本発明の第２の実施の形態に係る機能付加装置４５０において、ＳＬＰ通信によりネットワーク機器の情報を取得する処理のシーケンスを示す図である。
【図１４】本発明の第３の実施の形態に係る機能付加装置５５０の概略の機能的構成を示すブロック図である。
【図１５】図１４の第１のパケット受信処理部５５４を実現するコンピュータプログラムの制御構造を示すフローチャートである。
【図１６】本発明の第４の実施の形態に係る機能付加装置６００の概略の機能的構成を示すブロック図である。
【図１７】図１６の第１のパケット受信処理部６０４を実現するコンピュータプログラムの制御構造を示すフローチャートである。
【図１８】図１６の第２のパケット受信処理部６０６を実現するコンピュータプログラムの制御構造を示すフローチャートである。
【符号の説明】
【０２０１】
９０  ネットワーク
１００，４５０，５５０，６００  機能付加装置
１０４，１０６  ネットワーク端末
１０８  ネットワーク回線
１１０  通信線
２０６  第１のネットワークインタフェース
２０８  第２のネットワークインタフェース
２５０，４５６，５５４，６０４  第１のパケット受信処理部
２５２  ＨＴＴＰ／ＨＴＴＰＳデコード処理部
２５４  リンク監視部
２５６，４６２，５５６，６０６  第２のパケット受信処理部
２５８  ＨＴＴＰ／ＨＴＴＰＳエンコード処理部
２６０  送信元端末情報保存領域
２６２  証明書情報保存領域
２６４  送信先端末情報保存領域
４５２  ネットワーク機器情報保存領域
４５８  ＳＮＭＰリクエスト送信処理部
４６４  ＳＮＭＰ応答解析処理部
５５２  フィルタ情報保存領域
６０２  ポート番号変換情報保存領域
【図１】
2009038731.tif 000004
【図２】
2009038731.tif 000005
【図３】
2009038731.tif 000006
【図４】
2009038731.tif 000007
【図５】
2009038731.tif 000008
【図６】
2009038731.tif 000009
【図７】
2009038731.tif 000010
【図８】
2009038731.tif 000011
【図９】
2009038731.tif 000012
【図１０】
2009038731.tif 000013
【図１１】
2009038731.tif 000014
【図１２】
2009038731.tif 000015
【図１３】
2009038731.tif 000016
【図１４】
2009038731.tif 000017
【図１５】
2009038731.tif 000018
【図１６】
2009038731.tif 000019
【図１７】
2009038731.tif 000020
【図１８】
2009038731.tif 000021