JP3944214B2 - デバイス管理システム、装置および方法 - Google Patents

デバイス管理システム、装置および方法 Download PDF

Info

Publication number
JP3944214B2
JP3944214B2 JP2005029833A JP2005029833A JP3944214B2 JP 3944214 B2 JP3944214 B2 JP 3944214B2 JP 2005029833 A JP2005029833 A JP 2005029833A JP 2005029833 A JP2005029833 A JP 2005029833A JP 3944214 B2 JP3944214 B2 JP 3944214B2
Authority
JP
Japan
Prior art keywords
community name
request
name
network
responding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005029833A
Other languages
English (en)
Other versions
JP2006215926A (ja
Inventor
正徳 川島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2005029833A priority Critical patent/JP3944214B2/ja
Publication of JP2006215926A publication Critical patent/JP2006215926A/ja
Application granted granted Critical
Publication of JP3944214B2 publication Critical patent/JP3944214B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Description

本発明は、コンピュータネットワークにおけるデバイス管理技術に関する。
SNMP(Simple Network Management Protocol)は、LAN(Local Area Network)をはじめとするネットワークを管理するためのプロトコルである。SNMPは、現在、TCP/IPをベースとしたネットワークに限らず、TCP/IP以外のプロトコルをベースとしたネットワークのネットワーク管理プロトコルとしても幅広く使用されている。
通常、このネットワーク管理においては、ネットワークデバイスを管理するPC(Personal Computer)から、管理対象のネットワークデバイスがもつMIB(Mnagement Information Base)に、SNMPを使用してアクセスすることにより管理が行われる。ここで、ネットワークデバイスを管理するPCをマネージャと呼び、管理されるネットワークデバイスをエージェントと呼ぶ。MIBは、木構造のデータ構造をしており、すべてのノード(オブジェクト)に対してオブジェクトIDという一意に識別可能な識別子が割り付けられている。このMIBの構造は、SMI (Structure for Management Information) と呼ばれ、RFC1155「Structure and Identification of Management Information for TCP/IP-based Internets」(非特許文献1)で規定されている。また、SNMPについては、RFC1157「A Simple Network Management Protocol」(非特許文献2)で規定されている。
SNMPのバージョンの1つであるSNMPv1では、マネージャとエージェント間の情報交換に、GetRequest、GetNextRequest、SetRequest、GetResponse、Trapの5つのメッセージが使用される。GetRequestメッセージは、マネージャからエージェントへ送信され、オブジェクトIDで指定したオブジェクトの値を取得するのに用いられる。GetNextRequestメッセージは、マネージャからエージェントへ送信され、オブジェクトIDの順序に従い、オブジェクトIDで指定したオブジェクトの次のオブジェクトの値を取得するのに用いられる。SetRequestメッセージは、マネージャからエージェントへ送信され、オブジェクトIDで指定されたノードの値を設定するのに用いられる。GetResponseメッセージは、エージェントからマネージャへ送信され、マネージャからの要求(GetRequest、GetNextRequest或いはSetRequest)に対するエージェントからの応答を返すのに用いられる。Trapメッセージは、エージェントからマネージャへ送信され、異常や事象の発生をエージェントからマネージャに能動的に通知するのに用いられる。
SNMPメッセージは、バージョン番号、コミュニティ名、PDU(Protocol Data Unit)により構成され、そのコーディング方法はASN.1(Abstract Syntax Notation 1)のBER(Basic Encoding Rule)に従っている。SNMPを実装するマネージャおよびエージェントは、各SNMPメッセージに対応する、GetRequest-PDU、GetNextRequest-PDU、SetRequest-PDU、GetResponse-PDU、Trap-PDUの5つのPDUをサポートすることが必須となっている。
図3に、Trap-PDUを除く上記各PDUのデータフォーマットを示す。図3において301はSNMPメッセージである。302はSNMPのバージョン情報が格納される領域であり、例えば、SNMPv1の場合は値“0”が設定される。303はSNMPの管理対象となるエージェントとそれを管理するマネージャをグループ化したコミュニティの名前(コミュニティ名)を設定する領域である。エージェントは、マネージャから受信したSNMPメッセージに設定されているコミュニティ名と自分が属するコミュニティ名と比較し、一致する場合のみ当該SNMPメッセージを受け付ける。304はPDUが格納される領域であり、そのPDUの構造の詳細は305に示されている。
なお、SNMPメッセージでは、図示しないPDUのヘッダ部にそのメッセージの種別(GetRequest、GetNextRequest、SetRequest)に関する情報が格納される。
306はリクエストIDが格納される領域であり、マネージャがGetRequest、GetNextRequest、SetRequestの要求を出す際に、個々の要求と、それに対応する応答を識別するために使用する。エージェントでは、マネージャからの要求を受けると、GetResponseを出力する際に、マネージャからの要求に設定されていたリクエストIDと同じ値を領域306に設定する。これにより、マネージャでは、受信した応答がどの要求に対するものかを判断することが可能になる。307はエラーステータスが格納される領域である。エラーステータスとはマネージャが要求したSNMPメッセージの中にエラーがあったとき、エージェントからマネージャへ送信するGetResponseメッセージでエラーの内容を通知するときに使用するものである。マネージャが送信する要求時のPDUでは常にエラーなし(noError)が領域307に設定される。308は、要求されたSNMPメッセージ上で何番目のオブジェクトにエラーのあったのかを示すエラーインデックスが格納される領域である。
309はオブジェクト名(310、312)とその値(311、313)の対の配列(variable-bindings)が格納される領域である。SNMPメッセージでは、図に示すように複数のオブジェクト(オブジェクト名とその値の対)に対する要求を1つのメッセージに格納することができる。なお、要求時のPDUでは値311,313は一般にNULLを示すデータが格納される。
一方、管理対象となるネットワーク上の各種の資源 (プリンタ、複合機、スキャナなど) を効率的に発見し、利用するための方法として、ディレクトリサービスと呼ばれるものが提供されている。ディレクトリサービスとは、言わばネットワークに関する電話帳であり、様々な情報を格納するためのものである。ディレクトリシステムの具体例としては、例えばRFC1777に規定されているLDAP(Lightweight Directory Access Protocol)やNovell社のNDS (NetWare Directory Service) がある。また、ディレクトリサービスが利用できない環境の場合は、SNMPブロードキャストなどを利用してネットワークデバイスを探索することも可能である。
一般的なネットワークデバイス管理システムでは、SNMP/MIBやディレクトリサービスを用いて、ネットワークに接続されているネットワークデバイスを検索したり、ネットワークデバイスの状態やネットワークデバイスに設定されている各種情報を表示したり変更したりすることができる。また、最近では、サーバPC上で一元管理されたネットワークデバイス管理情報に対して、複数のクライアントPCからWebブラウザ経由でアクセスし、ネットワークに接続されているネットワークデバイスの一覧を表示したり、ネットワークデバイスの状態やネットワークデバイスに設定されている各種情報を表示および/または変更できるWebアプリケーションの開発が盛んになっている。
特開2003−316672号公報 Request for Comments 1155 (Structure and Identification of Management Information for TCP/IP-based Internets)、http://www.ietf.org/rfc/rfc1155.txt Request for Comments 1157 ( A Simple Network Management Protocol (SNMP) )、http://www.ietf.org/rfc/rfc1157.txt
しかし近年になって、上記従来例に示したようなSNMP/MIBにより実現されるネットワークデバイスおよびネットワークデバイス管理システムにおいて、SNMPの実装(セキュリティ)に関する脆弱性が指摘されている。
このSNMPの脆弱性への対策の1つとして、デフォルトのコミュニティ名(以下、デフォルトコミュニティ名という)である“public”や“private”という値を使わずに、他の独自のコミュニティ名(以下、カスタムコミュニティ名という)を使うことが推奨されている。また、特許文献1には、コミュニティ名を動的に生成してセキュリティを向上することが提案されている。
一方、SNMPの脆弱性が指摘される以前のネットワークデバイスでは、デフォルトのコミュニティ名でしかアクセスできないような実装になっているものがある。すなわちコミュニティ名を変更可能なものとそうでないものとが混在する場合がある。しかしながら、一般的なネットワークデバイス管理システムでは、管理対象のネットワークデバイスがコミュニティ名の変更が可能かどうかを判断することができなかった。
本発明は上記の課題に鑑みてなされたものであり、デフォルトのコミュニティ名に応答するネットワークデバイスからコミュニティ名を変更可能なデバイスを自動的に検出可能とすることを目的とする。
上記の目的を達成するための本発明の一態様によるデバイス管理装置は以下の構成を備える。すなわち、
ネットワークに接続されたデバイスを所定の管理プロトコルで管理するデバイス管理装置であって、
前記所定の管理プロトコルを用いて、デフォルトのコミュニティ名による第1リクエストに応答するデバイスと、変更されたコミュニティ名による第2リクエストに応答するデバイスを探索する探索手段と、
前記第1リクエストに応答したデバイスのうち、前記第2リクエストに応答したデバイスと同一タイプの製品と判定されたデバイスをコミュニティ名の変更が可能なデバイスとして抽出する抽出手段とを備える。
また、上記の目的を達成するための本発明の他の態様によるデバイス管理システムは以下の構成を備える。すなわち、
ネットワークに接続された複数のデバイスと、該複数のデバイスを所定の管理プロトコルで管理する管理装置とを備えたデバイス管理システムであって、
前記所定の管理プロトコルを用いて、前記複数のデバイスから、デフォルトのコミュニティ名による第1リクエストに応答するデバイスと、変更されたコミュニティ名による第2リクエストに応答するデバイスを探索する探索手段と、
前記第1リクエストに応答したデバイスのうち、前記第2リクエストに応答したデバイスと同一タイプの製品と判定されたデバイスをコミュニティ名の変更が可能なデバイスとして抽出する抽出手段とを備える。
更に、上記の目的を達成するための本発明の他の態様によるデバイス管理方法は、
ネットワークに接続されたデバイスを所定の管理プロトコルで管理するデバイス管理方法であって、
前記所定の管理プロトコルを用いて、デフォルトのコミュニティ名による第1リクエストに応答するデバイスと、変更されたコミュニティ名による第2リクエストに応答するデバイスを探索する探索工程と、
前記第1リクエストに応答したデバイスのうち、前記第2リクエストに応答したデバイスと同一タイプの製品と判定されたデバイスをコミュニティ名の変更が可能なデバイスとして抽出する抽出工程とを備える。
本発明によれば、デフォルトのコミュニティ名に応答するネットワークデバイスからコミュニティ名を変更可能なデバイスを自動的に検出することができる。
以下、添付の図面を用いて本発明の好適な実施形態について説明する。
図1は、本実施形態のネットワークデバイス管理システムが動作可能なネットワークの構成例を示す図である。
図1において、管理対象のネットワークデバイス、ネットワーク管理用のサーバPC、ネットワーク管理用のクライアントPCは、すべてLAN100に接続されている。101a〜101eはカラープリンタ、102a〜102eはモノクロプリンタ、103a〜103eは複合機 (コピー機能、ファクス機能、プリンタ機能をあわせもつデバイス)、104a〜104eはスキャナであり、それぞれネットワークインタフェースカードなどを装着することにより、ネットワークデバイスとしてLAN100に接続されている。なお、これらのネットワークデバイスは、本実施形態のネットワークデバイス管理システムで管理可能なネットワークデバイスであり、ディレクトリサービスなどの方法で探索でき、SNMP/MIBにより情報の取得や設定が可能なものである。
105a〜105eはネットワーク接続可能なPC (Personal Computer) である。これらのPCにおいては、本実施形態のネットワークデバイス管理ソフトウェアが稼動可能である。また、PC105a〜105eにおいて、本発明に従ったネットワークデバイス管理システムをWebベースのアプリケーションとして実施してもよく、その場合は次のような形態となる。すなわち、いずれか1つのPC(サーバPC)上でネットワークデバイス管理ソフトウェアを稼動し、他のPC(クライアントPC)からはWebブラウザ経由で上記サーバPC上で稼動しているネットワーク管理ソフトウェアにアクセスすることによりネットワークデバイス管理システムを利用することが可能になる。このとき、サーバPC上のWebブラウザから、同じサーバPC上で稼動しているネットワークデバイス管理システムにアクセスするようにしてもよい。
また、図1において、カラープリンタ101a、b、モノクロプリンタ102a、複合機103a、b、およびスキャナ104a、bはコミュニティ名“my_community_a”に属するネットワークデバイスであり、カラープリンタ101c、d、モノクロプリンタ102b、c、複合機103c、d、およびスキャナ104cはコミュニティ名“my_community_b”に属するネットワークデバイスであり、カラープリンタ101e、モノクロプリンタ102d、e、複合機103e、およびスキャナ104d、eはコミュニティ名“my_community_c”に属するネットワークデバイスである。これらのネットワークデバイスは、上記のようなカスタムコミュニティ名に応答するようにコミュニティ名の設定が行われている必要がある。しかしながら、コミュニティ名の変更が実施されていないネットワークデバイスや、コミュニティ名の変更ができないネットワークデバイスが接続されている場合もある。そのようなネットワークデバイスの場合には、カスタムコミュニティ名によるアクセスはできず、デフォルトコミュニティ名(“public”や“private”など)でアクセスする必要がある。
図2Aは、本実施形態のネットワークデバイス管理ソフトウェアが稼動可能なPC(105a〜e)の構成例を示すブロック図である。
図2Aにおいて、200は、ネットワークデバイス管理ソフトウェアが稼動するPCであり、図1における105a〜105eと同等である。PC200は、ROM202もしくはHD(ハードディスクドライブ)211に記憶されているか、FD(フロッピー(登録商標)ディスクドライブ)212、CD (CD−ROMドライブ) 213またはDVD (DVD−ROMドライブ) 214より供給されるネットワーク管理ソフトウェアを実行するCPU201を備え、システムバス204に接続される各デバイスを総括的に制御する。
203はRAMであり、CPU201のメインメモリ、ワークエリア等として機能する。205はKBC(キーボードコントローラ)で、KB(キーボード)209や不図示のポインティングデバイス等からの入力信号を制御する。206はCRTC(CRTコントローラ)で、CRT(CRTディスプレイ)210の表示を制御する。207はDKC(ディスクコントローラ)で、ブートプログラム、種々のアプリケーション、編集ファイル、ユーザファイルそしてネットワーク管理ソフトウェア等を記憶するHD211、FD212、CD213、DVD214とのアクセスを制御する。208はNIC(ネットワークインタフェースカード)で、LAN100を介して、他のネットワークデバイスと双方向にデータをやりとりする。なお、後述のすべての説明において、特に断りのない限り、実行の主体はハード上はCPU201であり、ソフトウェア上の制御の主体は、HD(ハードディスク)211にインストールされたネットワークデバイス管理ソフトウェアである。
図2Bは、本実施形態のネットワークデバイス管理システムが管理する対象のネットワークデバイス(エージェント)の構成例を示す図である。デバイス250は例えばモノクロプリンタ102a〜102eを示すものとするが、カラープリンタ101a〜101e、複合機103a〜103e、スキャナ104a〜104eにおいてもネットワーク通信に関わる構成は同様である。
図2Bにおいて、CPU251はROM252に格納されたプログラムに従ってネットワークデバイス250の全体の動作を制御する。プリンタエンジン254はインターフェース253を介してCPU251により制御され、可視画像を記録媒体上に形成する。フラッシュROM256は電気的にデータの書き換えが可能なROMであり、MIB265aを格納している。RAM257はCPU251が各種制御を実行するためのワークエリアを提供する。なお、プリンタエンジン254のためのビデオメモリとしての機能も含まれる。NB258はネットワークボードであり、LAN100と当該ネットワークデバイス250とを接続する。
図4は、本実施形態のネットワークデバイス管理システムにおいて、ネットワーク上に接続されたネットワークデバイスの探索に関連する処理の一例を示すフローチャートである。図4において、「マネージャ」はネットワークデバイス管理システムであり、本実施形態ではPC105a〜eに相当する。また、「エージェント」は管理対象のネットワークデバイスであり、本実施形態では、モノクロプリンタ102a〜102eを示すものとするが、カラープリンタ101a〜101e、複合機103a〜103e、スキャナ104a〜104eに相当する。
ステップS401〜S407、ステップS412〜S418、および、ステップS423〜S426の処理はマネージャ上で実行される処理である。また、ステップS408〜S411およびステップS419〜S422の処理はi番目のエージェント上で実行される処理である。ネットワーク上に接続された全てのエージェントの数をNとすると、iが0〜N−1の間、ステップS404〜S425の処理が繰り返されることになる。
ステップS401では、ディレクトリサービスやSNMPブロードキャストなどを利用してネットワークに接続されたネットワークデバイスを探索し、ステップS402に進む。ステップS402では、ステップS401で探索されたネットワークデバイスを順に参照するためのインデックス変数iを“0”に初期化し、ステップS403に進む。なお、デバイスの探索において、エージェントは所定の順番で登録され、インデックス番号が付されるものとする。
ステップS403では、インデックス変数iの値と、ステップS401で探索されたネットワークデバイスの数を比較し、インデックス変数iの値がネットワークデバイスの数よりも小さかった場合にはステップS404に進み(ステップS403:Yes)、それ以外の場合は処理を終了する(ステップS403:No)。
ステップS404では、インデックス変数iで参照されるネットワークデバイスに対してデフォルトコミュニティ名でGetRequestを送信し、ステップS405に進む。ステップS405では、ステップS404で送信したGetRequestに対する応答を監視するためのタイマを起動し、ステップS406に進む。ステップS406では、ステップS405で起動した応答待ちタイマがタイムアウトしたかどうか検査し、タイムアウトした場合はステップS407に進む(ステップS406:Yes)。タイムアウトする前に、i番目のエージェントからGetResponseによる応答を受信した場合は、ステップS406からステップS412へ処理を進める。ステップS407では、ステップS404において送信したGetRequestのコミュニティ名に対して、i番目のエージェントが応答しなかった旨を記憶(図6で後述するデフォルトコミュニティ名への応答605に応答がなかったことを示す「0」を格納)し、ステップS415に進む。なお、ステップS414では、デフォルトコミュニティ名に応答したことを示す「1」がデフォルトコミュニティ名への応答605に格納される。
尚、図4では応答待ちタイマがタイムアウトするまでにGetResponseを受信できなかった場合は直ちにステップS407に進むが、ステップS404によるGetRequestの再送処理を適切な回数繰り返すようにしてもよい。
一方、i番目のエージェントにおいて、ステップS404で送信されたGetRequestを受信する(ステップS408)と、ステップS409〜S411の処理が行われる。ステップS409では、i番目のエージェントにおいて、ステップS408で受信したGetRequestを解析し、応答可能なGetRequestであった場合にはステップS411に進み(ステップS409:Yes)、応答不可能なGetRequestであった場合にはステップS410に進む(ステップS410:No)。ここで、応答可能なGetRequestとは、当該i番目のエージェントが受け付け可能なコミュニティ名で送信されたGetRequestであり、GetRequestによる情報の取得処理そのものに失敗した場合であっても、エラーの内容を示すGetResponseがマネージャに送信されるものである。また、応答不可能なGetRequestとは、当該i番目のエージェントが受け付け不可能なコミュニティ名で送信されたGetRequestであり、このGetRequestについてはエージェントからマネージャにはGetResponseなどのSNMPメッセージは送信されない。
ステップS410では、i番目のエージェントにおいて、ステップS408で受信したGetRequestに関するエラー処理を行い、ステップS408で受信したGetRequestに関するエージェント内での処理を終了する。ここで実行するエラー処理とは、例えばエージェント内部でカウントしている不正コミュニティ名で送信されたSNMPメッセージの受信カウンタのカウントアップ処理などが挙げられる。
ステップS411では、当該i番目のエージェントにおいて、ステップS408で受信したGetRequestに対する応答としてGetResponseをマネージャに送信し、ステップS408で受信したGetRequestに関するエージェント内での処理を終了する。
マネージャの処理に戻り、応答待ちタイマのタイムアップまでにi番目のエージェントよりGetResponseを受信(ステップS412)すると、ステップS413に進む。ステップS413では、ステップS405において起動したGetRequestの応答待ちタイマを停止し、ステップS414に進む。このタイマ停止処理により、ステップS406において実行されているタイマのタイムアウト監視処理も停止される。ステップS414では、ステップS404において送信したGetRequestのコミュニティ名に対して、i番目のエージェントが応答した旨を記憶し、ステップS415に進む。なお、デフォルトコミュニティ名とカスタムコミュニティ名の両方に応答するようなデバイスもあることを考慮し、本実施形態では、デフォルトコミュニティ名に応答した場合でも、ステップS415以降の処理を行う。また、ステップS414においては、デフォルトコミュニティ名を用いたリクエストにより、当該i番目のエージェントから図6のリストに示すような情報(デバイス名601、製品名602、ネットワークインタフェースボード(NB)名603)を取得してテーブル600に登録し、RAM203に記憶する。
尚、ステップS404で使用するデフォルトコミュニティ名は、例えば、ネットワークデバイス管理システムが予め保持している文字列であり、例えば、“public”や“private”が適用される。また、ステップS404からステップS414までのデフォルトコミュニティ名に関する一連の処理は、本実施形態では1つのコミュニティ名についての処理しか記載していないが、複数のコミュニティ名について処理する場合にはSNMPメッセージに設定するコミュニティ名を変更しながらステップS404からステップS414の処理を複数回繰り返すようにしてもよい。例えば、上述のように“public”や“private”の2つのコミュニティ名について応答をチェックする必要があれば、ステップS404からステップS414の処理を2回繰り返すことになる。
ステップS415では、インデックス変数iで参照されるネットワークデバイスに対して予め設定されている独自のコミュニティ名(以下、カスタムコミュニティ名と称する)でGetRequestを送信し、ステップS416に進む。
ステップS416では、ステップS415で送信したGetRequestに対する応答を監視するためのタイマを起動し、ステップS417に進む。ステップS417では、ステップS416で起動した応答待ちタイマがタイムアウトしたかどうか検査し、タイムアウトしている場合はステップS418に進む(ステップS417:Yes)。尚、応答待ちタイマがタイムアウトした場合に、ステップS415によるGetRequestの再送処理を適切な回数繰り返すように構成してもよい。
ステップS418では、前記ステップS415において送信したGetRequestのコミュニティ名に対して、前記i番目のエージェントが応答しなかった旨を記憶(図6のカスタムコミュニティ名への応答606に応答がなかったことを示す「0」を格納)し、ステップS426に進む。一方、応答待ちタイマのタイムアップ前にi番目のエージェントからGetResponseを受信した場合はステップS423以降の処理が実行される。
また、i番目のエージェントにおいては、マネージャがステップS415において送信したGetRequestを受信すると(ステップS419)、処理をステップS420に進める。ステップS420では、i番目のエージェントにおいて、ステップS419で受信したGetRequestを解析し、応答可能なGetRequestであった場合にはステップS422に進み(ステップS420:Yes)、応答不可能なGetRequestであった場合にはステップS421に進む(ステップS420:No)。ここで、応答可能なGetRequestとは、i番目のエージェントが受け付け可能なコミュニティ名で送信されたGetRequestであり、GetRequestによる情報の取得処理そのものに失敗した場合であっても、エラーの内容を示すGetResponseがマネージャに送信されるものである。また、応答不可能なGetRequestとは、i番目のエージェントが受け付け不可能なコミュニティ名で送信されたGetRequestであり、このGetRequestについてはエージェントからマネージャにはGetResponseなどのSNMPメッセージは送信されない。
ステップS421では、前記i番目のエージェントにおいて、前記ステップS419で受信したGetRequestに関するエラー処理を行い、前記ステップS19で受信したGetRequestに関するエージェント内での処理を終了する。ここで実行するエラー処理とは、例えばエージェント内部でカウントしている不正コミュニティ名で送信されたSNMPメッセージの受信カウンタのカウントアップ処理などがある。
ステップS422では、i番目のエージェントにおいて、ステップS419で受信したGetRequestに対する応答としてGetResponseをマネージャに送信し、ステップS419で受信したGetRequestに関するエージェント内での処理を終了する。
マネージャは、ステップS422でi番目のエージェントから送信されたGetResponseを受信すると、処理をステップS424へ進め、ステップS416において起動したGetRequestの応答待ちタイマを停止する。このタイマ停止処理により、ステップS417において実行されているタイマのタイムアウト監視処理も停止される。そして、ステップS425において、ステップS415において送信したGetRequestのカスタムコミュニティ名に対して、i番目のエージェントが応答した旨を記憶(カスタムコミュニティ名への応答605に「1」を格納)し、ステップS426に進む。なお、ステップS425においては、カスタムコミュニティ名を用いたリクエストにより、当該i番目のエージェントから図6のリストに示すような情報(デバイス名601、製品名602、ネットワークインタフェースボード(NB)名603)を取得し、RAM203に記憶されたテーブル600に登録する。
尚、ステップS415で使用するカスタムコミュニティ名は、例えば、図には示さないステップにおいて、ネットワークデバイス管理者が予め設定した文字列であり、例えば、“my_community_a”、“my_community_b”、“my_community_c”などの任意の文字列を使用することができる。また、ステップS415〜ステップS425までのネットワークデバイス管理者が指定したコミュニティ名に関する一連の処理は、本実施形態では1つのカスタムコミュニティ名についての処理しか記載していないが、複数のカスタムコミュニティ名について処理する場合にはSNMPメッセージに設定するコミュニティ名を変更しながらステップS415からステップS425の処理を複数回繰り返すことになる。例えば、本実施形態のように、“my_community_a”、“my_community_b”、“my_community_c”の3つのカスタムコミュニティ名について調べる場合は、ステップS415〜ステップS425までの処理を3回繰り返すことになる。
ステップS426では、前記ステップS401で探索されたネットワークデバイスを参照するためのインデックス変数iの値を“1”加算し、ステップS403に戻る。
尚、図4においてマネージャからエージェントに送信するGetRequestでは、管理対象のエージェントが必ず実装しているMIBオブジェクトの取得要求を行うものとする。本実施形態では、このGetRequestにより後述の図6に示す、デバイス名、製品名、ネットワークインタフェースボード名などのネットワークデバイスの管理に必要な情報を取得するものとする。なお、図6の例では、デバイス名601はsysName.0(オブジェクトIDは、1.3.6.1.2.1.1.5.0)を、製品名602はhrDeviceDescr.1(オブジェクトIDは、1.3.6.1.2.1.25.3.2.1.3.1)を、ネットワークインタフェースボード名603はifDescr.1(オブジェクトIDは、1.3.6.1.2.1.2.2.1.2.1)を、それぞれ取得するものとする。また、ステップS407、S414、S418、S425において記録するコミュニティ名の応答状況はデフォルトコミュニティへの応答605およびカスタムコミュニティ名への応答606に反映される。なお、デフォルトコミュニティ名への応答605およびカスタムコミュニティ名への応答606には、応答がなかった場合は「0」、応答があった場合は「1」が格納される。
また、本実施形態では、上記処理によってデフォルトコミュニティ名が付与されているエージェントにおいて、カスタムコミュニティ名を設定可能であるかどうかを調べる。図5は、本実施形態によるネットワークデバイス管理システムにおいて、デフォルトコミュニティ名に応答するネットワークデバイスを検索し、探索されたネットワークデバイスにおいてコミュニティ名の変更が可能かどうかを検査する処理の一例を示すフローチャートである。
図5において、ステップS501では、上記図4のフローチャートに示したネットワークデバイスの探索処理(応答するコミュニティ名の検査を含む(単にデバイスを探索するだけならば、ユーザから指定されたコミュニティ名でのみ探索すればよいが、本実施形態ではユーザから指定されたコミュニティ名があった場合でも、デフォルトコミュニティ名での探索が必要になる))を行い、ステップS502に進む。ステップS502では、ステップS501で探索されたネットワークデバイス(エージェント)の情報(例えば、図6に示したような情報)を順に参照するためのインデックス変数iを“0”に初期化し、ステップS503に進む。
ステップS503では、インデックス変数iの値と、ステップS501において探索されたネットワークデバイスの数を比較し、インデックス変数iの値の方が小さい場合にはステップS504に進み(ステップS503:Yes)、それ以外の場合は本処理を終了する。尚、後述のステップS504からステップS511の処理によりデフォルトコミュニティ名に応答したネットワークデバイスで、かつコミュニティ名の変更が可能なネットワークデバイスが検出された場合は、本処理を終了する際に、図7に示すようなメッセージボックスを表示することで、ネットワークデバイス管理者にコミュニティ名の変更を促すようにしても良い。図7において、700はコミュニティ名の変更を促すメッセージを表示するウィンドウであり、701、702は、デフォルトのコミュニティ名に応答し、かつコミュニティ名の変更が可能と判断されたネットワークデバイスの一覧、703はウィンドウ700を閉じるためのボタンである。なお、デフォルトコミュニティ名に応答したネットワークデバイスで、かつコミュニティ名の変更が可能なネットワークデバイスが検出された場合の処理は、上記に限られるものではない。例えば、図7の共有プリンタ03や12のコミュニティ名を変更するためのUIを自動的に起動したり、コミュニティ名をカスタムコミュニティ名に自動的に変更する等の処理を実行させるようにしてもよい。
ステップS504からステップS511までは、インデックス変数iにより参照されるネットワークデバイスに関する処理である。ステップS504では、i番目のネットワークデバイスがデフォルトのコミュニティ名に応答したかどうか判断(例えば、デフォルトコミュニティ名への応答605をチェックすることで判断できる)し、デフォルトのコミュニティ名に応答している場合にはステップS505に進み(ステップS504:Yes)、それ以外の場合はステップS512に進む(ステップS505:No)。例えば、図6に示した例では、共有プリンタ03、06〜10、および、12がデフォルトのコミュニティ名“public”に応答している。
ステップS505では、ステップS504において、デフォルトコミュニティ名に応答すると判断されたi番目のネットワークデバイスと同一の製品を検索するためのインデックス変数jを“0”に初期化し、ステップS506に進む。インデックス変数jを用いることにより、インデックス変数iと同様に、ステップS501において探索されたネットワークデバイスの情報を参照できるものとする。
ステップS507〜ステップS509は、インデックス変数iで参照できるネットワークデバイスと、インデックス変数jで参照できるネットワークデバイスに関する処理である。ステップS507〜ステップS509の処理は、全てのネットワークデバイスについて実行される(ステップS506、S510)。
ステップS507ではインデックス変数iの値と、インデックス変数jの値が等しいかどうか判断し、値が等しくなければステップS508に進に(ステップS507:Yes)、値が等しい場合はステップS511に進む(ステップS507:No)。インデックス変数iの値と、インデックス変数jの値が等しい場合、これらの変数で参照できるネットワークデバイスの情報は同一のものを指しているため、同一製品かどうかを判別する必要はないからである。
ステップS508では、インデックス変数iで参照されるネットワークデバイスと、インデックス変数jで参照されるネットワークデバイスの情報を比較する。比較の結果、これらのネットワークデバイスが同一製品であると判断された場合はステップS509に進み(ステップS508:Yes)、それ以外の場合はステップS511に進む(ステップS508:No)。尚、本実施形態では、同一製品かどうかの判断は、図6の製品名602とネットワークインタフェースボード名603の値が等しいかどうかにより判別するものとする。従って、図6の例では、共有プリンタ01〜05、共有プリンタ06〜10、共有プリンタ11〜15、共有スキャナ01〜05が同一製品と判断される。なお、同一製品かどうかの判断を製品名602あるいはボード名603のどちらか一方のみを用いて行えるシステムであれば、いずれか一方を用いて当該判断を行えばよい。
ステップS509では、インデックス変数jで参照できるネットワークデバイスが、ネットワークデバイス管理者が指定したカスタムコミュニティ名(本実施形態では、“my_community_a”、“my_community_b”、“my_community_c”のいずれか)に応答しているかどうか調べる(例えば、カスタムコミュニティ名への応答606をチェックすることで判断できる)。カスタムコミュニティ名に応答していると判定された場合はステップS510に進み(ステップS509:Yes)、それ以外の場合はステップS511に進む(ステップS509:No)。
例えば、図6に示した例では、共有プリンタ01、02、04、05、11、13〜15、および共有スキャナ01〜05がカスタムコミュニティ名に応答している。本実施形態では、カスタムコミュニティ名に応答しているネットワークデバイスを、コミュニティ名の変更が可能なネットワークデバイスであると判断する。よって、図6の例では、共有プリンタ01〜05は、カスタムコミュニティ名に応答しているネットワークデバイス(共有プリンタ01、02、04、05)があるためコミュニティ名が変更可能なネットワークデバイスと判断することができ、共有プリンタ06〜09は、いずれもデフォルトコミュニティ名(“public”)に応答しているため、コミュニティ名の変更ができないネットワークデバイスと判断することができる。
ただし、実際には前記共有プリンタ06〜09は、コミュニティ名の変更が可能なネットワークデバイスである可能性もある。本実施形態では、コミュニティ名の変更ができない可能性があるネットワークデバイスについてはデフォルトコミュニティ名の変更を促すことがないようにすることを目的としている。よって、同一製品すべてがコミュニティ名の変更ができるにもかかわらずデフォルトのコミュニティ名のまま運用されている場合については、コミュニティ名の変更ができないネットワークデバイスとして扱っている。
ステップS511では、インデックス変数iで参照できるネットワークデバイスが、デフォルトのコミュニティ名に応答し、かつコミュニティ名の変更が可能なネットワークデバイスであることを記憶し、ステップS512に進む。この結果は、例えば、図6の管理テーブルの図示しないエントリに記憶される。
ステップS511では、インデックス変数jの値を“1”加算し、ステップS506に戻る。
ステップS512では、インデックス変数iの値を“1”加算し、ステップS503に戻る。
以上説明したように、本実施形態のネットワークデバイス管理システムによれば、管理対象ネットワークデバイスの中からデフォルトコミュニティ名に応答するネットワークデバイスが自動的に検出され、更に、これらのネットワークデバイスにおいてコミュニティ名の変更が可能かどうかを自動的に判断される。このため、コミュニティ名の変更が可能でかつデフォルトのコミュニティ名に応答しているネットワークデバイスのみをネットワークデバイス管理者に表示することが可能となる。よって、ネットワークデバイス管理者は、SNMPの脆弱性対策の1つであるデフォルトコミュニティ名の変更処理を効率的に行うことが可能になり、ユーザの利便性が向上するという効果がある。
なお、上記実施形態では、同一タイプの製品であるか否かをSNMPを利用して収集された情報(製品名、ネットワークボード名)に基づいて判定したが、これらの情報は別のプロトコルを介して収集されたものであってもよいし、マニュアルで入力されたものであってもよい。また、管理プロトコルとしては、SNMP以外にも、例えば、SLPマルチキャストが挙げられる。SLPマルチキャストにはSNMP v1のコミュニティ名に相当するものとしてスコープ名というものがあり、上述した処理を適用できる。
図8は、記憶媒体の一例であるCD−ROMのメモリマップを示す図である。9999はディレクトリ情報を記憶してある領域で、以降のインストールプログラムを記憶してある領域9998およびネットワークデバイス管理ソフトウェアを記憶してある領域9997の位置を示している。9998は、インストールプログラムを記憶してある領域である。9997は、ネットワークデバイス管理ソフトウェアを記憶してある領域である。本発明のネットワークデバイス管理ソフトウェアがPC200にインストールされる際には、まずインストールプログラムを記憶してある領域9998に記憶されているインストールプログラムがシステムにロードされ、CPU201によって実行される。次に、 CPU201によって実行されるインストールプログラムが、ネットワークデバイス管理ソフトウェアを記憶してある領域9997からネットワークデバイス管理ソフトウェアを読み出して、ハードディスク211に格納する。
なお、本発明は、複数の機器(例えばホストコンピュータ、インタフェース機器、リーダなど)から構成されるシステムあるいは統合装置に適用しても、ひとつの機器からなる装置に適用してもよい。
また、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、本発明の目的が達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM,CD−R、DVD−ROM、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
また、コンピュータが読み出したプログラムコードを実行することによって、前述した実施形態の機能が実現される他、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOSなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体から、そのプログラムをパソコン通信など通信ラインを介して要求者にそのプログラムを配信する場合にも適用できることは言うまでもない。
本実施形態のネットワークデバイス管理システムが動作可能なネットワークの構成例を示す図である。 本実施形態のネットワークデバイス管理システムが稼動可能なPCの内部構成を示す図である。 本実施形態のネットワークデバイスの内部構成例を示す図である。 SNMPメッセージ(Trapを除く)のフォーマットを示す図である。 本実施形態のネットワークデバイス管理システムにおける、ネットワークデバイスの探索に関連する処理を示すフローチャートである。 本実施形態のネットワークデバイス管理システムにおける、デフォルトのSNMPコミュニティ名に応答し、かつSNMPコミュニティ名の変更が可能なネットワークデバイスを検索する処理の一例を示すフローチャートである。 本実施形態のネットワークデバイス管理システムにおいて探索されたネットワークデバイスに関する情報の一例を示す図である。 本実施形態のネットワークデバイス管理システムにおいて、図6に示したネットワークデバイスの探索結果のうち、デフォルトコミュニティ名に応答し、かつコミュニティ名の変更が可能なネットワークデバイスについて、コミュニティ名の変更を促すメッセージの一例を示す図である。 本発明のプログラムが格納された記憶媒体の一例であるCD-ROMのメモリマップを示す図である。

Claims (13)

  1. ネットワークに接続されたデバイスを所定の管理プロトコルで管理するデバイス管理装置であって、
    前記所定の管理プロトコルを用いて、デフォルトのコミュニティ名による第1リクエストに応答するデバイスと、変更されたコミュニティ名による第2リクエストに応答するデバイスを探索する探索手段と、
    前記第1リクエストに応答したデバイスのうち、前記第2リクエストに応答したデバイスと同一タイプの製品と判定されたデバイスをコミュニティ名の変更が可能なデバイスとして抽出する抽出手段とを備えることを特徴とするデバイス管理装置。
  2. 前記抽出手段で抽出されたデバイスをコミュニティ名の変更が可能なデバイスとして提示する提示手段を更に備えることを特徴とする請求項1に記載のデバイス管理装置。
  3. 前記所定の管理プロトコルはSNMPであることを特徴とする請求項1に記載のデバイス管理装置。
  4. 前記抽出手段は、前記所定の管理プロトコルによって各デバイスから収集した情報に基づいてデバイスの抽出を行うことを特徴とする請求項1に記載のデバイス管理装置。
  5. 前記抽出手段は、前記第1または第2リクエストに応答したデバイスから取得される製品名に基づいて、デバイスの抽出を行うことを特徴とする請求項1乃至4のいずれかに記載のデバイス管理装置。
  6. ネットワークに接続された複数のデバイスと、該複数のデバイスを所定の管理プロトコルで管理する管理装置とを備えたデバイス管理システムであって、
    前記所定の管理プロトコルを用いて、前記複数のデバイスから、デフォルトのコミュニティ名による第1リクエストに応答するデバイスと、変更されたコミュニティ名による第2リクエストに応答するデバイスを探索する探索手段と、
    前記第1リクエストに応答したデバイスのうち、前記第2リクエストに応答したデバイスと同一タイプの製品と判定されたデバイスをコミュニティ名の変更が可能なデバイスとして抽出する抽出手段とを備えることを特徴とするデバイス管理システム。
  7. ネットワークに接続されたデバイスを所定の管理プロトコルで管理するデバイス管理方法であって、
    前記所定の管理プロトコルを用いて、デフォルトのコミュニティ名による第1リクエストに応答するデバイスと、変更されたコミュニティ名による第2リクエストに応答するデバイスを探索する探索工程と、
    前記第1リクエストに応答したデバイスのうち、前記第2リクエストに応答したデバイスと同一タイプの製品と判定されたデバイスをコミュニティ名の変更が可能なデバイスとして抽出する抽出工程とを備えることを特徴とするデバイス管理方法。
  8. 前記抽出工程で抽出されたデバイスをコミュニティ名の変更が可能なデバイスとして提示する提示工程を更に備えることを特徴とする請求項7に記載のデバイス管理方法。
  9. 前記所定の管理プロトコルはSNMPであることを特徴とする請求項7に記載のデバイス管理方法。
  10. 前記抽出工程は、前記所定の管理プロトコルによって各デバイスから収集した情報に基づいてデバイスの抽出を行うことを特徴とする請求項7に記載のデバイス管理方法。
  11. 前記抽出工程は、前記第1または第2リクエストに応答したデバイスから取得される製品名に基づいて、デバイスの抽出を行うことを特徴とする請求項7乃至10のいずれかに記載のデバイス管理方法。
  12. 請求項7乃至11のいずれかに記載のデバイス管理方法をコンピュータに実行させるための制御プログラム。
  13. 請求項7乃至11のいずれかに記載のデバイス管理方法をコンピュータに実行させるための制御プログラムを格納した記憶媒体。
JP2005029833A 2005-02-04 2005-02-04 デバイス管理システム、装置および方法 Expired - Fee Related JP3944214B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005029833A JP3944214B2 (ja) 2005-02-04 2005-02-04 デバイス管理システム、装置および方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005029833A JP3944214B2 (ja) 2005-02-04 2005-02-04 デバイス管理システム、装置および方法

Publications (2)

Publication Number Publication Date
JP2006215926A JP2006215926A (ja) 2006-08-17
JP3944214B2 true JP3944214B2 (ja) 2007-07-11

Family

ID=36979104

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005029833A Expired - Fee Related JP3944214B2 (ja) 2005-02-04 2005-02-04 デバイス管理システム、装置および方法

Country Status (1)

Country Link
JP (1) JP3944214B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5013838B2 (ja) * 2006-12-11 2012-08-29 キヤノン株式会社 ネットワーク管理システム、情報処理装置、および情報処理装置の制御方法
JP4968021B2 (ja) * 2007-11-29 2012-07-04 ブラザー工業株式会社 通信装置とコンピュータプログラム

Also Published As

Publication number Publication date
JP2006215926A (ja) 2006-08-17

Similar Documents

Publication Publication Date Title
US11095524B2 (en) Component detection and management using relationships
US9847965B2 (en) Asset detection system
US11696110B2 (en) Distributed, crowdsourced internet of things (IoT) discovery and identification using Block Chain
EP2837159B1 (en) System asset repository management
EP2921955B1 (en) Capability monitoring in a service oriented architecture
US8406140B2 (en) Network device inventory system
EP2837157B1 (en) Network address repository management
US10110437B2 (en) Method and apparatus to detect unidentified inventory
US8289882B2 (en) Systems and methods for modifying network map attributes
US20120297059A1 (en) Automated creation of monitoring configuration templates for cloud server images
EP1589691B1 (en) Method, system and apparatus for managing computer identity
JP2001282655A (ja) ネットワークデバイス管理方法、装置、および記憶媒体
JP2007257525A (ja) デバイス管理装置
US9871814B2 (en) System and method for improving security intelligence through inventory discovery
JP3944214B2 (ja) デバイス管理システム、装置および方法
JP5383927B2 (ja) 通信ネットワークに接続されている通信装置を発見する方法及び管理装置
JP3944030B2 (ja) ネットワークデバイス制御装置、ネットワークデバイス制御方法および該制御方法を実現するためのプログラム
JP5765451B2 (ja) 機器管理装置、機器管理システム、及びプログラム並びに機器管理方法
JP2007053485A (ja) ネットワーク機器制御システム
JP2011227818A (ja) 機器管理装置、機器管理方法、機器管理プログラム、及びそのプログラムを記録した記録媒体
JP2006244085A (ja) ネットワークデバイス管理装置、システム、および方法
JP2005108115A (ja) ネットワークデバイス管理装置、ネットワークデバイス管理システム、ネットワークデバイス管理方法、その記録媒体およびそのプログラム
JP2001216240A (ja) ネットワークシステムおよびネットワークシステムのデバイス情報登録方法および記憶媒体
CN113709210A (zh) 一种设备发现方法、装置、系统、电子设备及存储介质
CN115333951A (zh) 网络资产信息的生成方法、装置及电子设备

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070316

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070323

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070406

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110413

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130413

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130413

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140413

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees