(57)【要約】【課題】外部装置からのパケットをより適切にフィルタリングすることを目的とする。【解決手段】パケットから外部装置のアドレス情報を取得し、外部装置のアドレス情報がフィルタ情報に登録されているか否かを判断し、登録されていないと判断した場合、外部装置のアドレス情報から外部装置の装置識別情報を取り出し、取り出した装置識別情報と同じ装置識別情報を持つアドレス情報がフィルタ情報に登録されているか否かを判断し、登録されていると判断した場合、フィルタ情報に外部装置のアドレス情報を登録する更新を行うことによって課題を解決する。【選択図】図６
2013090089.tif 000002
【特許請求の範囲】
【請求項１】
外部装置と通信可能に接続され、装置を識別可能な装置識別情報を含むアドレス情報が登録されたフィルタ情報に従って前記外部装置から受信したパケットのフィルタリングを行う情報処理装置であって、
前記パケットから前記外部装置のアドレス情報を取得する取得手段と、
前記外部装置のアドレス情報が前記フィルタ情報に登録されているか否かを判断し、登録されていないと判断した場合、前記外部装置のアドレス情報から前記外部装置の装置識別情報を取り出す取出手段と、
前記取出手段で取り出された装置識別情報と同じ装置識別情報を持つアドレス情報が前記フィルタ情報に登録されているか否かを判断し、登録されていると判断した場合、前記フィルタ情報に前記外部装置のアドレス情報を登録する更新を行う更新手段と、を有することを特徴とする情報処理装置。
【請求項２】
前記外部装置に設けられているアドレス情報を管理する管理装置と通信可能に接続され、
前記外部装置のアドレス情報をもとに前記管理装置に問合せを行って前記外部装置のアドレス情報とは異なる前記外部装置の他のアドレス情報を取得するアドレス情報取得手段を更に有し、
前記更新手段は、前記装置識別情報を持つアドレス情報が前記フィルタ情報に登録されていると判断し、更に、前記アドレス情報取得手段で前記他のアドレス情報が取得されたと判断した場合、前記フィルタ情報に前記他のアドレス情報を登録する更新を行うことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記更新手段は、前記装置識別情報を持つアドレス情報が前記フィルタ情報に登録されていると判断し、更に、前記装置識別情報を持つアドレス情報に対して存在しているかを確認する確認パケットを送付して前記確認パケットに対する応答パケットの受信を一定の時間待ち受け、前記応答パケットを前記一定の時間内に受信しないと判断した場合、前記装置識別情報を持つアドレス情報を前記フィルタ情報から削除する更新を行うことを特徴とする請求項１記載の情報処理装置。
【請求項４】
アドレス情報には、装置が接続される通信回線を識別可能な通信回線識別情報が更に含まれ、
前記更新手段は、前記装置識別情報を持つアドレス情報が前記フィルタ情報に登録されていると判断し、更に、前記装置識別情報を持つアドレス情報の通信回線識別情報と同じ通信回線識別情報を持つアドレス情報が前記フィルタ情報に登録されているか否かを判断して登録されていると判断した場合、登録されていると判断したアドレス情報の通信回線識別情報を前記外部装置のアドレス情報の通信回線識別情報に変更する更新を行うことを特徴とする請求項１又は２記載の情報処理装置。
【請求項５】
アドレス情報には、装置が接続される通信回線を識別可能な通信回線識別情報が更に含まれ、
前記装置識別情報を持つアドレス情報の通信回線識別情報と同じ通信回線識別情報を持つアドレス情報が前記フィルタ情報に登録されているか否かを判断し、登録されていると判断した場合、登録されていると判断したアドレス情報の通信回線識別情報を前記外部装置のアドレス情報の通信回線識別情報に変更した候補アドレス情報を生成する生成手段を更に有し、
前記更新手段は、前記装置識別情報を持つアドレス情報が前記フィルタ情報に登録されていると判断し、更に、前記候補アドレス情報に対して存在しているかを確認する確認パケットを送付して前記確認パケットに対する応答パケットの受信を一定の時間待ち受け、前記応答パケットを前記一定の時間内に受信したと判断した場合、前記候補アドレス情報を前記フィルタ情報に登録する更新を行うことを特徴とする請求項１又は３記載の情報処理装置。
【請求項６】
前記更新手段は、前記生成手段で登録されていると判断されたアドレス情報に対して存在しているかを確認する確認パケットを送付して前記確認パケットに対する応答パケットの受信を一定の時間待ち受け、前記応答パケットを前記一定の時間内に受信しないと判断した場合、前記生成手段で登録されている判断されたアドレス情報を前記フィルタ情報から削除する更新を行うことを特徴とする請求項５記載の情報処理装置。
【請求項７】
前記外部装置のアドレス情報は、ＩＰｖ６ステートレスアドレスであることを特徴とする請求項１乃至６の何れか１項記載の情報処理装置。
【請求項８】
前記外部装置のアドレス情報の装置識別情報は、インターフェースＩＤであることを特徴とする請求項１乃至７の何れか１項記載の情報処理装置。
【請求項９】
前記外部装置のアドレス情報の通信回線識別情報は、プレフィックス番号であることを特徴とする請求項４乃至６の何れか１項記載の情報処理装置。
【請求項１０】
外部装置と通信可能に接続され、装置を識別可能な装置識別情報を含むアドレス情報が登録されたフィルタ情報に従って前記外部装置から受信したパケットのフィルタリングを行う情報処理装置における情報処理方法であって、
前記パケットから前記外部装置のアドレス情報を取得する取得工程と、
前記外部装置のアドレス情報が前記フィルタ情報に登録されているか否かを判断し、登録されていないと判断した場合、前記外部装置のアドレス情報から前記外部装置の装置識別情報を取り出す取出工程と、
前記取出工程で取り出された装置識別情報と同じ装置識別情報を持つアドレス情報が前記フィルタ情報に登録されているか否かを判断し、登録されていると判断した場合、前記フィルタ情報に前記外部装置のアドレス情報を登録する更新を行う更新工程と、を有することを特徴とする情報処理方法。
【請求項１１】
外部装置と通信可能に接続され、装置を識別可能な装置識別情報を含むアドレス情報が登録されたフィルタ情報に従って前記外部装置から受信したパケットのフィルタリングを行うコンピュータを、
前記パケットから前記外部装置のアドレス情報を取得する取得手段と、
前記外部装置のアドレス情報が前記フィルタ情報に登録されているか否かを判断し、登録されていないと判断した場合、前記外部装置のアドレス情報から前記外部装置の装置識別情報を取り出す取出手段と、
前記取出手段で取り出された装置識別情報と同じ装置識別情報を持つアドレス情報が前記フィルタ情報に登録されているか否かを判断し、登録されていると判断した場合、前記フィルタ情報に前記外部装置のアドレス情報を登録する更新を行う更新手段として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、ＷＷＷ（world wide web）などインターネットの普及により、不審な外部装置によるリモートアクセス、アタック攻撃、パケット盗聴などのネットワークセキュリティの脆弱性が懸念されている。その対応策としてネットワークデバイスでもＩＰアドレスでフィルタリングする機能（フィルタリング機能）を保持するデバイスが一般的となっている。
フィルタリング機能では、予めユーザが任意のアドレスのアクセスを拒否、或いは任意のアドレスのみのアクセスを許可するように、ネットワークデバイスのフィルタリストに外部装置のアドレスを登録しておく。これにより、ネットワークデバイスは、見知らぬアドレスを持つ外部装置からの接続を切断し、セキュリティを確保している。
【０００３】
しかしながら、ＩＰｖ６では、１つの機器が複数のアドレスを保持することが可能である。そのため、ネットワークデバイスにおいて、フィルタリング機能を用いてＩＰｖ６アドレスのフィルタリングを行いたい場合、対象となる外部装置が保有する全てのＩＰｖ６アドレスをフィルタリストに登録する必要がある。
複数のＩＰｖ６アドレスをユーザが手動でフィルタリストに登録することは作業負荷が高い。また、複数のアドレスを手動で登録することで登録漏れ、登録ミスなどによりフィルタリングの対象から外れてしまい、外部装置からアクセスされてしまうというセキュリティの脆弱性にもつながる問題がある。
【０００４】
そこで、ユーザがある１つのアドレスをフィルタリストに登録した際に、ネットワークデバイスがＤＮＳサーバに問い合わせを行い、当該アドレスを持つ外部装置が保持している全てのアドレスを自動的に取得する方法が提案されている（例えば、特許文献１参照）。
ネットワークデバイスが、ＤＮＳサーバから取得したアドレスを自動的にフィルタリストに登録することで、ユーザに作業負荷がかかることなく、登録漏れや登録ミスのないフィルタリングを実現している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−１５４００９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ここで、ＩＰｖ６アドレスの中には、ステートレスアドレスのように、定期的にその値が変更される可能性のあるものが存在する。
ステートレスアドレスは、ルータから定期的に配布されるプレフィックス番号と、機器自身が生成する、ネットワーク上で一意なインターフェースＩＤ（通常は機器自身のＭＡＣアドレスから所定の計算方法により生成される数値）とから構成されるアドレスである。また、ステートレスアドレスには有効期限が存在し、その期間は、ルータの設定の内容に依存する。そして、有効期限に達した場合には、ルータから新たなプレフィックス番号が配布され、機器では、新たなプレフィックス番号と自身のインターフェースＩＤとから構成される新たなステートレスアドレスが生成される。
【０００７】
しかしながら、ネットワークデバイスのフィルタリストに外部装置が保持する全てのアドレスが適切に登録されても、当該外部装置のからのアクセスをフィルタリングしている環境において、以下のような問題が発生し得る。
即ち、適切なフィルタリングが行われているネットワーク環境において、ある時、フィルタリングの対象の外部装置のステートレスアドレスが変わってしまう場合がある。この場合、外部装置が変更後のステートレスアドレスを用いてアクセスしてきたとき、ネットワークデバイスは、当該アクセスを正しくフィルタリングすることができない。
【０００８】
また、外部装置のアドレスの変更に追従してユーザがその都度ネットワークデバイスのフィルタリストの内容を更新することは、常にネットワーク上の動向を監視していなければいけなくなることもあり、作業負荷の面から現実的に不可能である。
また、外部装置のアドレスが変更されていないかどうかをネットワークデバイスが定期的にポーリングするのは、処理が冗長で無駄が多く、また、それでもフィルタをすり抜ける時間帯が生じてしまう事態は避けられないため、根本的な解決とはならない。
【０００９】
本発明はこのような問題点に鑑みなされたもので、外部装置からのパケットをより適切にフィルタリングすることを目的とする。
【課題を解決するための手段】
【００１０】
そこで、本発明に係る情報処理装置は、外部装置と通信可能に接続され、装置を識別可能な装置識別情報を含むアドレス情報が登録されたフィルタ情報に従って前記外部装置から受信したパケットのフィルタリングを行う情報処理装置であって、前記パケットから前記外部装置のアドレス情報を取得する取得手段と、前記外部装置のアドレス情報が前記フィルタ情報に登録されているか否かを判断し、登録されていないと判断した場合、前記外部装置のアドレス情報から前記外部装置の装置識別情報を取り出す取出手段と、前記取出手段で取り出された装置識別情報と同じ装置識別情報を持つアドレス情報が前記フィルタ情報に登録されているか否かを判断し、登録されていると判断した場合、前記フィルタ情報に前記外部装置のアドレス情報を登録する更新を行う更新手段と、を有することを特徴とする。
【００１１】
また、本発明は、システム、記憶媒体等としてもよい。
【発明の効果】
【００１２】
本発明によれば、外部装置からのパケットをより適切にフィルタリングすることができる。
【図面の簡単な説明】
【００１３】
【図１】デジタル複合機のハードウェアの構成の一例を示す図である。
【図２】デジタル複合機の処理部の構成の一例を示す図である。
【図３】システムの構成の一例を示す図である。
【図４】フィルタアドレスの一例を示す図である。
【図５】ＩＰアドレスとホスト名とを対応付けた情報の一例を示す図である。
【図６】フィルタアドレス自動更新処理に係るフローチャートの一例を示す図である。
【図７】フィルタアドレス更新処理に係るフローチャートの一例を示す図である。
【図８】フィルタアドレス更新処理に係るフローチャートの一例を示す図である。
【図９】フィルタアドレス更新処理に係るフローチャートの一例を示す図である。
【図１０】フィルタアドレス更新処理に係るフローチャートの一例を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施形態について図面に基づいて説明する。なお、実施形態は、本発明を限定するものではなく、また、実施形態で説明されている全ての構成が本発明の課題を解決するための手段に必須であるとは限らない。
【００１５】
図１は、本実施形態に係るデジタル複合機のハードウェアの構成の一例を示す図である。プリンタコントローラ１００は、情報処理装置（コンピュータ）の一例であり、プリンタ１２０を制御する。
プリンタコントローラ１００内部で、ＣＰＵ１０１は、デジタル複合機のソフトウェアプログラムを実行し、デジタル複合機全体の制御を行う。即ち、ＣＰＵ１０１が、ＲＯＭ１０２、ＨＤＤ１０８等に格納されたプログラムの手順に従って処理を行うことによって、デジタル複合機における機能及び後述するフローチャートに係る処理が実現される。なお、デジタル複合機における機能、後述するフローチャートに係る処理の一部、又は全部を専用のハードウェアを用いて構成してもよい。
【００１６】
ＲＯＭ１０２は、リードオンリーメモリであり、デジタル複合機のブートプログラム、固定パラメータ等を記憶する。ＲＡＭ１０３は、ランダムアクセスメモリであり、ＣＰＵ１０１がデジタル複合機を制御する際に用いる一時的なデータなどを記憶する。ＨＤＤ１０８は、ハードディスクドライブであり、印刷データなど、様々なデータを記憶する。
タイマ１０９は、タイマ処理における経過時刻の管理を行う。プリンタＩ／Ｆ制御部１０４は、プリンタ１２０とのデータの送受信（データ通信）などを制御する。ＮＶＲＡＭ１０５は、不揮発性のメモリであり、デジタル複合機の各種の設定値を記憶する。
【００１７】
パネル制御部１０６は、オペレーションパネル１１１を制御し、各種の情報の表示、使用者からの指示の入力を行う。ネットワークＩ／Ｆ制御部１０７は、ＬＡＮ１１２等のネットワークを介して接続された外部装置とのデータの送受信を制御する。
バス１１０には、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、ＨＤＤ１０８、タイマ１０９、プリンタＩ／Ｆ制御部１０４、ＮＶＲＡＭ１０５、パネル制御部１０６、及びネットワークＩ／Ｆ制御部１０７が通信可能に接続される。なお、バス１１０は、ＣＰＵ１０１からの制御信号や各装置間のデータ信号が送受信されるシステムバスである。
【００１８】
図２は、デジタル複合機の処理部（モジュール）の構成の一例を示す図である。ユーザインターフェース部２０１は、ユーザがフィルタリングを行うアドレス（アドレス情報）を登録する操作を受け付ける。ユーザインターフェース部２０１より入力されたアドレスは、フィルタアドレス登録部２０２により、フィルタアドレス記憶部２０４に記憶（登録）される。なお、フィルタアドレス記憶部２０４に記憶されているアドレスをフィルタアドレス（フィルタ情報の一例）と適宜称する。ここで、フィルタアドレス記憶部２０４は、ＲＯＭ１０２、ＨＤＤ１０８、或いはＮＶＲＡＭ１０５上に存在する。
また、フィルタアドレス登録部２０２は、アドレスを登録した場合、登録したアドレスを保持する外部装置が他のアドレスも保持しているかを判別するために、登録したアドレスをアドレス拡張制御部２０３に渡す。アドレス拡張制御部２０３は、フィルタアドレス登録部２０２からアドレスを受け取ると、ネットワークパケット送受信部２０６を利用し、受け取ったアドレスを保持する外部装置の他のアドレスを、外部装置を管理する管理装置等から取得する。また、ネットワークパケット送受信部２０６は、外部装置とのデータ通信のやり取りの制御を行う。
【００１９】
ここで、フィルタアドレス記憶部２０４にアドレスが登録されている場合、ネットワークパケット送受信部２０６は、外部装置からパケット（ネットワークパケット）を受信するたびに、ネットワークフィルタ制御部２０５に当該外部装置のアドレスを渡す。
ネットワークフィルタ制御部２０５は、アドレスを受け取った場合、フィルタアドレス記憶部２０４を参照し、受け取ったアドレスに該当するフィルタアドレスが存在するかどうかを確認する。ネットワークフィルタ制御部２０５は、該当するフィルタアドレスを発見した場合、予め設定されている処理を、接続要求を送信してきた外部装置に対して行う。
【００２０】
図３は、本実施形態に係るシステムの構成の一例を示す図である。本システムは、ネットワークデバイス３００、外部装置３０１、外部装置３０２、ＤＮＳサーバ３０３、ルータ３０４等を含んで構成される。
ネットワークデバイス３００は、プリンタコントローラ１００、オペレーションパネル１１１、及びプリンタ１２０を有するデジタル複合機の一例である。また、ネットワークデバイス３００は、フィルタリング機能を実装し、外部装置（３０１、３０２）に対するフィルタリングの設定を行うことが可能に構成されている。
【００２１】
外部装置３０１及び外部装置３０２は、ルータ３０４によって、異なるサブネットからネットワークデバイス３００と通信を行う。本実施形態では、外部装置３０１には、ＩＰｖ６アドレス（ＩＰｖ６ステートレスアドレス）として「fee0:1::203:3ff:fe30:1」及び「fee0:2::203:3ff:fe30:1」という２つのアドレスが保持されているものとする。また、外部装置３０２にはＩＰｖ６アドレスとして「fee0:1::204:4ff:fe40:2」及び「fee0:2::204:4ff:fe40:2」という２つのアドレスが保持されているものとする。
なお、外部装置３０１及び外部装置３０２は、ＩＰｖ６アドレスとして更に少なくともリンクローカルアドレスを保持している。しかしながら、リンクローカルアドレスは、ルータ３０４等の中継装置を超える通信には使用されないので、ここでは表示を省略している。
【００２２】
ＤＮＳサーバ３０３は、ネットワーク内のデバイスのＩＰアドレスとホスト名とを解決する。
なお、本実施形態では、外部装置３０１、外部装置３０２、及びＤＮＳサーバ３０３がネットワークデバイス３００とは異なるサブネット上に存在するケースを例としているが、このネットワークの構成に限定されるものではない。例えば、外部装置３０１、外部装置３０２、及びＤＮＳサーバ３０３は、それぞれ、ネットワークデバイス３００と同じサブネット上に存在していてもよいし、異なるサブネット上に存在していてもよい。
【００２３】
図４は、ネットワークデバイス３００のフィルタアドレス記憶部２０４に登録されているフィルタアドレスの一例（フィルタアドレス情報４０１）を示す図である。
フィルタアドレス情報４０１には、外部装置３０１が保持する「fee0:1::203:3ff:fe30:1」及び「fee0:2::203:3ff:fe30:1」が登録されているものとする。更に、フィルタアドレス情報４０１には、外部装置３０２が保持する「fee0:1::204:4ff:fe40:2」及び「fee0:2::204:4ff:fe40:2」が登録されているものとする。
なお、この登録は、ユーザが全て手動で行ったものであっても、特許文献１に記載の手段などにより自動的に登録されたものであってもよい。何れの場合であっても、外部装置３０１及び外部装置３０２が保持するアドレスが全て適切に登録されているので、ネットワークデバイス３００は、これらの外部装置からのアクセスを適切に制御できる状態である。
【００２４】
例えば、外部装置３０１からネットワークデバイス３００に対してアクセスが試みられた場合、まず、ネットワークパケット送受信部２０６は、当該アクセスのパケット（アクセスパケット）を受信し、そのアクセスパケット中から送信元のアドレスを取得する。本例では、送信元のアドレスとして「fee0:1::203:3ff:fe30:1」が取得できたものとする。そして、ネットワークパケット送受信部２０６は、送信元のアドレスをネットワークフィルタ制御部２０５に渡す。
ネットワークフィルタ制御部２０５は、フィルタアドレス記憶部２０４を参照し、受け取った送信元のアドレスに該当するフィルタアドレスが存在するかどうかを参照する。本例では、図４に示すとおり、フィルタアドレスとして「fee0:1::203:3ff:fe30:1」が登録されているので、ネットワークフィルタ制御部２０５は、予め設定されている処理を当該アクセスパケットに対して行う。
【００２５】
図５は、ＤＮＳサーバ３０３が管理する、ネットワークデバイス３００、外部装置３０１、外部装置３０２等のＩＰアドレスとホスト名とを対応付けた情報の一例（設定ファイル情報５０１）を示す図である。
ＤＮＳサーバ３０３は、ネットワークデバイス３００等のクライアントからクエリ（ＤＮＳ要求）されるたびに、設定ファイル情報５０１を参照し、名前解決等を行ってレスポンスする。また、設定ファイル情報５０１は、各デバイスのアドレスが更新されたタイミングなど、各デバイスの動的更新（DDNS：Dynamic DNS）機能等によって適時更新される。
【００２６】
ここで、図３に示すシステムの構成下において、ある時、外部装置３０１のＩＰｖ６アドレスが変更されたものとする。即ち、従来の「fee0:1::203:3ff:fe30:1」及び「fee0:2::203:3ff:fe30:1」から「1234:1::203:3ff:fe30:1」及び「1234:2::203:3ff:fe30:1」に変更されたものとする。
これは、ルータ３０４において、管理するプレフィックス番号（「fee0:1」及び「fee0:2」）が有効期限に達したことによるものである。これにより、ルータ３０４は、新たなプレフィックス番号（「1234:1」及び「1234:2」）を外部装置３０１が存在するネットワーク上に送出した。なお、プレフィックス番号は、装置（外部装置３０１等）が接続される通信回線（ネットワーク等）を識別可能な通信回線識別情報の一例である。
【００２７】
図６は、フィルタリングの対象であった外部装置（以下では、外部装置３０１を例に挙げて適宜説明する。）のアドレスが変更された際の、ネットワークデバイス３００におけるフィルタアドレス自動更新処理に係るフローチャートの一例を示す図である。ここで、本フローチャートに係るプログラム、及びプログラムの実行に必要なデータは、ＲＯＭ１０２、ＨＤＤ１０８等に記憶されており、ＣＰＵ１０１によってＲＡＭ１０３に読み出されて実行される。
まず、ネットワークパケット送受信部２０６は、外部装置からパケットを受信したか否かを判断する（Ｓ６０１）。このとき、ネットワークパケット送受信部２０６は、受信したと判断した場合、Ｓ６０２に処理を移し、他方、受信していないと判断した場合、Ｓ６０１に処理を移す。換言するならば、ネットワークデバイス３００は、ネットワークパケット送受信部２０６において外部装置からネットワークパケットを受信するのを待ち受ける。本例では、ネットワークデバイス３００が、アドレスの変更後の外部装置３０１から新たなＩＰｖ６アドレスの「1234:1::203:3ff:fe30:1」を送信元とするパケットを受信したものとする。
【００２８】
Ｓ６０２では、ネットワークパケット送受信部２０６は、受信したパケットから送信元のアドレスを取得する（Ｓ６０２）。本例では、「1234:1::203:3ff:fe30:1」が取得されることとなる。そして、ネットワークパケット送受信部２０６は、送信元のアドレスをネットワークフィルタ制御部２０５に渡す。
続いて、ネットワークフィルタ制御部２０５は、フィルタアドレス記憶部２０４（フィルタリスト）を参照し、受け取った送信元のアドレスに該当するフィルタアドレスが存在するかを判定する（Ｓ６０３）。このとき、ネットワークフィルタ制御部２０５は、存在すると判断した場合、Ｓ６０８に処理を移し、他方、存在しないと判断した場合、Ｓ６０４に処理を移す。
【００２９】
Ｓ６０４では、ネットワークフィルタ制御部２０５は、送信元のアドレスのインターフェースＩＤを取得する（送信元のアドレスからインターフェースＩＤを取出す）。なお、インターフェースＩＤは、装置（外部装置３０１等）を識別可能な装置識別情報の一例であり、例えば送信元のアドレスの規定の下位ビット部分である。
続いて、ネットワークフィルタ制御部２０５は、取得したインターフェースＩＤを持つフィルタアドレスがフィルタアドレス記憶部２０４に存在するかを判定する（Ｓ６０５）。このとき、ネットワークフィルタ制御部２０５は、存在すると判断した場合、Ｓ６０７に処理を移し、存在しないと判断した場合、Ｓ６０６に処理を移す。
Ｓ６０６では、ネットワークフィルタ制御部２０５は、外部装置３０１からのパケット（アクセスパケット）に対して予め設定されている処理を実施せずに（フィルタ非適用）、本フローチャートの処理を終了する。
【００３０】
Ｓ６０７では、後述するフィルタアドレス更新処理（サブルーチン）が実行される。なお、フィルタアドレス更新処理では、例えば、送信元のアドレスが登録される。
ここで、本例では、フィルタアドレス記憶部２０４には、送信元のアドレス「1234:1::203:3ff:fe30:1」と同じフィルタアドレスは存在しない。しかしながら、フィルタアドレス記憶部２０４には、「1234:1::203:3ff:fe30:1」と同じインターフェースＩＤの「fee0:1::203:3ff:fe30:1」及び「fee0:2::203:3ff:fe30:1」が登録されている。故に、フィルタアドレス更新処理が実行されることとなる。
Ｓ６０８では、ネットワークフィルタ制御部２０５は、予め設定されている処理をアクセスパケットに対して行い（フィルタ適用）、本フローチャートの処理を終了する。
【００３１】
図７は、フィルタアドレス更新処理に係るフローチャートの一例を示す図である。ここで、本フローチャートに係るプログラム、及びプログラムの実行に必要なデータは、ＲＯＭ１０２、ＨＤＤ１０８等に記憶されており、ＣＰＵ１０１によってＲＡＭ１０３に読み出されて実行される。
まず、アドレス拡張制御部２０３は、ネットワークパケット送受信部２０６を利用して、ＤＮＳサーバ３０３に問い合わせを行う。この問合せにより、送信元のアドレスを保持する外部装置のホスト名を取得する（Ｓ７０１）。本例では、アドレス拡張制御部２０３は、「1234:1::203:3ff:fe30:1」のホスト名をＤＮＳサーバ３０３に問い合わせることになる。ＤＮＳサーバ３０３は、設定ファイル情報５０１の内容を参照して、対応するホスト名である「dev1」をネットワークデバイス３００に返す。なお、設定ファイル情報５０１については、上述したように外部装置３０１のアドレスが変更された際に更新されている。
【００３２】
続いて、アドレス拡張制御部２０３は、ホスト名「dev1」のＩＰｖ６アドレスをＤＮＳサーバ３０３にクエリし、「dev1」の全てのＩＰｖ６アドレスを取得する（Ｓ７０２）。なお、Ｓ７０１及びＳ７０２の処理は、外部装置（外部装置３０１等）のアドレス情報をもとに管理装置（ＤＮＳサーバ３０３等）に問合せを行って外部装置のアドレス情報とは異なる外部装置の他のアドレス情報を取得するアドレス情報取得処理の一例である。
本例では、「dev1」に対応するＩＰｖ６アドレスとして「1234:1::203:3ff:fe30:1」及び「1234:2::203:3ff:fe30:1」が取得される。そして、アドレス拡張制御部２０３は、「dev1」の全てのＩＰｖ６アドレスをフィルタアドレス登録部２０２に渡す。
続いて、フィルタアドレス登録部２０２は、フィルタアドレス記憶部２０４の内容を更新する（Ｓ７０３）。即ち、フィルタアドレス記憶部２０４に「1234:1::203:3ff:fe30:1」及び「1234:1::203:3ff:fe30:1」が登録される。なお、既に登録されているフィルタアドレスのうち、「fee0:1::203:3ff:fe30:1」及び「fee0:2::203:3ff:fe30:1」が削除される。そして、フィルタアドレス登録部２０２は、本フローチャートの処理を終了する。
【００３３】
以上、本実施形態によれば、フィルタリングの対象の外部装置のステートレスアドレスが変更された場合にも、ネットワークデバイスでその変更を検知し、フィルタリストを最新のアドレスに更新することが可能となる。
この構成によれば、ネットワークデバイスでは、フィルタをすり抜ける時間帯を生じさせることなく、適切なフィルタリングを実施し続けることが可能となる。更に、この際、ユーザが手動で設定の内容を変更する必要がないので、ユーザの作業負荷も大幅に軽減できる。
【００３４】
＜第２の実施形態＞
本実施形態では、第１の実施形態のフィルタアドレス更新処理において、ＤＮＳサーバ３０３を用いない構成について説明する。なお、本実施形態では、第１の実施形態の構成と同一の構成については同一の符号を用いて、その説明を適宜省略する。
図８は、本実施形態に係るフィルタアドレス更新処理に係るフローチャートの一例を示す図である。ここで、本フローチャートに係るプログラム、及びプログラムの実行に必要なデータは、ＲＯＭ１０２、ＨＤＤ１０８等に記憶されており、ＣＰＵ１０１によってＲＡＭ１０３に読み出されて実行される。
なお、フィルタアドレス更新処理は、第１の実施形態と同様に、図６のＳ６０７において呼び出される。
【００３５】
まず、ネットワークフィルタ制御部２０５は、フィルタアドレス登録部２０２を介して、送信元のアドレスをフィルタアドレス記憶部２０４に登録する（Ｓ８０１）。本例においては、「1234:1::203:3ff:fe30:1」が新たにフィルタアドレス記憶部２０４に登録されることとなる。そして、「1234:1::203:3ff:fe30:1」と同じインターフェースＩＤの「fee0:1::203:3ff:fe30:1」及び「fee0:2::203:3ff:fe30:1」がアドレス拡張制御部２０３に渡される。
続いて、アドレス拡張制御部２０３は、ネットワークパケット送受信部２０６を利用して、「fee0:1::203:3ff:fe30:1」及び「fee0:2::203:3ff:fe30:1」に対して存在確認パケットを送信（送付）する（Ｓ８０２）。存在確認パケットは、当該アドレスの外部装置で未だ使用されているか否か、即ち当該アドレスが存在しているか否かを外部装置に確認するためのパケットである。例えば、存在確認パケットは、当該アドレスに対するＩＣＭＰｖ６（Internet Control Message Protocol for IPv6）の近隣要請（Neighbor Solicitation）パケットである。
【００３６】
そして、アドレス拡張制御部２０３は、存在確認パケットに対する存在応答パケットを受信するのを所定の期間待ち受ける（一定の時間待ち受ける）。続いて、アドレス拡張制御部２０３は、存在応答パケットを受信したか否かを判断する（Ｓ８０３）。
このとき、アドレス拡張制御部２０３は、所定の期間内（一定の時間内）に受信したと判断した場合、フィルタアドレス記憶部２０４の更新に係る処理は行わず、本フローチャートの処理を終了する。この場合、例えば、「1234:1::203:3ff:fe30:1」というアドレスは、外部装置３０１に新たに追加されたＩＰｖ６アドレスであることになる。
他方、アドレス拡張制御部２０３は、所定の期間内（一定の時間内）に受信していないと判断した場合、当該アドレスが既に使用されていないものと判断し、Ｓ８０４に処理を移す。なお、存在応答パケットは、存在確認パケットに対するパケットであり、例えば、ＩＣＭＰｖ６の近隣広告（Neighbor Advertisement）パケットである。
Ｓ８０４では、アドレス拡張制御部２０３は、フィルタアドレス登録部２０２を介して、フィルタアドレス記憶部２０４から存在していないと判断したアドレスを削除し、本フローチャートの処理を終了する。
【００３７】
以上、本実施形態によれば、ネットワークデバイスは、ＤＮＳサーバが存在しないネットワーク環境下においても、フィルタリングの対象の外部装置のステートレスアドレスが変更されたことを自動で検知することができる。故に、フィルタリストを最新のアドレスに更新することが可能となる。
【００３８】
＜第３の実施形態＞
本実施形態では、第１の実施形態のフィルタアドレス更新処理において、フィルタアドレス記憶部２０４の中に他にもアドレスが変更されている可能性のあるフィルタアドレスが存在するかが更に判断される。そして、存在していた場合、そのフィルタアドレスも更新される。なお、本実施形態では、第１の実施形態の構成と同一の構成については同一の符号を用いて、その説明を適宜省略する。
図９は、本実施形態に係るフィルタアドレス更新処理に係るフローチャートの一例を示す図である。ここで、本フローチャートに係るプログラム、及びプログラムの実行に必要なデータは、ＲＯＭ１０２、ＨＤＤ１０８等に記憶されており、ＣＰＵ１０１によってＲＡＭ１０３に読み出されて実行される。
なお、フィルタアドレス更新処理は、第１の実施形態と同様に、図６のＳ６０７において呼び出される。
【００３９】
まず、アドレス拡張制御部２０３は、ネットワークパケット送受信部２０６を利用して、ＤＮＳサーバ３０３に問い合わせを行う。この問合せにより、送信元のアドレスを保持する外部装置のホスト名を取得する（Ｓ９０１）。本例では「1234:1::203:3ff:fe30:1」のホスト名をＤＮＳサーバ３０３に問い合わせることになる。ＤＮＳサーバ３０３は、設定ファイル情報５０１の内容を参照して、対応するホスト名である「dev1」をネットワークデバイス３００に返す。
続いて、アドレス拡張制御部２０３は、ネットワークパケット送受信部２０６を利用して、ホスト名「dev1」のＩＰｖ６アドレスをＤＮＳサーバ３０３にクエリし、「dev1」の全てのＩＰｖ６アドレスを取得する（Ｓ９０２）。本例では、「dev1」に対応するＩＰｖ６アドレスとして「1234:1::203:3ff:fe30:1」及び「1234:2::203:3ff:fe30:1」が取得される。そして、アドレス拡張制御部２０３は、「dev1」の全てのＩＰｖ６アドレスをフィルタアドレス登録部２０２に渡す。
【００４０】
続いて、フィルタアドレス登録部２０２は、フィルタアドレス記憶部２０４の内容を更新する（Ｓ９０３）。即ち、フィルタアドレス登録部２０２は、フィルタアドレス記憶部２０４に登録されているフィルタアドレスのうち、「fee0:1::203:3ff:fe30:1」を「1234:1::203:3ff:fe30:1」に書き換える。また、フィルタアドレス登録部２０２は、「fee0:2::203:3ff:fe30:1」を「1234:2::203:3ff:fe30:1」に書き換える。
続いて、フィルタアドレス登録部２０２は、書き換えたフィルタアドレス（書き換え前のフィルタアドレス）と同じプレフィックス番号を持つフィルタアドレスがフィルタアドレス記憶部２０４に存在するか否かを判断する（Ｓ９０４）。このとき、存在すると判断した場合、Ｓ９０５に処理を移し、他方、存在しないと判断した場合、本フローチャートの処理を終了する。
【００４１】
本例では、「fee0:1::203:3ff:fe30:1」のプレフィックス番号である「fee0:1」と同じプレフィックス番号を持つ「fee0:1::204:4ff:fe40:2」というフィルタアドレスが存在している。また、「fee0:2::203:3ff:fe30:1」のプレフィックス番号である「fee0:2」と同じプレフィックス番号を持つ「fee0:2::204:4ff:fe40:2」というフィルタアドレスが存在している。
ここで、同じプレフィックス番号を持つ外部装置に関しては、同様にアドレスが変更されていると判断することができる。
したがって、Ｓ９０５では、フィルタアドレス登録部２０２は、同じプレフィックス番号を持つフィルタアドレスが存在していると判断した場合、そのフィルタアドレスを、Ｓ９０３で更新したフィルタアドレスと同じプレフィックス番号で更新する。即ち、フィルタアドレス登録部２０２は、「fee0:1::204:4ff:fe40:2」を「1234:1::204:4ff:fe40:2」に書き換える。また、フィルタアドレス登録部２０２は、「fee0:2::204:4ff:fe40:2」を「1234:2::204:4ff:fe40:2」に書き換える。そして、フィルタアドレス登録部２０２は、本フローチャートの処理を終了する。
【００４２】
以上、本実施形態では、アクセスパケットの送信元のアドレスを更新するタイミングで、その他にもアドレスが変更されている可能性のあるフィルタアドレスを探し、その情報も更新する。
この構成によれば、以降に当該アドレスを備えた外部装置からアクセスパケットを受信した際に、迅速に予め設定されているフィルタリング処理を行うことが可能となる。
【００４３】
＜第４の実施形態＞
本実施形態では、第２の実施形態のフィルタアドレス更新処理において、フィルタアドレス記憶部２０４の中に他にもアドレスが変更されている可能性のあるフィルタアドレスが存在するかを更に判断する。そして、存在していた場合、そのフィルタアドレスも更新する。なお、本実施形態では、第１の実施形態及び第２の実施形態の構成と同一の構成については同一の符号を用いて、その説明を適宜省略する。
図１０は、本実施形態に係るフィルタアドレス更新処理に係るフローチャートの一例を示す図である。ここで、本フローチャートに係るプログラム、及びプログラムの実行に必要なデータは、ＲＯＭ１０２、ＨＤＤ１０８等に記憶されており、ＣＰＵ１０１によってＲＡＭ１０３に読み出されて実行される。
なお、フィルタアドレス更新処理は、第１の実施形態と同様に、図６のＳ６０７において呼び出される。
【００４４】
まず、ネットワークフィルタ制御部２０５は、フィルタアドレス登録部２０２を利用して、送信元のアドレスをフィルタアドレス記憶部２０４に登録する（Ｓ１００１）。本例においては、「1234:1::203:3ff:fe30:1」が新たにフィルタアドレス記憶部２０４に登録されることとなる。そして、「1234:1::203:3ff:fe30:1」と同じインターフェースＩＤの「fee0:1::203:3ff:fe30:1」及び「fee0:2::203:3ff:fe30:1」がアドレス拡張制御部２０３に渡される。
続いて、アドレス拡張制御部２０３は、ネットワークパケット送受信部２０６を利用して、「fee0:1::203:3ff:fe30:1」及び「fee0:2::203:3ff:fe30:1」に対して存在確認パケットを送信する（Ｓ１００２）。存在確認パケットは、例えば、当該アドレスに対するＩＣＭＰｖ６の近隣要請パケットである。そして、アドレス拡張制御部２０３は、存在確認パケットに対する存在応答パケットを受信するのを所定の期間待ち受ける。
【００４５】
続いて、アドレス拡張制御部２０３は、存在応答パケットを受信したか否かを判断する（Ｓ１００３）。存在応答パケットは、例えば、ＩＣＭＰｖ６の近隣広告パケットである。
このとき、アドレス拡張制御部２０３は、存在すると判断した場合、Ｓ１００５に処理を移す。この場合、例えば、「1234:1::203:3ff:fe30:1」というアドレスは、外部装置に新たに追加されたＩＰｖ６アドレスであることになる。他方、アドレス拡張制御部２０３は、存在しないと判断した場合、即ち当該アドレスは既に使用されていないものと判断した場合、Ｓ１００４に処理を移す。
Ｓ１００４では、アドレス拡張制御部２０３は、フィルタアドレス登録部２０２を利用して、フィルタアドレス記憶部２０４から存在していないと判断したアドレスを削除する。
【００４６】
続いて、フィルタアドレス登録部２０２は、書き換えたフィルタアドレスと同じプレフィックス番号を持つフィルタアドレスがフィルタアドレス記憶部２０４に存在するか否かを判断する（Ｓ１００５）。このとき、フィルタアドレス登録部２０２は、存在すると判断した場合、Ｓ１００６に処理を移し、他方、存在しないと判断した場合、本フローチャートの処理を終了する。
本例では、「fee0:1::203:3ff:fe30:1」のプレフィックス番号である「fee0:1」と同じプレフィックス番号を持つ「fee0:1::204:4ff:fe40:2」というフィルタアドレスが存在している。また、「fee0:2::203:3ff:fe30:1」のプレフィックス番号である「fee0:2」と同じプレフィックス番号を持つ「fee0:2::204:4ff:fe40:2」というフィルタアドレスが存在している。
【００４７】
ここで、同じプレフィックス番号を持つ外部装置に関しては、同様にアドレスが変更されている可能性があると判断することができる。
したがって、アドレス拡張制御部２０３は、同じプレフィックス番号を持つフィルタアドレスが存在した場合、それらに対しても存在確認を実行する。
続いて、アドレス拡張制御部２０３は、「fee0:1::204:4ff:fe40:2」及び「fee0:2::204:4ff:fe40:2」の変更後の候補アドレスと考えられるアドレスを生成する（Ｓ１００６）。候補アドレス（候補アドレス情報の一例）は、これらアドレスのプレフィックス番号を、Ｓ１００１で登録した送信元のアドレスのプレフィックス番号に置き換えることで生成される。即ち、本例においては、「1234:1::204:4ff:fe40:2」及び「1234:2::204:4ff:fe40:2」が候補アドレスとなる。
【００４８】
続いて、アドレス拡張制御部２０３は、ネットワークパケット送受信部２０６を利用して、上記候補アドレスに対して存在確認パケットを送信する（Ｓ１００７）。そして、アドレス拡張制御部２０３は、存在確認パケットに対する存在応答パケットを受信するのを所定の期間待ち受ける。続いて、アドレス拡張制御部２０３は、存在応答パケットを受信したか否かを判断する（Ｓ１００８）。このとき、アドレス拡張制御部２０３は、受信したと判断した場合、Ｓ１００９に処理を移し、他方、受信していないと判断した場合、本フローチャートの処理を終了する。
Ｓ１００９では、ネットワークフィルタ制御部２０５は、フィルタアドレス登録部２０２を利用して、上記候補アドレスをフィルタアドレス記憶部２０４に登録する。そして、フィルタアドレス登録部２０２は、フィルタアドレス記憶部２０４に登録されている既存のアドレスをアドレス拡張制御部２０３に渡す。本例では「fee0:1::204:4ff:fe40:2」及び「fee0:2::204:4ff:fe40:2」が渡ることとなる。
【００４９】
続いて、アドレス拡張制御部２０３は、ネットワークパケット送受信部２０６を利用して、上記既存のアドレスに対して存在確認パケットを送信する（Ｓ１０１０）。そして、アドレス拡張制御部２０３は、存在確認パケットに対する存在応答パケットを受信するのを所定の期間待ち受ける。
続いて、アドレス拡張制御部２０３は、存在応答パケットを受信したか否かを判断する（Ｓ１０１１）。このとき、アドレス拡張制御部２０３は、受信したと判断した場合、フィルタアドレス記憶部２０４の更新に係る処理は行わず、上記既存のアドレスは登録したままにし、本フローチャートの処理を終了する。他方、アドレス拡張制御部２０３は、受信しなかったと判断した場合、即ち、当該アドレスは既に使用されていないものと判断した場合、Ｓ１０１２に処理を移す。
Ｓ１０１２では、アドレス拡張制御部２０３は、フィルタアドレス登録部２０２を利用して、フィルタアドレス記憶部２０４から上記既存のアドレスを削除する。
【００５０】
以上、本実施形態によれば、ＤＮＳサーバが存在しないネットワーク環境下においても、アクセスパケットの送信元のアドレスを更新するタイミングで、その他にもアドレスが変更している可能性のあるフィルタアドレスを検出する。そして、疎なアドレスに対しても存在確認を行う。
この構成によれば、以降に当該アドレスを備えた外部装置からアクセスパケットを受信した際に、迅速に予め設定されているフィルタリング処理を行うことが可能となる。
【００５１】
＜その他の実施形態＞
図６において、Ｓ６０１で受信したアクセスパケットに予め設定されている処理を実施するタイミングは、フィルタアドレス更新処理を実施するタイミングよりも前であってもよい。この場合、フィルタアドレス更新処理に時間がかかり、アクセスパケットの送信元が長い時間応答を待たされる事態を回避することが可能となる。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００５２】
上述した実施形態の構成によれば、外部装置からのパケットをより適切にフィルタリングすることができる。
【００５３】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００５４】
１００  プリンタコントローラ、１２０  プリンタ
【図１】
2013090089.tif 000003
【図２】
2013090089.tif 000004
【図３】
2013090089.tif 000005
【図４】
2013090089.tif 000006
【図５】
2013090089.tif 000007
【図６】
2013090089.tif 000008
【図７】
2013090089.tif 000009
【図８】
2013090089.tif 000010
【図９】
2013090089.tif 000011
【図１０】
2013090089.tif 000012