しかし、上記特許文献1,2に記載の技術は、複数の機器それぞれに1つずつ割り当てられたアドレスに関し、機器の総数分に相当する複数のアドレスを対象にして、この複数のアドレスを分類しようとする技術に過ぎず、1つの機器に対して割り当てられる複数のアドレスを分類する技術について、何らかの提案がなされている訳ではない。
一方、インターネットでは、従来、IPv4(Internet Protocol version 4)と呼ばれる通信プロトコルが用いられてきたが、近年、IPv6(Internet Protocol version 6)と呼ばれる次世代通信プロトコルの導入が進められている。このような背景の下、ネットワークに接続して使用されるデバイス(例えばプリンタ等)についても、IPv4のみに対応した従来のデバイスに加え、IPv4/IPv6の双方に対応したデバイスやIPv6のみに対応したデバイスなど(以下、これらを総称してIPv6対応デバイスと称する。)が流通し始めており、今後はこうしたIPv6対応デバイスが増えてゆくものと考えられる。
IPv6では、規格上、1つのデバイスに対して複数のアドレスを割り当てることができるため、上記のようなIPv6対応デバイスの場合、複数のアドレスを持っていることがある。また、IPv4/IPv6の双方に対応したデバイスの場合は、IPv6用のアドレスとは別にIPv4用のアドレスを持っている。
そのため、このようなIPv6対応デバイスに割り当てられたアドレスに関する情報を、パーソナルコンピュータ(以下、PCと略称する。)などにおいて表示する際には、1つのデバイスに対して割り当てられている複数のアドレスを、無作為に羅列して表示するだけでは、利用者にとって見にくい表示となってしまうおそれがあった。
特に、IPv6用のアドレスの場合は、有効期限が到来すると無効となるアドレスもあれば有効期限のないアドレスもあったり、また、有効な通信範囲の広さに違いのあるアドレスもあったりするため、それらのアドレスが混在するまま無作為に羅列して表示すると、有効期限のあるアドレスなのかどうか、有効期限があるとすればまだ有効なのかどうか、所期の通信範囲で利用できるアドレスなのかどうかなどを、利用者が認識できなくなるおそれがあった。
本発明は、上記問題を解決するためになされたものであり、その目的は、1つのデバイスに対して割り当てられた複数のアドレスを利用者にとって見やすいかたちで表示することができるアドレス情報表示システム、およびアドレス情報表示プログラムを提供することにある。
以下、本発明において採用した特徴的構成について説明する。
本発明のアドレス情報表示システムは、ネットワークを構成する複数のノードのうち、少なくとも第1のノードが、前記ネットワークに接続されたデバイスに割り当てられたアドレスに関する情報であるアドレス情報を表示可能なアドレス情報表示装置として機能するように構成されるアドレス情報表示システムであって、前記アドレス情報を記憶する手段であり、一つのデバイスに対して複数のアドレスが割り当てられている場合には、前記複数のアドレスそれぞれに対応する複数のアドレス情報を記憶するアドレス情報記憶手段と、前記アドレス情報記憶手段に記憶された前記アドレス情報に基づいて、前記デバイスに割り当てられたアドレスが利用可能な状態にあるか否かを判断する手段であり、一つのデバイスに対応する複数のアドレス情報が前記アドレス情報記憶手段に記憶されている場合には、前記複数のアドレス情報それぞれに基づいて、各アドレス情報に対応するアドレスそれぞれについて、利用可能な状態にあるか否かを判断する判断手段と、前記判断手段において利用可能な状態にあると判断されたアドレスについて、該アドレスを少なくとも1つは表示するとともに、前記判断手段において利用可能な状態にないと判断されたアドレスについては、前記利用可能な状態にあると判断されたアドレスとは異なる表示形態で表示するか非表示とする表示手段とを備えたことを特徴とする。
このアドレス情報表示システムにおいて、判断手段は、アドレス情報記憶手段に記憶されたアドレス情報に基づいて、デバイスに割り当てられたアドレスが利用可能な状態にあるか否かを判断する。特に、一つのデバイスに対応する複数のアドレス情報がアドレス情報記憶手段に記憶されている場合、判断手段は、アドレス情報記憶手段に記憶された複数のアドレス情報それぞれに基づいて、各アドレス情報に対応するアドレスそれぞれについて、利用可能な状態にあるか否かを判断する。そして、表示手段は、判断手段において利用可能な状態にあると判断されたアドレスについて、そのアドレスを少なくとも1つは表示するとともに、判断手段において利用可能な状態にないと判断されたアドレスについては、利用可能な状態にあると判断されたアドレスとは異なる表示形態で表示するか非表示とする。なお、異なる表示形態は、表示色が異なるもの、書体が異なるもの、文字のサイズが異なるもの、アンダーラインその他の文字に対する修飾が異なるもの、点滅・反転などの状態が異なるものなど、どのような形態の違いであってもよく、これらの組み合わせであってもよい。
このようなアドレス情報表示システムであれば、表示手段によって表示されたアドレスを見た利用者は、表示形態の違いにより、利用可能な状態にあるアドレスか利用可能な状態にないアドレスかを識別することができ、あるいは、アドレスが表示されていることをもって利用可能な状態にあるアドレスであると識別することができる。
したがって、本発明のアドレス情報表示システムによれば、例えば、利用可能な状態にあるアドレスか否かを分類しないまま無作為に表示してしまうものとは異なり、1つのデバイスに対して割り当てられた複数のアドレスを利用者にとって見やすいかたちで表示することができ、利用者は、利用可能な状態にあるアドレスを把握しやすくなる。
ところで、以上説明したアドレス情報表示システムにおいて、上記アドレス情報記憶手段、判断手段、および表示手段のうち、少なくとも表示手段は第1のノードに設けられ、これにより、第1のノードがアドレス情報表示装置として機能することになる。すなわち、本発明において、第1のノードとは、表示手段を備えたノードを意味するが、アドレス情報記憶手段、および判断手段については、第1のノードに設けられていてもよいし、第1のノード以外のノードに設けられていてもよい。
より詳しくは、判断手段は、アドレス情報記憶手段からアドレス情報を入力して判断結果を出力する手段なので、アドレス情報記憶手段と判断手段が単一のノード内に設けてあれば、判断手段は、単一のノード内における内部処理にてアドレス情報記憶手段からアドレス情報を読み取ればよいし、アドレス情報記憶手段と判断手段が別々のノード内に設けてあれば、それらのノード間でデータ通信を行って、アドレス情報記憶手段を備えるノードから判断手段を備えるノードへアドレス情報を伝送すればよい。
また、表示手段は、判断手段から判断結果を入力して画面上にアドレス情報を出力する手段なので、判断手段と表示手段が単一のノード内に設けてあれば、表示手段は、単一のノード内における内部処理にて判断手段から判断結果を受け取って表示を行えばよいし、判断手段と表示手段が別々のノード内に設けてあれば、それらのノード間でデータ通信を行って、判断手段を備えるノードから表示手段を備えるノードへ判断結果を伝送すればよい。
さらに、アドレス情報記憶手段にアドレス情報が記憶されるデバイスも、アドレス情報記憶手段、判断手段、および表示手段のそれぞれが設けられるノードと同一の装置であっても別々の装置であってもよい。
例えば、アドレス情報記憶手段は、デバイスに割り当てられたアドレスに関するアドレス情報を記憶する手段なので、各デバイス毎にアドレス情報記憶手段を設けておけば、動的に割り当てられるアドレスも含めて最新のアドレス情報を、簡単にアドレス情報記憶手段に記憶させることができるが、ネットワーク内に少なくとも1つのアドレス管理サーバを設けておいて、ネットワーク内のデバイスにアドレスが割り当てられた場合に、そのことを必ずアドレス管理サーバが認識できるようなシステム(例えば、デバイスへのアドレスの割り当てをアドレス管理サーバが行うシステム、デバイスへのアドレスの割り当てが行われると必ずデバイスからアドレス管理サーバへ通知を行うシステムなど)が構成されていれば、各デバイス毎にアドレス情報記憶手段を設けなくても、アドレス管理サーバにアドレス情報記憶手段を設ければよい。
判断手段についても同様であり、各デバイス毎にアドレス情報記憶手段を設けた場合、各デバイス毎に判断手段を設けてあればよいし、各デバイス毎に設けたアドレス情報記憶手段からアドレス情報を収集する単一の情報収集サーバをネットワーク内に設けて、その情報収集サーバに判断手段を設けてもよい。このような情報収集サーバは、表示手段を設けるノードと同一ノードであってもよいし、あえて表示手段を設けるノードとは別のノードとしてもよい。
判断手段を備えるノードと表示手段を備えるノードとが別になる場合、判断結果としては、表示手段において判断結果に基づく内部処理を行うことによって初めて表示可能な可視情報となるようなデータを伝送してもよいし、判断手段における内部処理でそのまま可視情報として利用できるようなデータ(例えば、Webページ形式のデータ)を作成して、それを判断結果として表示手段に伝送することにより、表示手段は判断手段から受け取ったデータを単に表示するだけ(例えば、判断手段を備えたノードから受信したWebページ形式データをブラウザで開くだけ)で、所期の可視情報を表示できるようになっていてもよい。
さて、以上が本発明のアドレス情報表示システムの基本的構成についての説明であるが、本発明のアドレス情報表示システムは、さらに次のような構成を備えているとより望ましいものになる。
まず、本発明のアドレス情報表示システムにおいて、前記アドレス情報には、該アドレス情報に対応するアドレスに対して設定された有効期限が切れているか否かを示す有効期限情報が含まれており、前記判断手段は、前記有効期限情報に基づいて、前記アドレスに対して設定された有効期限が切れていないアドレスについて、利用可能な状態にあると判断する一方、前記有効期限が切れているアドレスについて、利用可能な状態にないと判断すると好ましい。
このようなアドレス情報表示システムによれば、表示手段によって表示されたアドレスを見た利用者は、表示形態の違いにより、有効期限が切れていないアドレスか有効期限が切れているアドレスかを識別することができ、あるいは、アドレスが表示されていることをもって有効期限が切れていないアドレスであると識別することができる。
また、本発明のアドレス情報表示システムにおいて、前記アドレス情報記憶手段は、アドレスに対して設定された有効期限が切れてから一定期間が経過するまで、該アドレスに対応する前記アドレス情報を記憶する手段であると好ましい。
このようなアドレス情報記憶手段は、例えば、定期的にアドレス情報記憶手段にアクセスして全アドレス情報をサーチし、有効期限切れから一定期間経過したアドレス情報を検出したら、アドレス情報をアドレス情報記憶手段から削除する手段を併設したり、あるいは、有効期限が切れたアドレス情報についてタイマをセットし、タイマで一定期間の経過を検出したら、アドレス情報をアドレス情報記憶手段から削除する手段を併設したりすれば実現できる。
このようなアドレス情報表示システムによれば、アドレスに対して設定された有効期限が切れてから一定期間が経過するまでは、有効期限が切れているアドレスに対応するアドレス情報もアドレス情報記憶手段に記憶されているので、例えば、アドレスの有効期限が切れるとアドレス情報記憶手段からアドレス情報が直ちに消去されるシステムとは異なり、有効期限が切れてから一定期間が経過するまでは、有効期限が切れているアドレスに対応するアドレス情報も、判断手段や表示手段による処理対象とすることができる。しかも、アドレスの有効期限が切れてもアドレス情報記憶手段からアドレス情報が消去されないシステムとも異なり、有効期限が切れているアドレスに対応するアドレス情報が、いつまでも判断手段や表示手段による処理対象とされることはなく、判断手段や表示手段にかかる負荷を軽減することができる。
また、本発明のアドレス情報表示システムにおいて、前記アドレス情報記憶手段は、アドレスに対して設定された有効期限が切れてから所定回数だけ該アドレスに対応する前記アドレス情報が読み出されるまで、該アドレス情報を記憶する手段であると好ましい。
このようなアドレス情報記憶手段は、例えば、アドレス情報記憶手段からの読み出しを行う手段が、必ずカウンタをカウントアップする取り決めとしておき、カウンタの値が所定回数を超えたら、アドレス情報をアドレス情報記憶手段から削除する手段を併設すれば実現できる。
このようなアドレス情報表示システムによれば、アドレスに対して設定された有効期限が切れてから所定回数アドレス情報は読み出されるまでは、有効期限が切れているアドレスに対応するアドレス情報もアドレス情報記憶手段に記憶されているので、例えば、アドレスの有効期限が切れるとアドレス情報記憶手段からアドレス情報が直ちに消去されるシステムとは異なり、有効期限が切れてから所定回数アドレス情報が読み出されるまでは、有効期限が切れているアドレスに対応するアドレス情報も、判断手段や表示手段による処理対象とすることができる。しかも、アドレスの有効期限が切れてもアドレス情報記憶手段からアドレス情報が消去されないシステムとも異なり、有効期限が切れているアドレスに対応するアドレス情報が、いつまでも判断手段や表示手段による処理対象とされることはなく、判断手段や表示手段にかかる負荷を軽減することができる。
また、本発明のアドレス情報表示システムは、前記判断手段において利用可能な状態にないと判断されたアドレスがあった場合に、その旨のメッセージを出力するメッセージ出力手段を備えていると好ましい。
このようなアドレス情報表示システムによれば、判断手段において利用可能な状態にないと判断されたアドレスがあったことを、利用者が簡単に認識でき、特に、判断手段において利用可能な状態にないと判断されたアドレスが非表示とされる場合でも、利用者は、メッセージ出力手段によって出力されるメッセージによって、利用可能な状態にないアドレスがあったことを認識できる。
また、本発明のアドレス情報表示システムにおいて、前記アドレス情報には、該アドレス情報に対応するアドレスが、前記第1のノードとの通信が可能なアドレスであるか否かを示す第1の通信可否情報が含まれており、前記判断手段は、前記第1の通信可否情報に基づいて、前記第1のノードとの通信が可能なアドレスについて、利用可能な状態にあると判断する一方、前記第1のノードとの通信が不能なアドレスについて、利用可能な状態にないと判断すると好ましい。
このようなアドレス情報表示システムによれば、アドレスの表示を行っている第1のノードとデバイスとの間で通信を行いたい場合に、どのアドレスを利用すると通信ができるのかを識別できるので、例えば、第1のノードを利用している利用者が、第1のノードからデバイスに対してリモート管理を実施してデバイスの設定変更を行いたいような場合に、どのアドレスを利用すればよいのかを簡単に知ることができる。
また、本発明のアドレス情報表示システムにおいて、前記第1の通信可否情報は、前記第1のノードから送信されたSNMP要求中に含まれる宛先アドレスであるか否かを示す情報であると好ましい。
このアドレス情報表示システムにおいて、SNMP要求とは、簡易ネットワーク管理プロトコル(SNMP:Simple Network Management Protocol)において、SNMPマネージャからSNMPエージェントに対して送信されるパケットのことである。
このようなアドレス情報表示システムによれば、アドレスの表示を行っている第1のノードからデバイスに対してSNMP要求を送信した際に利用した実績があるアドレスを、第1のノードとの通信が可能なアドレスと判断するので、例えば、第1のノードを利用している利用者がSNMPを利用して第1のノードからデバイスに対してリモート管理を実施してデバイスの設定変更を行いたいような場合に、どのアドレスを利用すればよいのかを簡単に知ることができる。
また、本発明のアドレス情報表示システムにおいて、前記第1の通信可否情報は、前記第1のノードと同じローカルエリアネットワーク内のアドレスであるか否かを示す情報であると好ましい。
このようなアドレス情報表示システムによれば、同じローカルエリアネットワーク内のアドレスを、第1のノードとの通信が可能なアドレスと判断するので、例えば、第1のノードを利用している利用者が、第1のノードから同じローカルエリアネットワーク内にあるデバイスと通信したい場合に、どのアドレスを利用すればよいのかを簡単に知ることができる。
また、本発明のアドレス情報表示システムにおいて、前記アドレス情報には、該アドレス情報に対応するアドレスが、前記第1のノードとは異なる第2のノードとの通信が可能なアドレスであるか否かを示す第2の通信可否情報が含まれており、前記判断手段は、前記第2の通信可否情報に基づいて、前記第2のノードとの通信が可能なアドレスについて、利用可能な状態にあると判断する一方、前記第2のノードとの通信が不能なアドレスについて、利用可能な状態にないと判断すると好ましい。
このようなアドレス情報表示システムによれば、第1のノードとは異なる第2のノードとデバイスとの間で通信を行いたい場合に、第2のノード側でどのアドレスを利用すればよいのかを、第1のノードにおいて知ることができる。
すなわち、デバイスに複数のアドレスがある場合、そのデバイスとの通信を行う際に、第1のノードと第2のノードとでは、異なるアドレスを利用している可能性がある。そのため、第2のノードがデバイスとの通信時に利用しているアドレスを利用者が知りたい場合には、上記のような第2の通信可否情報を採用することにより、第1のノードでアドレスを表示するにもかかわらず、第2のノードがデバイスとの通信時に利用しているアドレスを知ることができる。
また、本発明のアドレス情報表示システムにおいて、前記アドレス情報は、当該アドレス情報に対応するアドレスが、前記第2のノードと前記デバイスとが印刷系プロトコルを利用した通信を行ったときに利用された前記デバイスのアドレスである場合に、前記第2の通信可否情報として、前記第2のノードとの通信が可能なアドレスである旨を示す情報を含んでいると好ましい。
このアドレス情報表示システムにおいて、印刷系プロトコルとは、第2のノードからデバイスに対して印刷出力を行いたい場合に利用されるプロトコルで、例えば、LPDプロトコル、IPPプロトコル、Port9100プロトコル、DirectI−FAXプロトコル、PDL−Datastreamプロトコルなどが、ここでいう印刷系プロトコルに該当する。
このようなアドレス情報表示システムによれば、第2のノードとデバイスとが印刷系プロトコルを利用した通信を行ったときに利用されたデバイスのアドレスを、第2のノードとの通信が可能なアドレスと判断するので、例えば、第2のノードからデバイスに対して印刷出力を行いたい場合に、どのアドレスを利用すればよいのかを、第1のノードを操作する利用者が簡単に知ることができる。
また、本発明のアドレス情報表示システムにおいて、前記表示手段は、前記判断手段によって利用可能な状態にないと判断されたアドレスについては、前記利用可能な状態にあると判断されたアドレスとは異なる表示形態で表示する手段であると好ましい。
このようなアドレス情報表示システムの場合、利用可能な状態にないと判断されたアドレスも表示されるので、利用可能な状態にないと判断されたアドレスも知りたい場合(例えば、過去のアクセス解析を行いたい場合など)に便利である。
また、本発明のアドレス情報表示システムにおいて、前記表示手段は、前記判断手段によって利用可能な状態にないと判断されたアドレスについては、非表示とする手段であっても好ましい。
このようなアドレス情報表示システムの場合、利用可能な状態にないと判断されたアドレスは表示されないので、利用可能な状態にあると判断されたアドレス以外は不要な場合に便利である。
また、本発明のアドレス情報表示システムにおいて、前記アドレス情報には、該アドレス情報に対応するアドレスを利用する通信プロトコルを特定可能な通信プロトコル情報が含まれており、前記判断手段は、前記通信プロトコル情報に基づいて、通信を行う機器双方で利用可能な通信プロトコルで利用されるアドレスについて、利用可能な状態にあると判断する一方、通信を行う機器双方で利用可能ではない通信プロトコルで利用されるアドレスについて、利用可能な状態にないと判断する手段であると好ましい。
より具体的な例を挙げれば、例えば、アドレス情報には、アドレス情報に対応するアドレスを利用する通信プロトコルが、IPv4なのかIPv6なのかを特定可能な通信プロトコル情報が含まれており、判断手段は、通信プロトコル情報に基づいて、通信を行う機器双方で利用可能な通信プロトコルがIPv4であれば、IPv4で利用されるアドレスについて、利用可能な状態にあると判断する一方、通信を行う機器双方で利用可能ではない通信プロトコルがIPv6であれば、IPv6で利用されるアドレスについて、利用可能な状態にないと判断する。
したがって、このアドレス情報表示システムによれば、例えばIPv4/IPv6の双方に対応するデバイスのように、異なる通信プロトコルに対応するいくつかのアドレス情報が混在する場合でも、第1のノードがIPv4しか使えなければ、IPv4で利用されるアドレスについて、利用可能な状態にあると判断するので、第1のノードとの通信で利用可能なアドレスがどれなのかを知ることができる。なお、以上の説明では、特定される通信プロトコルの例としてIPv4/IPv6を示したが、これら以外の通信プロトコルを特定対象とできるのはもちろんである。
また、本発明のアドレス情報表示システムにおいて、一つのデバイスに対応する複数の前記アドレス情報には、複数の異なる通信プロトコルで利用される複数のアドレスそれぞれに対応するアドレス情報が含まれており、前記判断手段は、複数の前記アドレス情報それぞれに基づいて、各アドレス情報に対応するアドレスが利用可能な状態にあるか否かを、前記複数の異なる通信プロトコルそれぞれについて判断する手段であり、前記表示手段は、前記複数の異なる通信プロトコル毎に、前記判断手段によって利用可能な状態にあると判断されたアドレスを表示する手段であると好ましい。
このようなアドレス情報表示システムによれば、複数の異なる通信プロトコル毎に、判断手段によって利用可能な状態にあると判断されたアドレスを表示するので、例えばIPv4/IPv6の双方に対応するデバイスのように、異なる通信プロトコルに対応するいくつかのアドレス情報が混在する場合に、IPv4/IPv6のそれぞれについて、利用可能な状態にあると判断されたアドレスが表示されることになり、それら異なる通信プロトコルを双方とも利用可能であれば、双方とも利用可能であることを知ることができる。
また、本発明のアドレス情報表示システムにおいて、一つのデバイスに対応する複数の前記アドレス情報には、同じ通信プロトコルで利用される複数のアドレスそれぞれに対応するアドレス情報が含まれており、前記判断手段は、複数の前記アドレス情報それぞれに基づいて、各アドレス情報に対応するアドレスが利用可能な状態にあるか否かを判断する手段であると好ましい。
このようなアドレス情報表示システムによれば、例えばIPv6の場合のように、同じ通信プロトコルで利用される複数のアドレスが存在する場合でも、判断手段は、各アドレスが利用可能な状態にあるか否かを判断し、その判断結果を表示することができる。
また、本発明のアドレス情報表示システムにおいて、前記表示手段は、前記判断手段において利用可能な状態にあると判断されたアドレスの中に、利用者が意図的に変更しない限り変更されない静的アドレスが含まれている場合に、該静的アドレスを少なくとも含む1以上のアドレスを表示すると好ましい。
このようなアドレス情報表示システムによれば、利用可能な状態にあると判断されたアドレスの中に静的アドレスが含まれていれば、静的アドレス以外のアドレスよりも優先的に静的アドレスを表示することができる。
また、本発明のアドレス情報表示システムにおいて、前記表示手段は、前記判断手段において利用可能な状態にあると判断されたアドレスが複数ある場合に、該複数のアドレスを全て表示すると好ましい。
このようなアドレス情報表示システムによれば、判断手段において利用可能な状態にあると判断されたアドレスすべてを表示することができる。
また、本発明のアドレス情報表示システムにおいて、前記表示手段は、前記判断手段において利用可能な状態にあると判断されたアドレスの中に、ローカルエリアネットワーク外にあるノードとの通信が可能な広域アドレスが含まれている場合に、該広域アドレスを少なくとも含む1以上のアドレスを表示すると好ましい。
このようなアドレス情報表示システムによれば、利用可能な状態にあると判断されたアドレスの中に広域アドレスが含まれていれば、広域アドレス以外のアドレスよりも優先的に広域アドレスを表示することができる。
また、本発明のアドレス情報表示システムにおいて、前記表示手段は、前記判断手段において利用可能な状態にあると判断されたアドレスの中に、前記デバイスが最後に通信に使ったアドレスが含まれている場合に、該アドレスを少なくとも含む1以上のアドレスを表示すると好ましい。
このようなアドレス情報表示システムによれば、利用可能な状態にあると判断されたアドレスの中に、デバイスが最後に通信に使ったアドレスが含まれていれば、そのアドレスを、それ以前の通信で使われたアドレスよりも優先的に表示するので、他のアドレスよりも通信できる可能性が高いアドレスを表示することができる。
また、本発明のアドレス情報表示システムにおいて、利用者が任意に指定可能な表示条件を記憶する表示条件記憶手段を備えており、前記表示手段は、前記判断手段において利用可能な状態にあると判断されたアドレスの中に、前記表示条件記憶手段に記憶された表示条件を満足するアドレスが含まれている場合に、該アドレスを少なくとも含む1以上のアドレスを表示すると好ましい。
このようなアドレス情報表示システムによれば、利用可能な状態にあると判断されたアドレスの中に、表示条件記憶手段に記憶された表示条件を満足するアドレスが含まれてい利用れば、それ以外のアドレスよりも優先的に、表示条件を満足するアドレスを表示するので、利用者が任意に表示条件を指定して、利用者のニーズに応じたアドレスを表示することができる。
以上、利用可能な状態にあるアドレスを少なくとも1つは表示するとともに、利用可能な状態にないアドレスについては表示形態を変えて表示するか非表示とするシステムについて説明してきたが、以下は、利用者が意図的に変更しない限り変更されない静的アドレスを少なくとも1つは表示するシステムについて説明する。
以下に説明するアドレス情報表示システムは、ネットワークに接続されたデバイスに割り当てられたアドレスに関する情報であるアドレス情報を表示するアドレス情報表示装置として、第1のノードを機能させるためのアドレス情報表示システムであって、前記アドレス情報を記憶する手段であり、一つのデバイスに対応する複数のアドレス情報がある場合には、該複数のアドレス情報を記憶するアドレス情報記憶手段と、前記アドレス情報記憶手段によって記憶したアドレス情報に基づいて、該アドレス情報に対応するアドレスが、利用者が意図的に変更しない限り変更されない静的アドレスか否かを判断する判断手段と、少なくとも前記判断手段によって静的アドレスと判断されたアドレスについては、該アドレスを表示するとともに、前記判断手段によって静的アドレス以外のアドレスと判断されたアドレスについては、前記静的アドレスと判断されたアドレスとは異なる表示形態で表示するか非表示とする表示手段とを備えたことを特徴とする。
このアドレス情報表示システムにおいて、判断手段は、アドレス情報記憶手段に記憶されたアドレス情報に基づいて、デバイスに割り当てられたアドレスが静的アドレスであるか否かを判断する。特に、一つのデバイスに対応する複数のアドレス情報がアドレス情報記憶手段に記憶されている場合、判断手段は、アドレス情報記憶手段に記憶された複数のアドレス情報それぞれに基づいて、各アドレス情報に対応するアドレスそれぞれについて、静的アドレスであるか否かを判断する。そして、表示手段は、判断手段において静的アドレスであると判断されたアドレスについて、そのアドレスを少なくとも1つは表示するとともに、判断手段において静的アドレス以外のアドレスであると判断されたアドレスについては、静的アドレスと判断されたアドレスとは異なる表示形態で表示するか非表示とする。なお、異なる表示形態は、表示色が異なるもの、書体が異なるもの、文字のサイズが異なるもの、アンダーラインその他の文字に対する修飾が異なるもの、点滅・反転などの状態が異なるものなど、どのような形態の違いであってもよく、これらの組み合わせであってもよい。
このようなアドレス情報表示システムであれば、表示手段によって表示されたアドレスを見た利用者は、表示形態の違いにより、静的アドレスであるか静的アドレス以外のアドレスであるかを識別することができ、あるいは、アドレスが表示されていることをもって静的アドレスであると識別することができる。
したがって、本発明のアドレス情報表示システムによれば、例えば、静的アドレスと静的アドレス以外のアドレスとを分類しないまま無作為に表示してしまうものとは異なり、1つのデバイスに対して割り当てられた複数のアドレスを利用者にとって見やすいかたちで表示することができ、利用者は、静的アドレスを把握しやすくなる。
なお、このアドレス情報表示システムにおいても、上記アドレス情報記憶手段、判断手段、および表示手段のうち、少なくとも表示手段は第1のノードに設けられ、これにより、第1のノードがアドレス情報表示装置として機能することになるが、アドレス情報記憶手段、および判断手段については、第1のノードに設けられていてもよいし、第1のノード以外のノードに設けられていてもよい。
また、本発明のアドレス情報表示システムは、さらに次のような構成を備えているとより望ましいものになる。
まず、本発明のアドレス情報表示システムにおいて、前記表示手段は、前記判断手段によって静的アドレス以外のアドレスと判断されたアドレスについては、非表示とすると好ましい。
このようなアドレス情報表示システムの場合、静的アドレス以外のアドレスと判断されたアドレスは表示されないので、静的アドレス以外は不要な場合に便利である。
また、本発明のアドレス情報表示システムにおいて、前記表示手段は、前記判断手段によって静的アドレス以外のアドレスと判断されたアドレスについては、前記静的アドレスと判断されたアドレスとは異なる表示形態で表示すると好ましい。
このようなアドレス情報表示システムの場合、どのアドレスが静的アドレスとして設定されたのかを知ることができる。
また、本発明のアドレス情報表示システムにおいて、前記表示手段は、前記判断手段によって静的アドレスと判断されたアドレスがある場合に、該静的アドレスを少なくとも含む1以上のアドレスを表示すると好ましい。
このようなアドレス情報表示システムでも、どのアドレスが静的アドレスとして設定されたのかを知ることができる。
また、本発明のアドレス情報表示システムにおいて、前記表示手段は、前記判断手段によって静的アドレスと判断されたアドレスが複数ある場合は、最初に1つの静的アドレスだけを表示し、利用者が所定の操作を行った場合に、複数の静的アドレスを表示すると好ましい。
このようなアドレス情報表示システムによれば、静的アドレスと判断されたアドレスが複数ある場合に、最初は1つの静的アドレスだけを表示するので、最初から複数のアドレスを表示してしまうものに比べ、画面レイアウトをすっきりさせることができ、利用者が所定の操作を行った場合には、複数の静的アドレスを表示するので、単に1つの静的アドレスだけしか表示できないものとは異なり、複数の静的アドレスを知りたい場合にも、問題なく複数の静的アドレスを表示させることができる。
次に、本発明のアドレス情報表示プログラムについて説明する。
本発明のアドレス情報表示プログラムは、ネットワークを構成する複数のノードのうち、少なくとも第1のノードを、前記ネットワークに接続されたデバイスに割り当てられたアドレスに関する情報であるアドレス情報を表示するアドレス情報表示装置として機能させるためのアドレス情報表示プログラムであって、前記ネットワークを構成するノードのいずれかから、前記アドレス情報を取得する手順であり、一つのデバイスに対応する複数のアドレス情報がある場合には、該複数のアドレス情報を取得するアドレス情報取得手順と、前記アドレス情報取得手順において取得したアドレス情報に基づいて、前記デバイスに割り当てられたアドレスが利用可能な状態にあるか否かを判断する手順であり、一つのデバイスに対応する複数のアドレス情報を前記アドレス情報取得手順において取得した場合には、前記複数のアドレス情報それぞれに基づいて、各アドレス情報に対応するアドレスそれぞれについて、利用可能な状態にあるか否かを判断する判断手順と、前記判断手順において利用可能な状態にあると判断されたアドレスについて、該アドレスを少なくとも1つは表示するとともに、前記判断手段において利用可能な状態にないと判断されたアドレスについては、前記利用可能な状態にあると判断されたアドレスとは異なる表示形態で表示するか非表示とする表示手順とを前記第1のノードに実行させるためのプログラムである。
このアドレス情報表示プログラムに従った処理を実行する第1のノードとなる機器としては、例えばパーソナルコンピュータを代表例として挙げることができるが、同等な処理を実行可能な機器であれば、パーソナルコンピュータ以外の機器であっても構わない。
また、このネットワーク上のノードのいずれかにはアドレス情報記憶手段が設けられ、上記アドレス情報表示プログラム中、アドレス情報取得手順は、ネットワーク上に存在するアドレス情報記憶手段から、アドレス情報を取得する手順として構成される。アドレス情報記憶手段は、先に説明したアドレス情報表示システムに設けられていたものと同等な手段である。
上記のようなアドレス情報表示プログラムに従った処理を第1のノードに実行させた場合、判断手順においては、アドレス情報取得手順において取得したアドレス情報に基づいて、デバイスに割り当てられたアドレスが利用可能な状態にあるか否かを判断する。特に、一つのデバイスに対応する複数のアドレス情報をアドレス情報取得手順において取得した場合、判断手順においては、アドレス情報取得手順において取得した複数のアドレス情報それぞれに基づいて、各アドレス情報に対応するアドレスそれぞれについて、利用可能な状態にあるか否かを判断する。そして、表示手順においては、判断手順において利用可能な状態にあると判断されたアドレスについて、そのアドレスを少なくとも1つは表示するとともに、判断手順において利用可能な状態にないと判断されたアドレスについては、利用可能な状態にあると判断されたアドレスとは異なる表示形態で表示するか非表示とする。なお、異なる表示形態は、表示色が異なるもの、書体が異なるもの、文字のサイズが異なるもの、アンダーラインその他の文字に対する修飾が異なるもの、点滅・反転などの状態が異なるものなど、どのような形態の違いであってもよく、これらの組み合わせであってもよい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードであれば、表示手順の実行に伴って表示されたアドレスを見た利用者は、表示形態の違いにより、利用可能な状態にあるアドレスか利用可能な状態にないアドレスかを識別することができ、あるいは、アドレスが表示されていることをもって利用可能な状態にあるアドレスであると識別することができる。
したがって、本発明のアドレス情報表示プログラムに従った処理を実行する第1のノードによれば、例えば、利用可能な状態にあるアドレスか否かを分類しないまま無作為に表示してしまうものとは異なり、1つのデバイスに対して割り当てられた複数のアドレスを利用者にとって見やすいかたちで表示することができ、利用者は、利用可能な状態にあるアドレスを把握しやすくなる。
なお、本発明のアドレス情報表示プログラムは、さらに次のように構成されているとより望ましいものになる。
まず、本発明のアドレス情報表示プログラムは、前記判断手順において利用可能な状態にないと判断されたアドレスがあった場合に、その旨のメッセージを出力するメッセージ出力手順を備えていると好ましい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードによれば、判断手順において利用可能な状態にないと判断されたアドレスがあったことを、利用者が簡単に認識でき、特に、判断手順において利用可能な状態にないと判断されたアドレスが非表示とされる場合でも、利用者は、メッセージ出力手順によって出力されるメッセージによって、利用可能な状態にないアドレスがあったことを認識できる。
また、本発明のアドレス情報表示プログラムにおいて、前記アドレス情報には、該アドレス情報に対応するアドレスが、前記第1のノードとの通信が可能なアドレスであるか否かを示す第1の通信可否情報が含まれており、前記判断手順は、前記第1の通信可否情報に基づいて、前記第1のノードとの通信が可能なアドレスについて、利用可能な状態にあると判断する一方、前記第1のノードとの通信が不能なアドレスについて、利用可能な状態にないと判断すると好ましい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードによれば、アドレスの表示を行っている第1のノードとデバイスとの間で通信を行いたい場合に、どのアドレスを利用すると通信ができるのかを識別できるので、例えば、第1のノードを利用している利用者が、第1のノードからデバイスに対してリモート管理を実施してデバイスの設定変更を行いたいような場合に、どのアドレスを利用すればよいのかを簡単に知ることができる。
また、本発明のアドレス情報表示プログラムにおいて、前記アドレス情報には、該アドレス情報に対応するアドレスが、前記第1のノードとは異なる第2のノードとの通信が可能なアドレスであるか否かを示す第2の通信可否情報が含まれており、前記判断手順は、前記第2の通信可否情報に基づいて、前記第2のノードとの通信が可能なアドレスについて、利用可能な状態にあると判断する一方、前記第2のノードとの通信が不能なアドレスについて、利用可能な状態にないと判断すると好ましい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードによれば、第1のノードとは異なる第2のノードとデバイスとの間で通信を行いたい場合に、第2のノード側でどのアドレスを利用すればよいのかを、第1のノードにおいて知ることができる。
すなわち、デバイスに複数のアドレスがある場合、そのデバイスとの通信を行う際に、第1のノードと第2のノードとでは、異なるアドレスを利用している可能性がある。そのため、第2のノードがデバイスとの通信時に利用しているアドレスを利用者が知りたい場合には、上記のような第2の通信可否情報を採用することにより、第1のノードでアドレスを表示するにもかかわらず、第2のノードがデバイスとの通信時に利用しているアドレスを知ることができる。
また、本発明のアドレス情報表示プログラムにおいて、前記表示手順は、前記判断手順によって利用可能な状態にないと判断されたアドレスについては、前記利用可能な状態にあると判断されたアドレスとは異なる表示形態で表示する手順であると好ましい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードの場合、利用可能な状態にないと判断されたアドレスも表示されるので、利用可能な状態にないと判断されたアドレスも知りたい場合(例えば、過去のアクセス解析を行いたい場合など)に便利である。
また、本発明のアドレス情報表示プログラムにおいて、前記表示手順は、前記判断手順によって利用可能な状態にないと判断されたアドレスについては、非表示とする手順であっても好ましい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードの場合、利用可能な状態にないと判断されたアドレスは表示されないので、利用可能な状態にあると判断されたアドレス以外は不要な場合に便利である。
また、本発明のアドレス情報表示プログラムにおいて、前記アドレス情報には、該アドレス情報に対応するアドレスを利用する通信プロトコルを特定可能な通信プロトコル情報が含まれており、前記判断手順は、前記通信プロトコル情報に基づいて、通信を行う機器双方で利用可能な通信プロトコルで利用されるアドレスについて、利用可能な状態にあると判断する一方、通信を行う機器双方で利用可能ではない通信プロトコルで利用されるアドレスについて、利用可能な状態にないと判断する手順であると好ましい。
より具体的な例を挙げれば、例えば、アドレス情報には、アドレス情報に対応するアドレスを利用する通信プロトコルが、IPv4なのかIPv6なのかを特定可能な通信プロトコル情報が含まれており、判断手順においては、通信プロトコル情報に基づいて、通信を行う機器双方で利用可能な通信プロトコルがIPv4であれば、IPv4で利用されるアドレスについて、利用可能な状態にあると判断する一方、通信を行う機器双方で利用可能ではない通信プロトコルがIPv6であれば、IPv6で利用されるアドレスについて、利用可能な状態にないと判断する。
したがって、このアドレス情報表示プログラムに従った処理を実行する第1のノードによれば、例えばIPv4/IPv6の双方に対応するデバイスのように、異なる通信プロトコルに対応するいくつかのアドレス情報が混在する場合でも、第1のノードがIPv4しか使えなければ、IPv4で利用されるアドレスについて、利用可能な状態にあると判断するので、第1のノードとの通信で利用可能なアドレスがどれなのかを知ることができる。なお、以上の説明では、特定される通信プロトコルの例としてIPv4/IPv6を示したが、これら以外の通信プロトコルを特定対象とできるのはもちろんである。
また、本発明のアドレス情報表示プログラムにおいて、一つのデバイスに対応する複数の前記アドレス情報には、複数の異なる通信プロトコルで利用される複数のアドレスそれぞれに対応するアドレス情報が含まれており、前記判断手順は、複数の前記アドレス情報それぞれに基づいて、各アドレス情報に対応するアドレスが利用可能な状態にあるか否かを、前記複数の異なる通信プロトコルそれぞれについて判断する手順であり、前記表示手順は、前記複数の異なる通信プロトコル毎に、前記判断手順によって利用可能な状態にあると判断されたアドレスを表示する手順であると好ましい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードによれば、複数の異なる通信プロトコル毎に、判断手順によって利用可能な状態にあると判断されたアドレスを表示するので、例えばIPv4/IPv6の双方に対応するデバイスのように、異なる通信プロトコルに対応するいくつかのアドレス情報が混在する場合に、IPv4/IPv6のそれぞれについて、利用可能な状態にあると判断されたアドレスが表示されることになり、それら異なる通信プロトコルを双方とも利用可能であれば、双方とも利用可能であることを知ることができる。
また、本発明のアドレス情報表示プログラムにおいて、一つのデバイスに対応する複数の前記アドレス情報には、同じ通信プロトコルで利用される複数のアドレスそれぞれに対応するアドレス情報が含まれており、前記判断手順は、複数の前記アドレス情報それぞれに基づいて、各アドレス情報に対応するアドレスが利用可能な状態にあるか否かを判断する手順であると好ましい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードによれば、例えばIPv6の場合のように、同じ通信プロトコルで利用される複数のアドレスが存在する場合でも、判断手順は、各アドレスが利用可能な状態にあるか否かを判断し、その判断結果を表示することができる。
また、本発明のアドレス情報表示プログラムにおいて、前記表示手順は、前記判断手順において利用可能な状態にあると判断されたアドレスの中に、利用者が意図的に変更しない限り変更されない静的アドレスが含まれている場合に、該静的アドレスを少なくとも含む1以上のアドレスを表示する手順であると好ましい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードによれば、利用可能な状態にあると判断されたアドレスの中に静的アドレスが含まれていれば、静的アドレス以外のアドレスよりも優先的に静的アドレスを表示することができる。
また、本発明のアドレス情報表示プログラムにおいて、前記表示手順は、前記判断手順において利用可能な状態にあると判断されたアドレスが複数ある場合に、該複数のアドレスを全て表示する手順であると好ましい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードによれば、判断手順において利用可能な状態にあると判断されたアドレスすべてを表示することができる。
また、本発明のアドレス情報表示プログラムにおいて、前記表示手順は、前記判断手順において利用可能な状態にあると判断されたアドレスの中に、ローカルエリアネットワーク外にあるノードとの通信が可能な広域アドレスが含まれている場合に、該広域アドレスを少なくとも含む1以上のアドレスを表示する手順であると好ましい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードによれば、利用可能な状態にあると判断されたアドレスの中に広域アドレスが含まれていれば、広域アドレス以外のアドレスよりも優先的に広域アドレスを表示することができる。
また、本発明のアドレス情報表示プログラムにおいて、前記表示手順は、前記判断手順において利用可能な状態にあると判断されたアドレスの中に、前記デバイスが最後に通信に使ったアドレスが含まれている場合に、該アドレスを少なくとも含む1以上のアドレスを表示する手順であると好ましい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードによれば、利用可能な状態にあると判断されたアドレスの中に、デバイスが最後に通信に使ったアドレスが含まれていれば、そのアドレスを、それ以前の通信で使われたアドレスよりも優先的に表示するので、他のアドレスよりも通信できる可能性が高いアドレスを表示することができる。
また、本発明のアドレス情報表示プログラムにおいて、利用者が任意に指定可能な表示条件を取得する表示条件取得手順を備えており、前記表示手順は、前記判断手順において利用可能な状態にあると判断されたアドレスの中に、前記表示条件取得手順に取得された表示条件を満足するアドレスが含まれている場合に、該アドレスを少なくとも含む1以上のアドレスを表示する手順であると好ましい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードによれば、利用可能な状態にあると判断されたアドレスの中に、表示条件取得手順に取得された表示条件を満足するアドレスが含まれてい利用れば、それ以外のアドレスよりも優先的に、表示条件を満足するアドレスを表示するので、利用者が任意に表示条件を指定して、利用者のニーズに応じたアドレスを表示することができる。
以上、利用可能な状態にあるアドレスを少なくとも1つは表示するとともに、利用可能な状態にないアドレスについては表示形態を変えて表示するか非表示とする処理を第1のノードに実行させるためのプログラムについて説明してきたが、以下は、利用者が意図的に変更しない限り変更されない静的アドレスを少なくとも1つは表示する処理を第1のノードに実行させるためのプログラムについて説明する。
以下に説明するアドレス情報表示プログラムは、ネットワークを構成する複数のノードのうち、少なくとも第1のノードを、前記ネットワークに接続されたデバイスに割り当てられたアドレスに関する情報であるアドレス情報を表示するアドレス情報表示装置として機能させるためのアドレス情報表示プログラムであって、前記ネットワークを構成するノードのいずれかから、前記アドレス情報を取得する手順であり、一つのデバイスに対応する複数のアドレス情報がある場合には、該複数のアドレス情報を取得するアドレス情報取得手順と、前記アドレス情報取得手順において取得したアドレス情報に基づいて、前記デバイスに割り当てられたアドレスが、利用者が意図的に変更しない限り変更されない静的アドレスか否かを判断する手順であり、一つのデバイスに対応する複数のアドレス情報を前記アドレス情報取得手順において取得した場合には、前記複数のアドレス情報それぞれに基づいて、各アドレス情報に対応するアドレスそれぞれについて、前記静的アドレスか否かを判断する判断手順と、前記判断手順において静的アドレスと判断されたアドレスについて、該アドレスを少なくとも1つは表示するとともに、前記判断手順において静的アドレス以外のアドレスと判断されたアドレスについては、前記静的アドレスと判断されたアドレスとは異なる表示形態で表示するか非表示とする表示手順とを前記第1のノードに実行させるプログラムである。
このアドレス情報表示プログラムに従った処理を実行する第1のノードとなる機器としては、既に説明した通り、例えばパーソナルコンピュータを代表例として挙げることができるが、同等な処理を実行可能な機器であれば、パーソナルコンピュータ以外の機器であっても構わない。
また、このネットワーク上のノードのいずれかにはアドレス情報記憶手段が設けられ、上記アドレス情報表示プログラム中、アドレス情報取得手順は、ネットワーク上に存在するアドレス情報記憶手段から、アドレス情報を取得する手順として構成される。アドレス情報記憶手段は、先に説明したアドレス情報表示システムに設けられていたものと同等な手段である。
上記のようなアドレス情報表示プログラムに従った処理を第1のノードに実行させた場合、判断手順においては、アドレス情報取得手順において取得したアドレス情報に基づいて、デバイスに割り当てられたアドレスが静的アドレスであるか否かを判断する。特に、一つのデバイスに対応する複数のアドレス情報をアドレス情報取得手順において取得した場合、判断手順においては、アドレス情報取得手順において取得した複数のアドレス情報それぞれに基づいて、各アドレス情報に対応するアドレスそれぞれについて、静的アドレスであるか否かを判断する。そして、表示手順は、判断手順において静的アドレスであると判断されたアドレスについて、そのアドレスを少なくとも1つは表示するとともに、判断手順において静的アドレス以外のアドレスであると判断されたアドレスについては、静的アドレスと判断されたアドレスとは異なる表示形態で表示するか非表示とする。なお、異なる表示形態は、表示色が異なるもの、書体が異なるもの、文字のサイズが異なるもの、アンダーラインその他の文字に対する修飾が異なるもの、点滅・反転などの状態が異なるものなど、どのような形態の違いであってもよく、これらの組み合わせであってもよい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードであれば、表示手順の実行に伴って表示されたアドレスを見た利用者は、表示形態の違いにより、静的アドレスか静的アドレス以外のアドレスかを識別することができ、あるいは、アドレスが表示されていることをもって静的アドレスであると識別することができる。
したがって、本発明のアドレス情報表示プログラムに従った処理を実行する第1のノードによれば、例えば、静的アドレスと静的アドレス以外のアドレスとを分類しないまま無作為に表示してしまうものとは異なり、1つのデバイスに対して割り当てられた複数のアドレスを利用者にとって見やすいかたちで表示することができ、利用者は、静的アドレスを把握しやすくなる。
なお、本発明のアドレス情報表示プログラムは、さらに次のように構成されているとより望ましいものになる。
まず、本発明のアドレス情報表示プログラムにおいて、前記表示手順は、前記判断手順によって静的アドレス以外のアドレスと判断されたアドレスについては、非表示とする手順であると好ましい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードの場合、静的アドレス以外のアドレスと判断されたアドレスは表示されないので、静的アドレス以外は不要な場合に便利である。
また、本発明のアドレス情報表示プログラムにおいて、前記表示手順は、前記判断手順によって静的アドレス以外のアドレスと判断されたアドレスについては、前記静的アドレスと判断されたアドレスとは異なる表示形態で表示する手順であると好ましい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードの場合、どのアドレスが静的アドレスとして設定されたのかを知ることができる。
また、本発明のアドレス情報表示プログラムにおいて、前記表示手順は、前記判断手順によって静的アドレスと判断されたアドレスがある場合に、該静的アドレスを少なくとも含む1以上のアドレスを表示する手順であると好ましい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードでも、どのアドレスが静的アドレスとして設定されたのかを知ることができる。
また、本発明のアドレス情報表示プログラムにおいて、前記表示手順は、前記判断手順によって静的アドレスと判断されたアドレスが複数ある場合は、最初に1つの静的アドレスだけを表示し、利用者が所定の操作を行った場合に、複数の静的アドレスを表示する手順であると好ましい。
このようなアドレス情報表示プログラムに従った処理を実行する第1のノードによれば、静的アドレスと判断されたアドレスが複数ある場合に、最初は1つの静的アドレスだけを表示するので、最初から複数のアドレスを表示してしまうものに比べ、画面レイアウトをすっきりさせることができ、利用者が所定の操作を行った場合には、複数の静的アドレスを表示するので、単に1つの静的アドレスだけしか表示できないものとは異なり、複数の静的アドレスを知りたい場合にも、問題なく複数の静的アドレスを表示させることができる。
次に、本発明の実施形態について一例を挙げて説明する。
(1)システム全体の構成
図1は、本発明の一実施形態を説明するために例示するネットワークシステムの構成図である。
このネットワークシステム中、管理PC1は、本発明でいうアドレス情報表示装置として機能するように構成される第1のノード(本発明のアドレス情報表示プログラムを実行する第1のノード)に相当するものである。また、このネットワークシステム中には、アドレス情報の表示対象となるデバイスとして、ネットワーク上のノードからの印刷要求を受け付けるプリンタサーバ機能を備えたプリンタ2,3,4が設けられている。
これらのうち、管理PC1とプリンタ2は、いずれもローカルエリアネットワーク(Local Area Network;以下、LANと略称する。)6に接続されており、このLAN6には、プリンタ2に対して印刷要求を発行するクライアントPC8なども接続されている。また、プリンタ3は、LAN10に接続され、このLAN10には、ルータ12を介してLAN6も接続され、これらLAN6,10は、LAN6が下位、LAN10が上位に当たる階層構造を持ったLANとなっている。さらに、プリンタ4は、LAN14に接続されており、このLAN14には、プリンタ4に対して印刷要求を発行するクライアントPC16なども接続されている。そして、LAN10,14は、それぞれゲートウェイ18,19を介してインターネット20に接続されている。
ここで、上記ネットワーク内の機器(例えば、管理PC1、プリンタ2,3,4等)には、IPv4対応機器、IPv6対応機器、IPv4/IPv6両対応機器などが混在しており、IPv4対応機器およびIPv4/IPv6両対応機器は、IPv4規格に則った通信手順で相互に通信を行うことができ、IPv6対応機器およびIPv4/IPv6両対応機器は、IPv6規格に則った通信手順で相互に通信を行うことができるようになっている。
より詳しくは、IPv4対応機器およびIPv4/IPv6両対応機器には、各機器をネットワーク上で一意に特定するためのアドレスとしてIPv4アドレスが割り当てられ、このIPv4アドレスを利用して機器間での通信が行われる。また、IPv6対応機器およびIPv4/IPv6両対応機器には、各機器をネットワーク上で一意に特定するためのアドレスとしてIPv6アドレスが割り当てられ、このIPv6アドレスを利用して機器間での通信が行われる。したがって、IPv4/IPv6両対応機器には、IPv4アドレスおよびIPv6アドレスの双方が割り当てられていることになる。
また、IPv4では、1つの機器に対して1つのIPv4アドレスが割り当てられるのに対し、IPv6では、1つの機器に対して複数のIPv6アドレスを割り当てることができる。これら複数のIPv6アドレスは、例えば、その有効な通信範囲や割り当て方法に違いがあるアドレスとなっている。
より具体的には、IPv6では、広さの異なる通信範囲(スコープ)が何段階か想定されていて、IPv6対応機器(ノード)には、各通信範囲(スコープ)内での通信時に利用可能なアドレスを、各通信範囲(スコープ)毎に設定できるようになっている。最も広い通信範囲は、グローバルスコープと呼ばれる通信範囲で、これは、図1で言えば、インターネット20を含むネットワーク全体を包含する範囲となっている。また、グローバルスコープの内側には、いくつかのサイトローカルスコープと呼ばれる通信範囲が設定されており、これは、図1で言えば、ゲートウェイ18,19を介してインターネット20に接続されている各LAN全体を包含する範囲(図1中のサイトローカルスコープA,B)となっている。さらに、サイトローカルスコープの内側には、いくつかのリンクローカルスコープと呼ばれる通信範囲も設定されており、これはサイトローカルスコープ内においてルータを介することなく直接通信できる範囲(図1で言えば、ルータ12を介することなく通信可能なLAN6の如きサブネットの内側に相当する範囲)となっている。そして、これら何段階かのスコープに対応するかたちで、IPv6対応機器(ノード)には、グローバルスコープ内での通信時に利用可能なグローバルアドレス、サイトローカルスコープ内での通信時に利用可能なサイトローカルアドレス、リンクローカルスコープ内での通信時に利用可能なリンクローカルアドレスなどを割り当て可能となっている。グローバルスコープとリンクローカルスコープとの間には、ルータの数に応じた何段階かの階層が作られ得るので、どの階層までがサイトローカルスコープとなるのかは、一概には特定できないが、一般的には、特定の管理者によって他の範囲とは分けて管理されている階層がサイトと呼ばれ、そのサイト内の範囲がサイトローカルスコープと呼ばれることになる。なお、グローバルアドレスは、サイトローカルスコープ内での通信時、リンクローカルスコープ内での通信時にも利用可能であり、サイトローカルアドレスは、リンクローカルスコープ内での通信時にも利用可能なので、これらのアドレス全てを割り当てる必要はなく、各機器間での通信を行う上で都合のよいものを任意に利用すればよい。
また、IPアドレスの割り当て方法には、IPv4であるかIPv6であるかにかかわらず、利用者が決めた静的アドレス(スタティックアドレス)を割り当てる方法、ネットワーク内において自動的に決められる自動設定アドレスを割り当てる方法などがあるが、IPv4の場合は、いずれか一方の方法を択一的に利用してアドレスの割り当てを行うことしかできないのに対し、IPv6の場合は、上述の通り、複数のアドレスを割り当てることができるので、静的アドレス/自動設定アドレスの両方を設定することも可能となっている。しかも、IPv6の場合は、アドレスを自動設定する方法にも、DHCPサーバからIPアドレスを取得するステートフルアドレス自動設定、各ノードがMACアドレス等に基づいてIPアドレスを生成するステートレスアドレス自動設定などの違いがある。
つまり、本ネットワークシステムで扱うアドレスには、IPv4/IPv6といった通信プロトコルの違い、グローバル/サイトローカル/リンクローカルといった通信範囲の違い、静的/自動設定(スタティック/ステートフル/ステートレス)といった設定方法の違いなどがある。
(2)アドレス情報記憶手段の構成
次に、上記ネットワークシステムにおいて、アドレス情報の表示対象となるデバイスであるプリンタ2,3,4に設けられるアドレスリスト(本発明でいうアドレス情報記憶手段)の構成について説明する。
アドレス情報の表示対象となるデバイスであるプリンタ2,3,4には、アドレスリスト(図1中のプリンタ2参照)が記憶されている。このアドレスリスト中には、図2に例示するように、プリンタ2,3,4に割り当てられた複数のアドレスそれぞれに対応するアドレス情報が格納されている。
各アドレス情報は、IPアドレス、スコープ、メソッド、life time(有効期限)、表示回数、フラグ、マークなどの項目からなる。これらの項目のうち、IPアドレスには、IPアドレスが格納され、スコープには、既に説明したグローバル/サイトローカル/リンクローカルのいずれかが格納される。また、メソッドには、IPアドレスの設定法(Static/ Stateless/ Statefullなど)が格納され、life timeには、IPアドレスの有効時間が格納される。IPアドレスの有効時間は、IPアドレスの割り当て時に設定されるもので、0(ゼロ)の場合は無限大として扱われる。表示回数には、後述する処理によって何回そのアドレスが表示されたかを示す値が格納される。フラグには、IPアドレスの状態として、Deprecated、Invalid、なし、のいづれかの情報が格納される。これらのフラグの意味は、後述する処理の中で説明する。マークには、特別なIPアドレスである事を示す情報が格納され、具体的には、Admin:管理PCからアクセスされたアドレスであることを示すマーク、User:クライアントPCからアクセスされたアドレスであることを示すマーク、Last:最後に使用されたアドレスであることを示すマーク、Static:静的アドレスとして設定されたアドレスであることを示すマーク、以上のマークの組み合わせが格納される。
また、アドレスリスト中に含まれる複数のアドレス情報は、優先度(詳しくは後述)の高いものほど上位(図2の例で言えば上側)に来るように、並び順がソートされるようになっている。したがって、後述する処理によりアドレス情報を表示する際には、単にアドレスリスト中での順序に従って複数のアドレス情報を表示するだけで、アドレスを優先度順に表示することができる。
なお、本実施形態において、上記アドレスリストは、SNMPにおいて利用される管理情報ベース(MIB;Management Information Base)の一部として格納される。管理PC1には、SNMPマネージャとしての機能が設けられ、一方、プリンタ2,3,4には、SNMPエージェントとしての機能が設けられ、これらが協働することにより、SNMPマネージャからSNMPエージェントへ、SNMPによりOIDを指定してMIBに格納された情報の取得を要求すれば、プリンタ2,3,4が備える各アドレスリスト内の個々の情報を管理PC1側で取得できるようになっている。
(3)デバイスが実行する処理
次に、アドレス情報の表示対象となるデバイスが実行する処理について説明する。この処理は、プリンタ2,3,4のそれぞれにおいて実行される処理となるが、各プリンタ2,3,4の処理はいずれも同等の処理なので、ここではプリンタ2が実行する処理として説明を続ける。本システムに関連する処理として、プリンタ2は、以下に説明する第1〜第3の処理を実行している。これら3つの処理は、それぞれ独立に非同期で並列に実行される処理となる。
(3.1)デバイスが実行する第1の処理
最初に、デバイスが実行する第1の処理について、図3のフローチャートに基づいて説明する。この第1の処理は、プリンタ2がネットワーク経由でパケットを受信する毎に実行する処理である。
第1の処理を開始すると、プリンタ2は、まずSNMPパケットを受信したかどうかを判断し(S1010)、SNMPパケットであれば(S1010:YES)、SNMP処理(後述)を実行して(S1020)、本処理を終える。また、S1010の処理において、SNMPパケットでなければ(S1010:NO)、RAパケット(ルータ広告パケット)を受信したかどうかを判断し(S1030)、RAパケットであれば(S1030:YES)、RA処理(後述)を実行して(S1040)、本処理を終える。また、S1030の処理において、RAパケットでなければ(S1030:NO)、アプリケーションからのパケットを受信したかどうかを判断し(S1050)、アプリケーションからのパケットであれば(S1050:YES)、各サーバのデータ処理を実行して(S1060)、本処理を終える。なお、S1060の処理は、後述する第3の処理(各サーバの処理)において処理対象とされるデータを、各サーバのデータバッファへ格納する処理であるが、S1060の処理そのものが後述する第3の処理に相当する訳ではなく、後述する第3の処理はS1060の処理とは非同期で実行されることになる。また、S1050の処理において、アプリケーションからのパケットでなければ(S1050:NO)、通常パケット処理を実行して(S1070)、本処理を終える。なお、S1070の処理は、受信したパケットが、SNMPパケット、RAパケット、およびアプリケーションからのパケットのどれにも該当しない場合の処理であり、実際にはさらに細かい処理に分岐することになるが、それらの処理は本発明とは直接関連しない処理となるので、詳細な説明については省略する。
(3.1.1)SNMP処理
次に、上記S1020のSNMP処理について、図4のフローチャートに基づいて説明する。SNMP処理を開始すると、プリンタ2は、まず、アドレスリスト取得要求かどうかを判断する(S1210)。アドレスリスト取得要求は、プリンタ2において管理されているアドレスリストを管理PC1が取得したい場合に、管理PC1からプリンタ2へと送信されるパケットである。
S1210の処理において、アドレスリスト取得要求であると判断された場合(S1210:YES)、プリンタ2は、管理PCアドレスチェック処理を実行する(S1220)。このS1220の処理は、詳しくは図5に示すような処理となる。
すなわち、プリンタ2は、図5に示すように、プリンタ2に記憶されているアドレスリスト(図2参照)を対象にして、まず、リスト順に(アドレスリスト中の優先度順上位側から)アドレス情報を1つ取り出し(S1510)、アドレス情報を取り出すことができたかどうかを判断する(S1520)。プリンタ2には、アドレスが少なくとも1つは割り当てられているので、S1520の処理は、少なくとも1回は肯定判断されることになり(S1520:YES)、その場合、S1510の処理で取り出したアドレス情報中のIPアドレスと、SNMP要求の宛先として使われたSNMPパケット内の宛先アドレスとが一致しているか否かを調べる(S1530)。
S1530の処理において、両アドレスが一致していれば(S1530:YES)、プリンタ2が備えるアドレスリストを更新するため、このアドレスリスト中、S1510の処理で取り出したアドレス情報に相当する部分にAdminマーク(図2参照)を設定する(S1540)。
また、両アドレスが一致していなければ(S1530:NO)、S1510の処理で取り出したアドレス情報中のIPアドレスと、SNMP要求の送信元であるSNMPパケット内の送信元アドレスとが同一サブネット内のアドレスであるか否かを調べる(S1550)。サブネットの一致は、IPv6の場合、通常の端末機器ではプリフィックス長は64であるので、IPアドレスの先頭64ビットを比較して、一致すれば同一サブネットと判断すればよい。IPv4の場合は、サブネットマスクが設定されているので、それでIPアドレスをマスクしてから比較する。
S1550の処理において、両アドレスが同一サブネット内のアドレスであれば(S1550:YES)、プリンタ2が備えるアドレスリストを更新するため、このアドレスリスト中、S1510の処理で取り出したアドレス情報に相当する部分にAdminマーク(図2参照)を設定する(S1560)。
こうしてS1540またはS1560の処理でAdminマークを設定するか、S1550の処理において、両アドレスが同一サブネット内のアドレスでないと判断されたら(S1550:NO)、S1510の処理へと戻り、以降、S1520の処理で否定判断されるまでS1510〜S1560の処理を繰り返す。これにより、アドレスリスト内に含まれる複数のアドレス情報はリスト順に(アドレスリスト中の優先度順上位側から)処理されてゆき、リストの最後にあるアドレス情報が処理された後にS1510の処理を実行すると、アドレス情報を取り出すことができず、その場合は(S1520:NO)、図5に示した処理を終える。
このように図5に示した管理PCアドレスチェック処理では、管理PC1からSNMPパケットが送られて来た際に使用されたアドレスに対して、Adminマークを付加する処理を行う。なお、本実施形態の場合、宛先アドレスが完全に一致するものと、同一ネットワークにあると推測されるものの両方にAdminマークを付加しているが、基本的には、どちから片方でも十分であり、常に両方のチェックが必要なわけではない。
さて、図5に示した管理PCアドレスチェック処理を終えると、図4に示したS1220の処理を終えたことになるので、続いて、プリンタ2は、アドレスリスト更新処理を実行する(S1230)。このS1230の処理は、詳しくは図6に示すような処理となる。
すなわち、プリンタ2は、図6に示すように、まず、クライアントPCアドレスチェック処理を実行する(S1710)。クライアントPCアドレスチェック処理は、詳しくは図7に示すような処理であり、クライアントPCアドレスチェック処理を開始すると、プリンタ2は、まず、ログの最新のものから時間順に項目を取り出す(S1910)。ログは、プリンタ2が備える不揮発性メモリにログファイルとして格納されており、プリンタ2は、事前に取り決められている特定のイベント(例えばパケットの受信等)が発生する毎に、そのイベントの発生日時やイベントの内容をアクセスログ(ログファイル)に記録している。
多くの場合、アクセスログには何らかのログが記録されているので、S1910の処理ではログを取り出せることになり、その場合は(S1920:YES)、そのログがLPDプロトコルを利用した旨のログかどうかを判断する(S1930)。プリンタ2は、LPDプロトコルを用いて印刷要求の到来を待ち受けており、クライアントPC8から印刷要求が到来した場合にはLPDプロトコルの利用がログに記録されている。
S1930の処理において、LPDプロトコルを利用した旨のログでないと判断された場合は(S1930:NO)、S1910の処理へと戻り、S1930の処理で肯定判断されるまでS1910〜S1930の処理を繰り返す。そして、この繰り返し処理において順にログが取り出された結果、S1910の処理でログを取り出せなくなった場合は(S1920:NO)、そのまま図7に示すクライアントPCアドレスチェック処理を終了する。
一方、S1930の処理において、LPDプロトコルを利用した旨のログであると判断された場合は(S1930:YES)、上記S1910〜S1930の処理を抜け、続いて、プリンタ2に記憶されているアドレスリスト(図2参照)を対象にして、リスト順に(アドレスリスト中の優先度順上位側から)アドレス情報を1つ取り出し(S1940)、アドレス情報を取り出すことができたかどうかを判断する(S1950)。プリンタ2には、アドレスが少なくとも1つは割り当てられているので、S1950の処理は、少なくとも1回は肯定判断されることになり(S1950:YES)、その場合、S1940の処理で取り出したアドレス情報中のIPアドレスと、LPDプロトコルによる送信パケットの宛先となる宛先アドレスとが一致しているか否かを調べる(S1960)。
S1960の処理において、両アドレスが一致していれば(S1960:YES)、プリンタ2が備えるアドレスリストを更新するため、このアドレスリスト中、S1940の処理で取り出したアドレス情報に相当する部分にLastマーク、Userマーク(図2参照)を設定する(S1970)。
また、両アドレスが一致していなければ(S1960:NO)、S1940の処理で取り出したアドレス情報中のIPアドレスと、LPDプロトコルによる受信パケットの送信元である送信元アドレスとが同一サブネット内のアドレスであるか否かを調べる(S1980)。サブネットの一致は、IPv6の場合、通常の端末機器ではプリフィックス長は64であるので、IPアドレスの先頭64ビットを比較して、一致すれば同一サブネットと判断すればよい。IPv4の場合は、サブネットマスクが設定されているので、それでIPアドレスをマスクしてから比較する。
S1980の処理において、両アドレスが同一サブネット内のアドレスであれば(S1980:YES)、プリンタ2が備えるアドレスリストを更新するため、このアドレスリスト中、S1510の処理で取り出したアドレス情報に相当する部分にLastマーク、Userマーク(図2参照)を設定する(S1990)。
こうしてS1970またはS1990の処理でLastマーク、Userマークを設定したら、図7に示すクライアントPCアドレスチェック処理を終了する。一方、S1980の処理において、両アドレスが同一サブネット内のアドレスでないと判断されたら(S1980:NO)、S1940の処理へと戻り、以降、S1950の処理で否定判断されるまでS1940〜S1980の処理を繰り返す。これにより、アドレスリスト内に含まれる複数のアドレス情報はリスト順に(アドレスリスト中の優先度順上位側から)処理されてゆき、その際、上記S1960の処理またはS1980の処理で肯定判断がなされれば、上述の通り、S1970またはS1990の処理でLastマーク、Userマークが設定される一方、上記S1960の処理またはS1980の処理で肯定判断がなされなければ、最終的には、リストの最後にあるアドレス情報が処理された後にS1940の処理を実行したところで、アドレス情報を取り出すことができなくなり、その場合は(S1950:NO)、再びS1910の処理へと戻る。その結果、処理対象が次のログへと移り、S1910からの処理が繰り返されることになる。
以上説明したように、図7に示したクライアントPCアドレスチェック処理は、クライアントPC8からアクセスされた際のアドレスを、ログから取り出し、Userマーク、Lastマークを、アドレスリスト中に付加する処理となる。なお、図7では図示を省略してあるが、Lastマークを付加するに当たっては、本処理の開始前にアドレスリスト全体をスキャンして、過去に付加された全てのLastマークを消去しておく必要がある。なお、上述の例では、ログ中の印刷系プロトコルとしてLPDプロトコルのみチェックしており、これは、クライアントPC8からの最後のアクセスを意図した処理となっているが、変形例としては、全てのプロトコルに対してチェックを行う(すなわち、S1930の判断を常にYesとする)ようにしてもよく、これにより、全てのプロトコルが対象となり、その結果、管理PC1も含めて、最後にアクセスされた際のアドレスがマークされる。
こうして図7に示したクライアントPCアドレスチェック処理を終えると、図6に示したS1710の処理を終えたことになり、続いて、プリンタ2は、プリンタ2に記憶されているアドレスリスト(図2参照)を対象にして、リスト順に(アドレスリスト中の優先度順上位側から)アドレス情報を1つ取り出し(S1720)、アドレス情報を取り出すことができたかどうかを判断する(S1730)。プリンタ2には、アドレスが少なくとも1つは割り当てられているので、S1730の処理は、少なくとも1回は肯定判断されることになり(S1730:YES)、その場合、Invalid addressかどうかを判断する(S1740)。Invalid addressは、有効期限が切れたアドレスであり、この有効期限は、プリンタ2に自動設定アドレスが割り当てられた際に各自動設定アドレス毎に設定されるものである。
S1740の処理においてInvalid addressであると判断された場合(S1740:YES)、表示回数をカウントアップし(S1750)、カウントアップしたカウンタ値が所定回数Nを超えていたら(S1760:YES)、そのInvalid Addressに対応するアドレス情報をアドレスリスト中から削除する(S1770)。このS1750〜S1770の処理により、Invalid addressに対応するアドレス情報は、所定回数(=N回)の表示が行われるまではアドレスリストから削除されず、所定回数の表示が行われたらアドレスリストから削除されることになる。なお、本実施形態においては、管理PC1からアドレスリストの取得要求が来た事をもって、Invalid addressが一回表示されたと考えてカウントアップを行っているが、管理PC1において実際にInvalid addressが表示されたか否かについて、プリンタ2側では関知していない。
このようにしてS1770の処理を実行するか、S1760の処理で否定判断されるか、S1740の処理で否定判断されるかすると。S1720の処理へと戻り、以降、S1730の処理で否定判断されるまでは、S1720〜S1770の処理を繰り返す。これにより、アドレスリスト内に含まれる複数のアドレス情報はリスト順に(アドレスリスト中の優先度順上位側から)処理されてゆき、リストの最後にあるアドレス情報が処理された後にS1720の処理を実行すると、アドレス情報を取り出すことができず、その場合は(S1730:NO)、図6に示したアドレスリスト更新処理を終える。
こうして、図6に示したアドレスリスト更新処理において、クライアントPCからのアクセスチェック(図7参照)と、Invalid address表示回数のチェックが行われたら、図4に示したS1230の処理を終えたことになるので、プリンタ2は、アドレスリストを管理PC1に送信して(S1240)、図4に示したSNMP処理を終える。
さて一方、上述したS1210の処理において、アドレスリスト取得要求ではないと判断された場合(S1210:NO)、プリンタ2は、アドレス設定要求かどうかを判断する(S1250)。アドレス設定要求は、プリンタ2に対して新たなアドレスを割り当てたい場合に、管理PC1からプリンタ2へと送信されるパケットである。
S1250の処理において、アドレス設定要求であると判断された場合(S1250:YES)、プリンタ2は、新たなアドレスをアドレスリストに追加する処理を行う(S1260)。このS1260の処理は、詳しくは図8に示すような処理となる。
すなわち、プリンタ2は、図8に示すように、プリンタ2に記憶されているアドレスリスト(図2参照)を対象にして、まず、リスト順に(アドレスリスト中の優先度順上位側から)アドレス情報を1つ取り出し(S2110)、アドレス情報を取り出すことができたかどうかを判断する(S2120)。プリンタ2には、アドレスが少なくとも1つは割り当てられているので、S2120の処理は、少なくとも1回は肯定判断されることになり(S2120:YES)、その場合、S2110の処理で取り出したアドレス情報中のIPアドレスと、新たに追加要求のあったアドレスとが同一か否かを調べる(S2130)。
S2130の処理で同一と判断された場合(S2130:YES)、既にアドレスリスト中に存在するアドレスの追加を指示されたことになり、同一アドレスをアドレスリストに追加する必要はないので、そのまま図8に示した処理を終了する。
一方、S2130の処理で同一ではないと判断された場合(S2130:NO)、それら同一ではない2つのアドレスを対象に、アドレス表示優先度を比較する(S2140)。このS2140の処理は、詳しくは図9に示すような処理となる。
すなわち、プリンタ2は、図9に示すように、優先度リストから項目を取り出す(S2310)。優先度リストは、図10(a)〜同図(d)に示すようなテーブルであり、これら4種のリストのうち、いずれかがプリンタ2の備える不揮発性メモリに記憶されている。これら4種のリストの違いとどのリストがどのタイミングで選択されるのかについては後から詳述するが、ここでは図10(a)に示したグローバルスコープ優先の優先度リストが設定されているものとして説明を続ける。優先度リスト中には、優先度比較の結果を得るために呼び出す3種類の比較関数(compare#scope()、compare#method()、compare#lifetime())が登録されており、それら3種類の比較関数に対して1〜3のインデックスが付与されている。S2310の処理では、インデックスの番号順にリスト中の項目が取り出されることになる。
続いて、プリンタ2は、優先度リストから項目を取り出すことができたかどうかを判断する(S2320)。優先度リストには、本実施形態においては、必ず1〜3のインデックスが付与された3項目分の情報が含まれているので、S2320の処理は、最大で3回は肯定判断されることになり(S2320:YES)、その場合、S2130の処理で同一ではないと判断された2つのアドレスを対象に、比較関数を実行する(S2330)。
S2330の処理で実行する比較関数は、S2310の処理で取り出した項目中に登録されている比較関数であり、図10(a)に示した優先度リストが設定してある場合、一番最初は、比較関数compare#scope()を実行することになる。
3種類の比較関数(compare#scope()、compare#method()、compare#lifetime())は、いずれも2つのアドレスを対象にして、優先度リスト中で規定されている優先順に基づいて、どちらの優先順位(優先度)が高いのかを判定し、その判定結果を戻り値で返す関数である。図10(a)に示した優先度リストが設定してある場合、compare#scope()を呼び出すと、優先度リスト中の優先順(Global、Local、Link-Local)に従って優先度が判定される。
より具体的には、例えば、compare#scope()の処理であれば、図11に示すような処理となっており、2つのアドレスA,Bを対象に、優先度リスト中の優先順(Global、Local、Link-Local)に従って優先度を判定する場合は、アドレスAのスコープに基づいて優先度リスト中からアドレスAの優先順Sa(=Global:1、Local:2、Link-Local:3)を求めるとともに、アドレスBのスコープに基づいて優先度リスト中からアドレスBの優先順Sb(=Global:1、Local:2、Link-Local:3)を求め(S2510)、Sa<Sbであれば(S2520:YES)、アドレスAの優先度がアドレスBよりも高い(A>B)という判定結果を戻り値として返し(S2530)、Sa>Sbであれば(S2520:NO、S2540:YES)、アドレスBの優先度がアドレスAよりも高い(B>A)という判定結果を戻り値として返し(S2550)、Sa=Sbであれば(S2520:NO、S2540:NO)、アドレスAとアドレスBの優先度が同じである(A=B)という判定結果を戻り値として返す(S2560)。例えば、Aのスコープがグローバルで、Bのスコープがリンクローカルであった場合は、Sa=1、Sb=3となり、アドレスAの優先度がアドレスBよりも高い(A>B)という判定結果が戻り値として返されることになる。
こうしてS2330の処理を実行したら、比較関数の戻り値に基づいて、2つのアドレスの優先度が等しいかどうかを判断し(S2340)、優先度が等しくないと判断された場合は(S2340:NO)、その判定結果(アドレスAの優先度がアドレスBよりも高い(A>B)、または、アドレスBの優先度がアドレスAよりも高い(B>A)という判定結果)を確定し(S2350)、図9に示した優先度比較処理を終える。
一方、優先度が等しいと判断された場合は(S2340:YES)、直ちには判定結果を確定させず、S2310の処理へと戻る。これにより、再びS2310からの処理が繰り返されることになる。
上述の通り、本実施形態の場合、S2310からの処理は最大で3回繰り返されるが、図10(a)に示した優先度リストが設定してある場合、2回目のS2310の処理では、優先度リスト中にインデックスとして2が付されている項目が取り出され、その結果、S2330の処理では、compare#method()を呼び出すことになり、優先度リスト中の優先順(Static、Statefull、Stateless)に従って優先度が判定される。また、3回目のS2310の処理では、優先度リスト中にインデックスとして3が付されている項目が取り出され、その結果、S2330の処理では、compare#lifetime()を呼び出すことになり、優先度リスト中の優先順(Preferred、Deprecated、Invalid)に従って優先度が判定されることになる。各比較関数の内部処理は、先に説明したcompare#scope()の処理(図11参照)と同等なので、詳細な説明は省略する。
こうしてS2310からの処理を最大3回まで繰り返す中で、S2340の処理において優先度が等しくないと判断された場合は(S2340:NO)、上述の通り、その判定結果(アドレスAの優先度がアドレスBよりも高い(A>B)、または、アドレスBの優先度がアドレスAよりも高い(B>A)という判定結果)を確定し(S2350)、図9に示した優先度比較処理を終えることになる。また、S2310からの処理を最大3回まで繰り返しても、S2340の処理において優先度が等しいと判断された場合は(S2340:YES)、次にS2310の処理を実行すると優先度リストから項目を取り出すことができないので、その場合はS2320の処理において否定判断され(S2320:NO)、アドレスAとアドレスBの優先度が同じである(A=B)という判定結果を確定し(S2360)、図9に示した優先度比較処理を終えることになる。
つまり、図9に示した優先度比較処理では、優先度リストのインデックス順に比較関数を利用し、ある比較関数で2つのアドレスの優先度に違いがあるとの判定結果が出れば、その判定結果を直ちに確定した判定結果と扱う一方、ある比較関数で2つのアドレスの優先度に違いがないとの判定結果が出れば、さらに優先度リストのインデックス順に従って次の比較関数を利用し、すべての比較関数を利用しても2つのアドレスの優先度に違いがないとの判定結果が出た場合に限り、その判定結果を確定した判定結果と扱うのである。
以上のようにして図9に示した優先度比較処理を終えると、図8に示したS2140の処理を終えたことになるので、続いて、プリンタ2は、S2140の処理で確定した判定結果に基づいて、新たに追加要求のあったアドレスが、S2110の処理で取り出したアドレス情報中のIPアドレスより高優先度かどうかを判断する(S2150)。
S2150の処理で、新たに追加要求のあったアドレスが、S2110の処理で取り出したアドレス情報中のIPアドレスより高優先度であると判断されれば(S2150:YES)、新たに追加要求のあったアドレスに対応するアドレス情報を、アドレスリストに追加して(S2160)、図8に示した処理を終える。S2160の処理では、S2110の処理で取り出したアドレス情報の直前となる位置(アドレスリスト中の優先度順上位側)に、新たなアドレス情報が追加され、S2110の処理で取り出したアドレス情報以降のアドレス情報は、アドレスリスト中の後(アドレスリスト中の優先度順下位側)へと繰り下げられる。
また、S2150の処理で、新たに追加要求のあったアドレスが、S2110の処理で取り出したアドレス情報中のIPアドレスより高優先度ではないと判断されれば(S2150:NO)、S2110の処理へと戻り、S2110以降の処理を繰り返す。この繰り返し処理により、S2110の処理では、アドレスリストから順にアドレス情報が取り出されてゆき、新たに追加要求のあったアドレスよりも低優先度のアドレスが見つかった時点で(S2150:YES)、その位置に新たに追加要求のあったアドレスに対応するアドレス情報が挿入されることになる。また、この繰り返し処理の中、アドレスリスト内に含まれる複数のアドレス情報がリスト順に(アドレスリスト中の優先度順上位側から)処理された結果、リストの最後にあるアドレス情報が処理された後にS2110の処理を実行すると、アドレス情報を取り出すことができないので、その場合は(S2120:NO)、新たに追加要求のあったアドレスに対応するアドレス情報を、アドレスリストの最後尾に追加して(S2160)、図8に示した処理を終える。なお、以上のような処理により、優先度が同じ場合は、新しいものほど後に付加されることになるので、同一優先度のアドレスについては設定時間順に、古いものほどアドレスリストの上位側に並ぶことになる。
以上のようにして図8に示した処理を終えると、図4に示したS1260の処理を終えたことになるので、続いて、プリンタ2は、新たに追加要求のあったアドレスに対応するアドレス情報中に、Staticマーク(図2参照)をセットして(S1270)、図4に示したSNMP処理を終える。すなわち、S1260の処理で追加されるアドレスは、管理PC1からのSNMP要求で設定されるアドレスであり、これは、管理PC1において利用者が手動で設定した静的アドレスに該当するので、S1270の処理により、Staticマークが設定されるのである。
さて一方、上述したS1250の処理において、アドレス設定要求ではないと判断された場合(S1250:NO)、プリンタ2は、Invalid address保存要求かどうかを判断し(S1280)、Invalid address保存要求であれば(S1280:YES)、Invalid address保存設定を行って(S1290)、図4に示したSNMP処理を終える。Invalid address保存要求は、後述する管理PC1側での処理の中で、Invalid addressを保存する/しないについて設定変更がなされると、管理PC1からプリンタ2へ送信されてくるSNMPパケットであり、S1290の処理では、プリンタ2が備えるMIB内に確保されたInvalid address保存フラグに、Invalid addressを保存する/しないの設定を記憶させる。
さらに、上述したS1280の処理において、Invalid address保存要求でなかった場合は(S1280:NO)、優先度設定要求かどうかを判断する(S1300)。この優先度設定要求は、後述する管理PC1側での処理の中で、優先度設定の変更がなされると送信されてくるSNMPパケットであり、優先度設定要求であった場合は(S1300:YES)、アドレスリスト優先度変更処理を実行する(S1310)。このアドレスリスト優先度変更処理は、優先度設定の変更に伴ってアドレスリスト中に含まれる複数のアドレス情報の並び順をソートし直すための処理で、詳しくは図12に示すような処理となる。
すなわち、プリンタ2は、図12に示すように、まず、新たにアドレスリストを作り直すため、空の一時リストを生成する(S2710)。そして、プリンタ2に記憶されているアドレスリスト(図2参照)を対象にして、リスト順に(アドレスリスト中の優先度順上位側から)アドレス情報を1つ取り出し(S2720)、アドレス情報を取り出すことができたかどうかを判断する(S2730)。
プリンタ2には、アドレスが少なくとも1つは割り当てられているので、S2730の処理は、少なくとも1回は肯定判断されることになり(S2730:YES)、その場合、S2710の処理で生成した一時リストから、リスト順にアドレス情報を1つ取り出し(S2740)、アドレス情報を取り出すことができたか否かを判断する(S2750)。一時リストもアドレスリスト同様の並び順を持つリストであり、リストの先頭側ほど優先度が高くなる(上位となる)ような並び順とされるが、初めてS2740の処理を実行した段階では、一時リスト内は空なので、S2750の処理では否定判断され(S2750:NO)、S2720の処理でアドレスリストから取り出したアドレス情報を一時リストに追加し(S2790)、S2720の処理へと戻る。その結果、S2720以降の処理が繰り返されることになる。
S2720以降の処理が繰り返されると、2回目以降の繰り返し処理では、その前にS2790の処理を少なくとも1回は実行していることから、S2740の処理においてリスト順にアドレス情報を少なくとも1つは取り出すことができ、その場合、S2750の処理では肯定判断され(S2750:YES)、S2720の処理で取り出したアドレスとS2760の処理で取り出したアドレスとを対象に、これら2つのアドレスが同一アドレスか否かを判断する(S2760)。
S2760の処理において、同一アドレスであった場合は(S2760:YES)、何らかの事情でアドレスリストに2つの同一アドレスが登録されていたことになるので、S2770〜S2790の処理はスキップしてS2720の処理へと戻ることにより、一時リストから重複したアドレス情報を排除する。
また、S2760の処理において、同一アドレスでなかった場合は(S2760:NO)、アドレス表示優先度を比較する処理を実行する(S2770)。このS2770の処理は、先に説明したS2140の処理と全く同等な処理であり、詳しくは図9および図11に示した処理となるが、図9および図11に示した処理の詳細については既に説明したので、ここでの詳細な説明は省略する。
S2770の処理を終えたら、続いて、プリンタ2は、S2770の処理で確定した判定結果に基づいて、S2740の処理で取り出した一時リストのアドレスより、S2720の処理で取り出したアドレスリストのアドレスの方が高優先度かどうかを判断する(S2780)。
S2780の処理で、一時リストのアドレスよりアドレスリストのアドレスの方が高優先度であると判断されれば(S2780:YES)、S2720の処理でアドレスリストから取り出したアドレス情報を一時リストに追加し(S2790)、S2720の処理へと戻る。また、S2780の処理で、一時リストのアドレスよりアドレスリストのアドレスの方が高優先度ではないと判断されれば(S2780:NO)、S2740の処理へと戻り、一時リストから新たなアドレスを取り出す。
以上のようなS2720〜S2790の処理により、アドレスリストからアドレス情報をリスト順に1つずつ取り出し、アドレスリストからアドレス情報を1つ取り出す毎に、一時リストに登録されたアドレス情報が先頭から順にスキャンし、そのスキャンによってアドレスリストから取り出したアドレス情報よりも優先度の低いアドレス情報を、一時リストの中から検出したら、検出した優先度の低いアドレス情報よりも一時リスト中で上位側となる位置に、アドレスリストから取り出したアドレス情報を挿入する、という処理が繰り返されることになり、その結果、一時リストには、優先度の高いものほどリスト順で先頭側に来るようにソートされた複数のアドレス情報が登録されることになる。こうしてアドレスリスト内に含まれていた複数のアドレス情報すべてが一時リストに登録されたら、一時リストの内容をアドレスリストに上書きして(S2800)、図12に示したアドレスリスト優先度変更処理を終了する。
図12に示したアドレスリスト優先度変更処理を終了すると、図4に示したS1310の処理を終えたことになるので、図4に示したSNMP処理を終える。
なお、上述したS1300の処理において、優先度設定要求でなかった場合は(S1300:NO)、その他のSNMP処理を実行して(S1320)、図4に示したSNMP処理を終える。なお、その他のSNMP処理は、プリンタ2が備える機能に応じて様々な処理を考え得るが、本発明の要部には直接関連しない処理なので、詳細な説明は省略する。
(3.1.2)RA処理
次に、上記S1040のRA処理について、図13のフローチャートに基づいて説明する。RA処理を開始すると、プリンタ2は、まず、パケット中にprefix optionが設定されているかどうかを判断する(S3010)。
ここで、prefix optionが設定されていない場合には(S3010:NO)、少なくともアドレスの割り当てに関するパケットではないと判断できるので、通常RA処理を実行して(S3020)、RA処理を終える。
一方、prefix optionが設定されている場合には(S3010:YES)、パケット内からプリフィックスを取り出してアドレスを生成し(S3030)、生成したアドレスに対応するアドレス情報をアドレスリストに追加する(S3040)。S3040の処理は、S1260の処理と全く同等な処理であり、詳しくは図8、図9、および図11に示した処理となるが、図8、図9、および図11に示した処理の詳細については既に説明したので、ここでの詳細な説明は省略する。なお、S3040の処理は、処理自体はS1260の処理と同等であるが、S1260の処理で追加されるアドレスは静的アドレスであったのに対し、S3040の処理で追加されるアドレスは自動設定アドレスに該当する。
S3040の処理を終えたら、S3040の処理で追加したアドレスについて、アドレスリスト内にあるアドレス情報中の項目に、ライフタイムを設定し(S3050)、経過時間をリセット(=0(ゼロ)を設定)する(S3060)。そして、これらの処理を実行したことに関する情報をログに記録し(S3070)、RA処理を終える。
なお、図13には明示していないが、S3030の処理で生成したアドレスが、既にアドレスリストに登録されている場合には、S3040の処理は実行せず、既にアドレスリストに登録されているアドレス情報を対象にして、S3050、S3060の処理を実行する。つまり、新しいアドレスの追加を行うのではなく、既存のアドレスのライフタイムの更新が行われる。
(3.2)デバイスが実行する第2の処理
次に、デバイスが実行する第2の処理(タイマ処理)について、図14のフローチャートに基づいて説明する。このタイマ処理は、アドレスリスト中に含まれる自動設定アドレスに対応するアドレス情報に関し、定期的に情報を更新するため、プリンタ2が定期的に(本実施形態では、およそ1分に1回の頻度で)実行する処理である。
第2の処理を開始すると、プリンタ2は、図14に示すように、まず前回のタイマ処理開始から1分間が経過するまでは待機して(S3210)、1分間が経過したら、リスト順に(アドレスリスト中の優先度順上位側から)アドレス情報を1つ取り出し(S3220)、アドレス情報を取り出すことができたかどうかを判断する(S3230)。プリンタ2には、アドレスが少なくとも1つは割り当てられているので、S3230の処理は、少なくとも1回は肯定判断されることになり(S3230:YES)、その場合、取り出したアドレス情報が自動設定アドレスに関するものか否かを判断する(S3240)。
S3240の処理において、自動設定アドレスに関するアドレス情報でないと判断された場合(S3240:NO)、このタイマ処理による更新対象とはならないアドレス情報なので、S3220の処理へと戻る。
一方、S3240の処理において、自動設定アドレスに関するアドレス情報であると判断された場合(S3240:YES)、取り出したアドレス情報中の経過時間(図2参照)を1分間だけ進めてアドレスリストを更新し(S3250)、経過時間がDeprecated timeに相当する時間となっているか否かを判断する(S3260)。Deprecated timeは、life timeの1/2以上かつlife time未満の範囲内のに相当する時間である。
S3260の処理において、経過時間がDeprecated timeに相当する時間になっていると判断された場合は(S3260:YES)、取り出したアドレス情報中のフラグ(図2参照)に、Deprecatedフラグ(Depr.)をセットして(S3270)、S3220の処理へと戻る。
また、S3260の処理において、経過時間がDeprecated timeに相当する時間になっていないと判断された場合は(S3260:NO)、経過時間がInvalid timeに相当する時間になっているか否かを判断する(S3280)。Invalid timeは、life time以上かつlife timeの2倍未満の範囲内のに相当する時間である。
S3280の処理において、経過時間がInvalid timeに相当する時間になっていると判断された場合は(S3280:YES)、Invalid addressを保存する設定になっているか否かを判断する(S3290)。Invalid addressを保存するか否かは、先に説明したS1290の処理により、プリンタ2が備えるMIB内に確保されたInvalid address保存フラグに記憶されているので、S3290の処理では、MIB内のInvalid address保存フラグ基づく判断を行う。ここで、Invalid addressを保存する設定になっている場合は(S3290:YES)、取り出したアドレス情報中のフラグ(図2参照)に、Invalidフラグ(Inval.)をセットして(S3300)、S3220の処理へと戻る。一方、Invalid addressを保存する設定になっていない場合は(S3290:NO)、取り出したアドレス情報をアドレスリスト中から削除し(S3310)、アドレス削除を行った旨をログに記録して(S3320)、S3220の処理へと戻る。
また、S3280の処理において、経過時間がInvalid timeに相当する時間になっていないと判断された場合は(S3280:NO)、経過時間がErase timeに相当する時間になっているか否かを判断する(S3330)。Erase timeは、life timeの2倍以上に相当する時間である。ここで、経過時間がErase timeに相当する時間になっていれば(S3330:YES)、上述したS3310,S3320の処理を実行してから、S3220の処理へと戻る。また、経過時間がErase timeに相当する時間になっていなければ(S3330:NO)、そのままS3220の処理へと戻る。
こうしてS3240の処理で否定判断されるか、S3270の処理を終えるか、S3300の処理を終えるか、S3320の処理を終えるか、S3330の処理で否定判断されると、いずれの場合とも、S3220の処理へと戻ることになり、以後、S3230の処理で否定判断されるまでS3220〜S3330の処理を繰り返す。これにより、アドレスリスト内に含まれる複数のアドレス情報はリスト順に処理されてゆき、リストの最後にあるアドレス情報が処理された後にS3220の処理を実行すると、アドレス情報を取り出すことができず、その場合は(S3230:NO)、S3210の処理へと戻ることにより、次回の処理まで待機することになる。
以上説明したタイマ処理により、アドレスリスト中のライフタイムを監視して、アドレスの状態をチェックし、各アドレス情報は、ライフタイムの半分が経過すると、アドレスはDeprecatedになり、ライフタイムが切れるとInvalidになる。そして、Invalid address保存指定がなされていない場合は、Invalidになった時点でアドレス情報は削除され、Invalid address保存指定がなされている場合でも、ライフタイムの2倍を越えると、自動的に削除される。
(3.3)デバイスが実行する第3の処理
次に、デバイスが実行する第3の処理(各サーバ処理)について、図15のフローチャートに基づいて説明する。この各サーバ処理は、プリンタ2が内蔵する各サーバ機能が常時実行している処理であり、通常は待機状態にあって、クライアントPCからの要求を受けたときに実質的な処理を実行するようになっている。
第3の処理を開始すると、プリンタ2は、図15に示すように、クライアントPCからの接続要求が有ったか否かを判断し(S3500)、接続要求がない場合は(S3500:接続無し)、S3500の処理を継続して接続要求が有るまで待機する。
一方、クライアントPCからの接続要求が有った場合は(S3500:接続有り)、接続相手のアドレスを確認し(S3510)、ネットワーク内に存在するDNSサーバ(図示略)の逆引きを利用して、接続相手の名前を確認する(S3520)。
ここで、接続相手の名前取得に成功すれば(S3530:YES)、その名前がアクセスログに登録されているか否かを判断する(S3540)。アクセスログは、例えば、図16に示すようなフォーマットのファイルであり、接続相手の名前、利用したプロトコル、送信元IPアドレス、宛先IPアドレス、日付などの情報が記録されている。
S3540の処理において、接続相手の名前が既にアクセスログに登録されていた場合(S3540:YES)、プリンタ2は、アクセスログ中の該当するエントリーについて、プロトコル、送信元IPアドレス、宛先IPアドレス、日付などの情報を更新する(S3550)。一方、S3540の処理において、接続相手の名前がまだアクセスログに登録されていなかった場合(S3540:NO)、プリンタ2は、接続相手の名前、利用したプロトコル、送信元IPアドレス、宛先IPアドレス、日付などの情報を、新たにアクセスログに登録するとともに、新たな登録に伴ってログの容量が上限値を超えそうな場合には、アクセスログ中の最も古いレコードから削除し、ログの容量が上限値を超えないようにする(S3560)。
こうして、S3530の処理で否定判断されるか、S3550の処理でアクセスログを更新するか、S3560の処理でアクセスログに新規登録すると、以下は、各サーバ依存の処理を実行し(S3570)、S3570の処理を終えたら、再びS3500からの処理を繰り返す。
以上のような各サーバ処理により、プリンタ2が備える各サーバ機能は、クライアントPCからの要求に応じた処理を実行し、その際、クライアントPCの名前を取得できれば、アクセスログへの登録も行う。これにより、アクセスログには、例えば、LPDプロトコルを利用したクライアントPCの名前、送信元IPアドレス、宛先IPアドレスなどが登録されることになる。このアクセスログは、上述したS1910〜S1930の処理などで利用される。
(4)管理PCが実行する処理
次に、管理PC1が実行するアドレス情報表示処理について説明する。この処理を実行する管理PC1が、本発明でいうアドレス情報表示装置として機能する第1のノードであり、アドレス情報表示処理によって実現される管理PC1のアドレス情報表示機能は、ネットワーク上に存在するデバイス(本実施形態では印刷系デバイス;例えば、プリンタやプリンタ機能を有するMFP(Multi-Function Product;マルチファンクションプロダクト)など)を管理するために利用されるデバイス管理ツールの機能の一部として実装されている。図17は、デバイス管理ツールを起動した際に実行される処理である。
(4.1)デバイス管理ツールのメインフロー
利用者がデバイス管理ツールを起動すると、管理PC1は、まず、ネットワーク上のデバイスを検索し、その結果を管理PC1の表示部に一覧表示する(S4010)。このS4010の一覧表示処理の詳細については後述するが、S4010の処理を実行することにより、管理PC1の表示部には、図18に示すようなデバイス一覧表示画面101が表示される。
このデバイス一覧表示画面101には、ネットワーク上にある複数のプリンタについての情報を表示するデバイス情報表示欄103が設けられており、デバイス情報表示欄103は、ノード名表示欄105、ログ表示欄107、IPv4アドレス表示欄109、IPv6アドレス表示欄111、プリンタステータス表示欄113等々、複数の情報が表示できるように区画されている。
このようなデバイス一覧表示画面101を表示したら、続いて、管理PC1は、ユーザによる操作部に対する操作が行われるまで待機する(S4020:NO)。
その後、操作部に対する操作が行われたら(S4020:YES)、その操作がいずれかのデバイスを指定する操作であれば(S4030:YES)、指定されたデバイス(以降、「被管理デバイス」という)に対して設定情報を問い合わせる(S4050)。ここでは、被管理デバイスの設定情報として、以降の処理で表示される設定画面のうちの表示対象となる画面に対応する情報,および,データベースの登録情報を問い合わせるために、この被管理デバイスに問合データを送信する。この問合データを受信した被管理デバイスからは、設定情報および登録情報を示す設定データが返信されてくる。このとき、被管理デバイスは、問い合わせを受けた情報が自身に設定されていない情報である場合、設定されていない旨を特定可能な状態(例えば、空のパラメータなど)で設定データを返信してくる。なお、一覧表示画面が表示された以降、ユーザにより行われた操作が上述したいずれの操作でもない場合(S4030:NO)、この操作に対応する処理(その他の処理)を行った後(S4040)、S4020の処理へ戻る。
次に、S4050の処理による問い合わせに対して返信されてきた設定データに基づいて、この被管理デバイスに対してパラメータを設定(リモートセットアップ)するための設定画面を表示部に表示する(S4060)。この設定画面には、タブが付いた複数のサブ画面が重ねて表示されており、各サブ画面に対応するタブを選択する操作を行うと、選択したタブに対応する1つのサブ画面が最前面に表示される。
このようなサブ画面の1つとして、管理PC1は、図19に示すIP設定サブ画面131を表示することができる。このIP設定サブ画面131には、各種入力欄、IPv6_Settingsボタン133、OKボタン135などが設けられている。
S4060の処理で設定画面が表示されたら、その後は、ユーザによる操作部に対する操作が行われるまで待機する(S4070:NO)。
その後、ユーザによる操作部に対する操作が行われたら(S4070:YES)、その操作が入力欄への入力を行う操作であれば(S4080:YES)、入力された内容を入力欄に表示(反映)して(S4090)、S4070の処理へ戻る。
また、ユーザによる操作が、IP設定サブ画面131(図19参照)においてIPv6_Settingsボタン133を押下する操作であれば(S4080:NO,S4100:YES)、後から詳述する「IPv6_Setting処理」を実行して(S4110)、S4070の処理へ戻る。
また、ユーザによる操作が、タブを選択する操作(すなわち、設定画面内でサブ画面を切り替えるための操作)であれば(S4100:NO,S4120:YES)、S4050の処理へ戻り、このS4050の処理にて、上述したように、選択されたタブに対応するサブ画面に表示すべき設定情報を被管理デバイスに対して問い合わせた上で、S4060の処理で設定画面を再表示する。
こうして、S4050〜S4120の処理を繰り返した後、S4070の処理によるユーザの操作が、設定画面内のいずれかのサブ画面においてOKボタンを押下する操作であれば(S4120:NO,S4130:YES)、「IPv6_Setting処理」にて指定されたパラメータを除き、設定画面における全ての画面の入力欄に入力されているパラメータそれぞれの設定を被管理デバイスに指令するための設定指令データを、この設定デバイスに送信した後(S4140)、図17に示した処理を終了する。この設定指令データを受信した被管理デバイスは、この設定指令データに基づいて自身に対してパラメータを設定,または,自身に設定されているパラメータを更新する。
なお、S4070の処理によるユーザの操作が上述した操作以外の操作である場合には(S4120:YES,S4130:NO)、その操作に対応する処理(その他の処理)を行った後(S4150)、S4070の処理へ戻る。また、設定画面内のいずれかのサブ画面でキャンセルボタンを押下する操作が行われた際には、設定画面および一覧表示画面の表示を消去して、S4010の処理へ戻るように構成されているが、本発明を理解する上では重要な処理ではないので、ここでは説明を省略する。
(4.2)デバイス検索結果一覧表示処理
次に、上述したS4010のデバイス検索結果一覧表示処理(図17参照)の詳細について、図20に基づいて説明する。
デバイス検索結果一覧表示処理を開始すると、管理PC1は、まず、機器の情報を収集する(S4310)。具体的には、ネットワーク上のデバイスに対して情報を要求するための要求パケットを、IPv4およびIPv6それぞれにより送信(ブロードキャストおよびマルチキャスト)する。この要求パケットに応答可能なデバイスは、それぞれ応答パケットを返信してくるので、管理PC1は、しばらくの間(例えば数秒間)、複数のデバイスから送信されてくる応答パケットを順に受信し、各デバイスから送信された情報を収集する。
続いて、以降のループ処理でカウンタとして用いる機器番号Nに0(ゼロ)をセットして初期化し(S4320)、機器番号NがS4310の処理で情報収集した機器の総数以上になったか否かを判断する(S4330)。
ここで、1回目のS4330の処理では、S4320の処理で機器番号Nに0(ゼロ)がセットされているので、S4310の処理で情報収集した機器の総数が0(ゼロ)の場合のみ肯定判断されるものの、S4310の処理で情報収集した機器の総数が1以上であれば否定判断されることになる。
機器番号NがS4310の処理で情報収集した機器の総数未満であった場合(S4330:NO)、管理PC1は、機器Nの情報1を表示し(S4340)、機器Nの情報2を表示し(S4350)、以下、IPアドレスよりも先に表示したい情報…(情報…は、情報3,4,5…)があれば、その情報数分だけ機器Nの情報…を表示する(S4360)。なお、S4340〜S4360の処理は、デバイス一覧表示画面101のデバイス情報表示欄103に、1台の機器に対応する情報1,2,…を表示する(描画する)処理であるが、これは、図18に例示した例で言えば、IPv4アドレス表示欄109よりも左側にあるすべての情報(ノード名表示欄105、ログ表示欄107の情報)を表示する処理に相当する。
続いて、管理PC1は、表示するIPプロトコルを決める(S4370)。表示対象となり得るIPプロトコルは、本実施形態の場合、IPv4、IPv6となるが、S4370の処理では、管理PC1が、IPv4のみに対応しているケース、IPv6のみに対応しているケース、IPv4/IPv6両方に対応しているケース、以上3つのケースと、デバイスが、IPv4のみに対応しているケース、IPv6のみに対応しているケース、IPv4/IPv6両方に対応しているケース、以上3つのケースとから、これらのケースの組み合わせ(3ケース×3ケース=9ケース)を想定し、これら9ケースについて、図21に示すような対応表を用意し、この対応表を参照して、管理PC1と表示対象となっているデバイスと対応状況に基づき、IPv4アドレスのみ表示、IPv6アドレスのみ表示、IPv4/IPv6アドレスの両方を表示のいずれにするのかを決定する。
そして、S4370の処理でIPv4アドレスを表示する旨の決定をしていた場合は(S4380:YES)、機器NのIPv4アドレスを表示し(S4390)、S4370の処理でIPv4アドレスを表示しない旨の決定をしていた場合は(S4380:NO)、S4390の処理をスキップする。S4390の処理は、図18に例示した例で言えば、IPv4アドレス表示欄109の情報を表示する処理に相当し、例えば、デバイス情報表示欄103の上から1番目にあるノード(PRN_200003)については、S4390の処理により、IPv4アドレス表示欄109にIPv4アドレス(192.168.43.24)が表示されている。一方、デバイス情報表示欄103の上から3番目にあるノード(PRN_200020)については、S4390の処理がスキップされ、IPv4アドレス表示欄109は空白となっている。
また、S4370の処理でIPv6アドレスを表示する旨の決定をしていた場合は(S4400:YES)、機器NのIPv6アドレスを表示し(S4410)、S4370の処理でIPv6アドレスを表示しない旨の決定をしていた場合は(S4400:NO)、S4410の処理をスキップする。S4410の処理は、図18に例示した例で言えば、IPv6アドレス表示欄111の情報を表示する処理に相当し、例えば、デバイス情報表示欄103の上から2番目にあるノード(PRN_200310)については、S4410の処理により、IPv6アドレス表示欄111にIPv6アドレス(2004:0:0:0:200:69FF:FE20:310)が表示されている。一方、デバイス情報表示欄103の上から1番目にあるノード(PRN_200003)については、S4410の処理がスキップされ、IPv6アドレス表示欄111は空白となっている。
こうしてIPv6アドレス表示欄111についての表示処理を終えたら、以下、IPアドレスよりも後に表示したい情報…(情報…は、情報3,4,5…)があれば、機器Nの情報…を表示し(S4420)、機器Nに関する情報としては、最終的に機器Nの情報nを表示する(S4430)。なお、S4420〜S4430の処理は、デバイス一覧表示画面101のデバイス情報表示欄103に、1台の機器に対応する情報…,nを表示する(描画する)処理であるが、これは、図18に例示した例で言えば、IPv6アドレス表示欄111よりも右側にあるすべての情報(プリンタステータス表示欄113、プリンタステータス表示欄113よりも右側にある画面をスクロールさせないと見えない表示欄の情報)を表示する処理に相当する。
そして、S4340〜S4430の処理を終えたら、機器番号Nをカウントアップして(S4440)、S4330の処理へと戻る。その結果、S4310の処理で収集した機器の総数分だけS4330〜S4440の処理が繰り返されることになり、図18に示したデバイス一覧表示画面101のデバイス情報表示欄103には、1つのデバイス毎に1行分の情報が順に表示されて、最終的にS4310の処理で収集した機器の総数と同数行分の情報が表示されることになる。その後は、さらにS4330の処理へ戻る結果、S4330の処理で肯定判断されることになり(S4330:YES)、図20に示したデバイス検索結果一覧表示処理を終了する。
ところで、IPv6対応デバイス、例えばプリンタ2の場合、複数のIPv6が割り当てられていることがあり、その複数のアドレス情報がプリンタ2のアドレスリストに格納されているが、管理PC1は、上記S4310の処理においてIPv6アドレスを取得する際に、プリンタ2のアドレスリストの上位側から1つだけアドレスを取得するか、上記S4310の処理においてIPv6アドレスを取得する際にはプリンタ2のアドレスリスト全てを取得しておいて、上記S4410の処理においてIPv6アドレスを表示する際に、取得したアドレスリストの上位側から1つだけアドレスを表示する。プリンタ2のアドレスリストは、既に説明した通り、優先度順に並べられているため、上記のような処理を行えば、IPv6アドレス表示欄111に1つだけ表示されるIPv6アドレスは、最も優先度の高いものが表示されることになる。したがって、デバイス一覧表示画面101のデバイス情報表示欄103には、1つしかIPv6アドレスが表示されないにもかかわらず、利用者にとって最も有益なアドレスが表示されている可能性が高くなる。
しかも、優先度の設定は、さらに後述する処理で利用者が任意に設定できるので、万一所期の優先度設定になっていない場合は、優先度設定を変更することにより、利用者にとって最も有益なアドレスを表示できるようにカスタマイズすることもできる。
(4.3)IPv6_Setting処理
次に、上述したS4110のIPv6_Setting処理(図17参照)の詳細について、図22に基づいて説明する。
IPv6_Setting処理を開始すると、管理PC1は、まず、IPv6_Settings画面151(図23参照)を表示部に表示する(S4610)。このIPv6_Settings画面151には、図23に示すように、被管理デバイスに割り当てられたIPv6アドレスを表示し、そのうちの1つをユーザに選択させるための選択欄153、追加ボタン155、削除ボタン157、より詳細な設定を行う際に利用するAdvanced_Settings画面171(図24参照)を表示させる際に押下されるAdvanced_Settingsボタン159などが設けられている。
IPv6_Settings画面151を表示部に表示したら、その後、管理PC1は、ユーザによる操作が行われるまで待機する(S4620:NO)。そして、ユーザによる操作が行われたら(S4620:YES)、その操作が選択欄153においてIPアドレスを指定する操作であれば(S4630:YES)、指定されたIPアドレスが選択欄53に入力された状態とした後(S4635)、S4620の処理へ戻る。
また、上述したS4620の処理で行われたユーザの操作が、追加ボタン155を押下する操作である場合(S4630:NO,S4640:YES)は、追加すべきIPアドレスの入力を促すための入力用ダイアログを表示部に表示し(S4650)、IPアドレスが入力されるまで待機する(S4660:NO)。この後、IPアドレスが入力されたら(S4660:YES)、入力されたIPアドレスを示す文字列を読み込む(S4670)。そして、S4670の処理で読み込まれたIPアドレスが有効なものであるか否かをチェックする(S4680)。ここでは、S4670の処理で読み込まれた文字列が、IPアドレスを示す文字列として適切な文字列であるかについて、不適切な文字が用いられていないか,適切な文字数により構成されているか,といった点からIPv6のIPアドレスとして適切か否かのチェックを行う。このS4680の処理で有効なものではないと判定された場合には(S4680:NO)、IPv6_Setting処理を終了し、図17におけるS4070の処理へ戻る。一方、S4680の処理で有効なものであると判定された場合には(S4680:YES)、S4670の処理で読み込まれたIPアドレスについて、手動で設定された(スタティックの)IPアドレスとして設定すべき旨をデバイスに指令する(S4690)。被管理デバイスのデータベースには、IPアドレスが、それぞれ設定機能と対応づけた状態で登録されているため、このS4690の処理では、S4670の処理で読み込まれたIPアドレスを、手動で設定された旨の情報と対応づけて登録する旨の設定要求をSNMPを利用して行う。この設定要求を受けた被管理デバイスは、先に説明した通り、設定要求に基づく情報の更新(S1260の処理)を実行し、手動設定としてのIPアドレスが設定される。
また、上述したS4620の処理で行われたユーザの操作が、削除ボタン157を押下する操作である場合(S4640:NO,S4700:YES)、選択欄153において選択されているIPアドレスを削除する(S4705)。このS4705の処理では、選択欄153において選択されているIPアドレスを削除する旨の設定要求をSNMPを利用して行う。この設定要求を受けた被管理デバイスは、先に説明した通り、設定要求に基づく情報の更新を実行し、被管理デバイスにおいてIPアドレスの削除(アドレスリストの更新)が実行される。
また、上述したS4620の処理で行われたユーザの操作が、Advanced_Settingsボタン159を押下する操作である場合(S4700:NO,S4710:YES)、Advanced_Settings画面171(図24参照)を表示部に表示する(S4720)。このAdvanced_Settings画面は、図24に示すように、各種入力欄の他、Set_display_preferenceボタン173、OKボタン179などが設けられている。Advanced_Settings画面171を表示した後、管理PC1は、ユーザによる操作が行われるまで待機する(S4730:NO)。その後、ユーザによる操作が行われたら(S4730:YES)、その操作がチェックボックスを選択する操作であれば(S4740:YES)、そのチェックボックスが選択された状態(既に選択されたものであれば、選択されていない状態)とした後(S4750)、S4730の処理へ戻る。
また、S4730の処理で行われたユーザの操作が、Set_display_preferenceボタン173を押下する操作であれば(S4740:NO,S4760:YES)、表示優先順位指定処理を実行する(S4770)。この表示優先順位指定処理については、後から詳述する。そして、S4770の処理を終えるか、S4730の処理で行われたユーザの操作が、OKボタン768を押下する操作であれば(S4760:NO)、この時点でのチェックボックスの選択状況に基づく設定変更および表示優先順位指定処理による設定変更を被管理デバイスに指令した後(S4780)、S4620の処理へ戻る。被管理デバイスのデータベースには、ルータから送信されるプリフィックスを含む情報(RA:Router Advertisement)を無視するか否かを示すRA無視情報,自動設定を有効とするか無効とするかを示す自動設定有効情報が登録されているため、このS4780の処理では、これらの情報をチェックボックスの選択状況に応じた内容に変更すべき旨の設定要求をSNMPを利用して行う。この設定要求を受けた被管理デバイスは、設定要求に基づく情報の更新を行い、これに応じてチェックボックスの選択状況に基づく設定変更を行う。
なお、上述したS4620の処理で行われたユーザの操作が、Advanced_Settingsボタン159を押下する操作でもなければ(S4710:NO)、本IPv6_Setting処理を終了し、図17におけるS4070の処理へ戻る。
(4.4)表示優先順位指定処理
次に、上述したS4770の表示優先順位指定処理(図22参照)の詳細について、図25に基づいて説明する。この表示優先順位指定処理は、先に説明した4種の優先度リスト(図10(a)〜同図(d)参照)のうち、各デバイスで利用する優先度リストをどれにするのかを設定するための処理であり、先に説明したAdvanced_Settings画面171(図24参照)において、Set_display_preferenceボタン173を押下した場合に実行される。
表示優先順位指定処理を開始すると、管理PC1は、まず、表示優先順位のユーザ設定画面191(図26参照)を表示する(S4910)。この表示優先順位のユーザ設定画面191には、4種の優先度リスト(図10(a)〜同図(d)参照)のいずれかを択一的に選択するためのラジオボタン193、サイトローカルアドレス優先設定を行うためのチェックボックス195、OKボタン197、Cancelボタン199などが設けられている。
表示優先順位のユーザ設定画面191を表示した後、管理PC1は、ユーザによる操作が行われるまで待機する(S4920:NO)。その後、ユーザによる操作が行われたら(S4920:YES)、その操作がラジオボタン193のいずれかを選択する操作であれば(S4930:YES)、該当するラジオボタンを選択された状態(選択前に選択されていたラジオボタンがあれば、選択されていない状態)とし(S4940)、S4920の処理へ戻る。
また、S4920の処理で行われたユーザの操作がチェックボックス195を選択する操作であれば(S4950:YES)、そのチェックボックスが選択された状態(既に選択されていれば、選択されていない状態)とし(S4960)、S4920の処理へ戻る。
そして、S4730の処理で行われたユーザの操作が、Cancelボタン199を押下する操作であれば(S4950:NO,S4970:YES)、S4990の処理をスキップして表示優先順位指定処理を終了する一方、OKボタン197を押下する処理であれば(S4970:NO,S4980:YES)、ラジオボタン193およびチェックボックス195の選択状態に応じて、4種の優先度リスト(図10(a)〜同図(d)参照)のいずれかを優先度設定として記憶して(S4990)、表示優先順位指定処理を終了する。S4990の処理によって記憶される優先度設定は、この後SNMPを利用してデバイスへと送信され、各デバイスでは、先に説明したS1300〜S1310の処理(図4参照)により処理されて、4種の優先度リスト(図10(a)〜同図(d)参照)のいずれかが各デバイスに格納されることになる。
つまり、各デバイスで優先度判定に用いられる4種の優先度リスト(図10(a)〜同図(d)参照)は、管理PC1側での操作により、択一的に切り替えて設定することができ、この設定後は、各デバイスにおいて所期の優先度判定がなされて、所期の優先度順にソートされたアドレスリストが作成されることになる。したがって、管理者が各デバイス毎に所望の優先度リストを設定しておけば、管理PC1において、デバイスに設定された複数のアドレスを表示する際には、各デバイスから取得したアドレスリストを取得したままの順序で表示するだけで、各デバイス毎に所望の優先度順でソートされたアドレスリストを表示することができる。
(4.5)表示用アドレス編集処理
次に、デバイスから取得したアドレスリストに基づいて、複数のアドレスをわかりやすく表示するための表示用アドレス編集処理について説明する。
管理PC1において機能するデバイス管理ツールでは、様々な画面において、複数のIPv6アドレスをプルダウンメニュー化して表示するように構成されており、一例を挙げれば、IPv6_Settings画面151(図23参照)における選択欄153が、図27に示すように、プルダウンメニューとして展開、表示できるように構成されている。
図27に例示した選択欄153は、図2に示したアドレスリストを取得した場合の表示例であり、プルダウンメニューを展開すると、4つのグローバルアドレス211,213,215,217が表示され、仕切り線219を挟んで、2つのローカルアドレス221,223が表示され、さらに仕切り線225を挟んで、1つの無効なアドレス227が表示されている。プルダウンメニュー内での表示順は、アドレスリストに準じているが、後述する表示用アドレス編集処理では、上段に有効なアドレスを表示し、その後で、無効なアドレス(Invalid address)を表示するようにしている。有効なアドレスを表示する際には、アドレスリスト中にマークが付いている場合はボールドフォントで、ローカルアドレスはイタリックで、Deprecatedフラグが付いているものは淡色表示(グレーアウト表示)としている。これらの表示の区別は、他の文字色やタイプフェースなどで区別してもよい。また、無効なアドレスを表示する際には、淡色表示(グレーアウト表示)+取り消し線で表示している。ただし、後述する表示用アドレス編集処理では、無効なアドレスについて非表示とする設定も可能である。
以下、図27に例示したようなプルダウンメニューを表示するための表示用アドレス編集処理について、図28,図29のフローチャートに基づいて説明する。
表示用アドレス編集処理を開始すると、管理PC1は、図28に示すように、まず、デバイス(プリンタ)からアドレスリスト(図2参照)を取得し(S5110)、取得したアドレスリストを対象にして、リスト順に(アドレスリスト中の優先度順上位側から)アドレス情報を1つ取り出し(S5120)、アドレス情報を取り出すことができたかどうかを判断する(S5130)。デバイスから取得したアドレスリストには、アドレス情報が少なくとも1つは格納されているので、S5130の処理は、少なくとも1回は肯定判断されることになり(S5130:YES)、その場合は、無効なアドレス(Invalid address)か否かを判断する(S5140)。無効なアドレス(Invalid address)であれば(S5140:YES)、後述するS5240の処理以降の処理対象となるため、ここではS5120の処理へと戻る。
また、無効なアドレス(Invalid address)でなければ(S5140:NO)、まず表示用フォントをノーマルに設定し(S5150)、さらにアドレス情報中のマークをマスクして(S5160)、マスクしたマークに基づき、マークが有れば(S5170:YES)、フォントをボールドに設定し(S5180)、ローカルアドレスであれば(S5190:YES)、フォントをイタリックに設定し(S5200)、Deprecatedフラグが設定されていれば(S5210:YES)、フォントをグレー表示(淡色表示)に設定し(S5220)、以上S5150〜S5220の処理により表示設定が施されたアドレスを、画面表示用データバッファに登録し(S5230)、S5120の処理へと戻る。
以降は、S5120の処理で否定判断されるまでS5120〜S5230の処理を繰り返すことにより、アドレスリスト内に含まれる複数のアドレス情報はリスト順に1つずつ処理されてゆき、各有効アドレスに対してS5150〜S5220の処理による表示設定が施され、S5230の処理にて画面表示用データバッファに登録される。
そして、リストの最後にあるアドレス情報が処理された後にS5120の処理を実行すると、アドレス情報を取り出すことができず、その場合は(S5130:NO)、図29に示したS5240の処理へと移行する。
さて、S5240の処理へ移行すると、管理PC1は、図29に示すように、再び取得したアドレスリストの先頭から、リスト順に(アドレスリスト中の優先度順上位側から)アドレス情報を1つ取り出し(S5240)、アドレス情報を取り出すことができたかどうかを判断する(S5250)。既に説明した通り、アドレスリストにはアドレス情報が少なくとも1つは格納されているので、S5250の処理は、少なくとも1回は肯定判断されることになり(S5250:YES)、その場合は、無効なアドレス(Invalid address)か否かを判断する(S5260)。無効なアドレス(Invalid address)でなければ(S5260:NO)、先に説明したS5120〜S5230の処理にて既に処理対象となったものなので、ここではS5250の処理へと戻る。
また、無効なアドレス(Invalid address)であれば(S5260:NO)、Invalid address表示指定がなされているか否かを判断する(S5270)。管理ツールが備える設定画面(図示略)の中には、プルダウンメニュー中に無効なアドレス(Invalid address)も含めて表示するか否かを指定する選択欄(図示略)が設けられており、ここでの選択がInvalid address表示指定フラグとして管理ツールの設定ファイルに記録され、S5270の処理では、設定ファイル中のInvalid address表示指定フラグに基づいて判断がなされる。なお、このような選択設定ができるように構成してあるのは、通常は、無効なアドレス(Invalid address)がプルダウンメニュー中に含まれていると、いくつか選択肢が増えることから、利用者によっては見づらいと感じることがあり、一方、トラブル解析時などは無効なアドレス(Invalid address)が必要になることもあるので、これら双方のニーズに応えるために、プルダウンメニューに無効なアドレス(Invalid address)も含めて表示するか否かを選択できるようにしてあるのである。
S5270の処理において、Invalid address表示指定がなされていない場合(S5270:NO)、管理PC1は、ログ参照を促すメッセージを、プルダウンメニューとは別の独立な領域に表示して(S5280)、本処理を終える。これにより、プルダウンメニュー表示用のデータバッファには、S5230の処理で登録されたアドレスのみが格納されることになる。
また、S5270の処理において、Invalid address表示指定がなされていた場合(S5270:YES)、管理PC1は、表示用フォントをグレー表示(淡色表示)に設定し(S5290)、さらに取り消し線表示指定を設定して(S5300)、以上S5290〜S5300の処理により表示設定が施されたアドレスを、画面表示用データバッファに登録し(S5310)、S5250の処理へと戻る。
以降は、S5250の処理で否定判断されるまでS5250〜S5310の処理を繰り返すことにより、アドレスリスト内に含まれる複数のアドレス情報はリスト順に1つずつ処理されてゆき、各無効アドレスに対してS5290〜S5300の処理による表示設定が施され、S5310の処理にて画面表示用データバッファに登録される。
そして、リストの最後にあるアドレス情報が処理された後にS5240の処理を実行すると、アドレス情報を取り出すことができず、その場合は(S5250:NO)、図28,29に示した表示用アドレス編集処理を終了する。
なお、以上説明した表示用アドレス編集処理によって、数通りの表示形態に分類された複数のアドレスは、直ちに表示部の画面上に表示されるものではなく、図27に例示した選択欄153の場合で言えば、利用者が選択欄153の右端にあるボタンを押下することにより、プルダウンメニューの展開を指示したときに表示されることになる。また、プルダウンメニューの展開を指示した際に表示されるアドレスの数は、同時表示可能な最大数があらかじめ決められており、この最大数を超えるアドレスを表示する場合には、利用者がスクロール操作等を行うことになるが、このような表示方法および操作方法は、この種のコンピュータの分野において周知なので、ここでの説明は省略する。
(4.6)バルーン表示処理
次に、デバイスから取得したアドレスリストに基づいて、複数のアドレスをわかりやすく表示するためのバルーン表示処理について説明する。
管理PC1において機能するデバイス管理ツールでは、様々な画面において、複数のIPv6アドレスの中から、最も優先度の高いアドレスを1つだけ表示するように構成されているが、さらに、そのような画面上において、ポインティングデバイスのカーソル(ポインタ)を使って1つだけ表示されているアドレスをポイントすると、優先度が2番目以降となるアドレスについてもバルーン表示するように構成されている。なお、ここでいうバルーン表示とは、アドレスをポイントした後、クリック等の操作を行わなくても、小さな画面を一時的にポップアップ表示して、その中で補足的な情報を利用者に告知する周知の機能である。
以下、デバイス一覧表示画面101において、IPv6アドレスをポイントした場合を例に挙げて説明する。
図30に示すように、デバイス一覧表示画面101において、利用者がポインティングデバイスのカーソル241を使ってIPv6アドレスをポイントすると、管理PC1は、デバイス一覧表示画面101の前面側に重ねてバルーン243を表示する。バルーン234には、既にデバイス一覧表示画面101に表示済みのアドレスに加えて、同じデバイスに割り当てられているアドレスがいくつか表示される。このようなバルーン表示は、図31に示すようなバルーン表示処理によって実現されている。
すなわち、バルーン表示処理を開始すると、管理PC1は、図31に示すように、まず、デバイス(プリンタ)から取得したアドレスリストを対象にして、リスト順に(アドレスリスト中の優先度順上位側から)アドレス情報を1つ取り出す(S5510)。ここでは、図30に例示したバルーン243と同内容のバルーン表示がなされることになるアドレスリストの例として、図32に示すような内容のアドレスリストがデバイスから取得されているものとして説明を続ける。このアドレスリストは、通常、カーソル241でポイントされる対象となった1つのアドレスを表示する時点で、既にデバイスから取得されており、その後は、管理PC1のメモリ上に記憶されている。
続いて、管理PC1は、S5510の処理でアドレス情報を取り出すことができたかどうかを判断する(S5520)。デバイスから取得したアドレスリストには、アドレス情報が少なくとも1つは格納されているので、S5520の処理は、少なくとも1回は肯定判断されることになり(S5520:YES)、その場合は、アドレス情報中のマークをマスクして(S5530)、マスクしたマークに基づき、マークが有れば(S5540:YES)、バルーン表示項目を追加する(S5550)。このS5550の処理では、バルーン表示用のデータバッファに、アドレス情報中のIPアドレス、スコープ、メソッド(図32参照)が追加登録される。
こうしてS5550の処理を終えるか、S5540の処理においてマークが無ければ(S5540:NO)、S5510の処理へと戻り、以降、S552のの処理で否定判断されるまでS5510〜S5550の処理を繰り返す。この繰り返し処理により、図32に示したアドレスリストに含まれるアドレス情報は、リスト順に(アドレスリスト中の優先度順上位側から)処理されてゆく。そして、アドレスリストの最後にあるアドレス情報が処理された後にS5520の処理を実行すると、アドレス情報を取り出すことができず、その場合は(S5520:NO)、ディスプレイ上にバルーンを表示して(S5560)、バルーン表示処理を終える。このS5560の処理により、ディスプレイ上には、図30に示したバルーン243が表示されることになる。
なお、図30〜図32に例示したものにおいては、S5530の処理において使われるマスクとして、静的アドレスに付されるStaticマークだけが抽出されるようにマスクを設定してある。そのため、S5540の処理においては、アドレスリストのマーク欄にStaticマークが付されているアドレス情報のみ、マークが有ると判断されることになる。その結果、S5550の処理によって追加されるバルーン表示項目は、図32に例示したアドレスリスト中に含まれる9組のアドレス情報のうち、Staticマークが付いている3組のアドレス情報だけとなり、S5560の処理により表示されるバルーン243(図30参照)には、3つのアドレス情報が表示されることになる。
(4.7)リモート管理チェック処理
次に、リモート管理チェック処理について説明する。このリモート管理チェック処理は、管理PC1とデバイスとが、同じローカルエリアネットワーク内にない場合に利用される処理で、ここでは、図1に示した管理PC1とプリンタ4との関係が同じローカルエリアネットワーク内にない場合に該当する。
この管理PC1とプリンタ4との場合で言えば、両者はグローバルアドレスを利用しないと相互に通信することができないので、単に管理PC1においてプリンタ4のアドレス表示を行う場合であれば、グローバルアドレスを優先表示するのが通常である。
しかし、プリンタ4は、通常、サイトローカルスコープA内においてローカルアドレスでの運用がなされていて、プリンタ4に割り当てられたグローバルアドレスは、サイトローカルスコープA内では利用されていない。
このような状況下で、管理PC1側にいる利用者がプリンタ4に関する設定を表示し、例えば、クライアントPC16の利用者にプリンタ4のアドレス設定に関する話を伝えたい場合、管理PC1側においてもプリンタ4に設定されたローカルアドレスを知りたいことがある。このような場合に、管理PC1においては、リモート管理チェック処理が利用されることになる。
リモート管理チェック処理を利用する場合には、利用者は、既に説明した表示優先順位のユーザ設定画面191(図26参照)において、サイトローカルアドレス優先設定を行うためのチェックボックス195にチェックを入れておく。その上で、図33に示すように、デバイス一覧表示画面101内のメニューバーから「デバイスの追加」を選択する。なお、この「デバイスの追加」に相当する処理は、上述したS4040の処理(図17参照)に含まれる処理である。
デバイス一覧表示画面101内のメニューバーから「デバイスの追加」を選択すると、管理PC1は、図34に示すような表示部にデバイス追加ダイアログ261を表示する。このデバイス追加ダイアログ261には、アドレス入力欄263、OKボタン265、キャンセルボタン267などが設けられている。利用者は、アドレス入力欄263にIPアドレスを入力して直接機器を指定することができる。こうして指定された機器は、デバイス一覧表示画面101内の一覧表示に追加され、他のデバイス同様、上述のS4020〜4030の処理では、ユーザによる選択操作ができるようになる。
以上のような処理により、管理PC1とは異なるローカルエリアにあるプリンタ4を追加し、利用者の操作によってプリンタ4を選択した後、S4050の処理を実行する際には、図35に示すリモート管理チェック処理が実行される。
リモート管理チェック処理を開始すると、管理PC1は、まず、グローバルアドレスが指定されたか否かをチェックする(S6010)。ここで、グローバルアドレスが指定されていなければ(S6010:NO)、その時の処理対象がローカルエリア内のものであると推定でき、そもそもプリンタ4の如き遠隔地にあるものを対象としていないので、リモート管理チェック処理を終了する。
S6010の処理で、グローバルアドレスが指定されていれば(S6010:YES)、指定された機器のサイトローカルアドレスを取得し(S6020)、取得したサイトローカルアドレスで通信可能かどうかを判断する(S6030)。ここで通信可能であれば(S6030:YES)、たまたまグローバルアドレスが指定されたものの、その時の処理対象がローカルエリア内のものであると推定でき、この場合も、そもそもプリンタ4の如き遠隔地にあるものを対象としていないことになるので、リモート管理チェック処理を終了する。
S6030の処理において、サイトローカルアドレスでは通信不能な場合は(S6030:NO)、サイトローカル表示優先設定がなされているかどうかを判断する(S6040)。このS6040の処理は、既に説明した表示優先順位のユーザ設定画面191(図26参照)において、サイトローカルアドレス優先設定を行うためのチェックボックス195にチェックが入れてあったかどうかを判断する処理であり、より具体的には、チェックボックス195にチェックが入れてあったかどうかは、管理ツールが利用する設定ファイルもしくはレジストリなどの記憶領域にフラグとして保存されているので、S6040の処理では、保存されているフラグに基づいて、サイトローカル表示優先設定がなされているかどうかを判断する。
そして、サイトローカル表示優先設定がなされていない場合は(S6040:NO)、管理PC1においてプリンタ4のアドレスを表示するに当たって、標準的な表示方法(利用者が任意に指定する4種類の優先度リスト(図10(a)〜同図(d)参照)に従った方法)でアドレス情報を表示すればよいことになるので、リモート管理チェック処理を終了する。
一方、サイトローカル表示優先設定がなされていた場合は(S6040:YES)、上述の如く、管理PC1からリモートでプリンタ4のローカルなアドレス情報を取得したい状況にあると推察できるので、サイトローカル優先のテーブル(図10(c)参照)を機器に設定して(S6050)、リモート管理チェック処理を終了する。
S6050の処理によって設定されるサイトローカル優先のテーブル(図10(c)参照)は、SNMPを利用してデバイスへと送信され、これを受信したデバイスでは、先に説明したS1300〜S1310の処理(図4参照)を実行し、その結果、サイトローカル優先のテーブルが各デバイスに格納され、また、アドレスリストが作り直されることになる。
以降、管理PC1でプリンタ4のアドレスを表示する際には、既に説明した処理が実行されるが、上記S6050の処理によってプリンタ4には、サイトローカル優先の優先度テーブルが設定されているので、サイトローカルアドレスが優先して表示されるようになる。
(5)変形例等
以上、本発明の実施形態について説明したが、本発明は上記の具体的な一実施形態に限定されず、この他にも種々の形態で実施することができる。
例えば、上記実施形態において、デバイス一覧表示画面101のデバイス情報表示欄103中、IPv6アドレス表示欄111にIPv6アドレスを表示する処理(上記S4400〜S4410の処理)では、IPv6アドレスの表示/非表示を切り替えることしか行っていなかったが、このIPv6アドレス表示欄111におけるIPv6アドレスの表示の際にも、図27に例示した如く、IPv6アドレス表示欄111をプルダウンメニュー化して複数のアドレスを表示できるようにしてもよい。
また、IPv6アドレス表示欄111をプルダウンメニュー化せず、上記実施形態同様、優先度の高いアドレスを1つだけ表示する場合でも、その優先度の高い1つのアドレスについて、図27に例示したプルダウンメニュー内に含まれる各アドレスと同じように、表示形態のみ変更して表示するようにしてもよい。すなわち、上記S4410の処理では、プリンタからアドレスリストを取得した後、リスト順に従って有効なアドレスを1つでも取り出したら、それが最も優先度の高いアドレスと考えて直ちに表示を行うが、さらに、マークに基づいてフォントを加工する処理を加えるようにしてもよい。
より具体的には、IPv6アドレス表示欄111に1つのIPv6アドレスを表示する際、図36に示すように、まず、デバイス(プリンタ)からアドレスリスト(図2参照)を取得し(S6510)、取得したアドレスリストを対象にして、リスト順に(アドレスリスト中の優先度順上位側から)アドレス情報を1つ取り出し(S6520)、アドレス情報を取り出すことができたかどうかを判断する(S6530)。デバイスから取得したアドレスリストには、アドレス情報が少なくとも1つは格納されているので、S6530の処理は、少なくとも1回は肯定判断されることになり(S6530:YES)、その場合は、無効なアドレス(Invalid address)か否かを判断する(S6540)。無効なアドレス(Invalid address)であれば(S6540:YES)、別の有効なアドレスを取り出すため、S6520の処理へと戻る。
また、無効なアドレス(Invalid address)でなければ(S6540:NO)、まず表示用フォントをノーマルに設定し(S6550)、さらにアドレス情報中のマークをマスクして(S6560)、マスクしたマークに基づき、マークが有れば(S6570:YES)、フォントをボールドに設定し(S6580)、ローカルアドレスであれば(S6590:YES)、フォントをイタリックに設定し(S6600)、Deprecatedフラグが設定されていれば(S6610:YES)、フォントをグレー表示(淡色表示)に設定し(S6620)、以上S6550〜S6620の処理により表示設定が施されたアドレスを、IPv6アドレス表示欄111に表示し(S6630)、図36に示した処理を終了する。このような処理を行えば、デバイス一覧表示画面101のIPv6アドレス表示欄111(図18参照)にも、図27に例示したプルダウンメニュー内に含まれる各アドレスと同じように表示形態が加工されたアドレスを表示することができる。
また、上記実施形態では、Admin、User、Last、Static等のマークについて、マスクを使って必要なマークを取り出した後は、マークの有無のみで表示形態を切り替えるように構成してあったが、これらAdmin、User、Last、Static等のマークについて、それぞれ独立にマークの有無を判断してもよく、この場合、各マーク毎に表示形態を切り替えるように構成してもよい。
さらに、上記実施形態では、アドレスリストの中にある複数のアドレスのうち、最も優先度が高いアドレスを1つ表示する例、利用者が表示対象としたいすべてのアドレスをプルダウンメニュー化して表示する例、利用者が表示対象としたいすべてのアドレスをバルーン表示する例などを示したが、アドレス表示個数の制限を加える場合は、最も優先度が高いアドレスを1つだけに制限しなくても、例えば、優先度が高い方から上位3つまで表示するなど、所定数の表示ができるように構成してあってもよい。
1・・・管理PC、2,3,4・・・プリンタ、6,10,14・・・LAN、8,16・・・クライアントPC、12・・・ルータ、18,19・・・ゲートウェイ、20・・・インターネット。