JP6579935B2 - 管理装置、方法およびプログラム - Google Patents

管理装置、方法およびプログラム Download PDF

Info

Publication number
JP6579935B2
JP6579935B2 JP2015240578A JP2015240578A JP6579935B2 JP 6579935 B2 JP6579935 B2 JP 6579935B2 JP 2015240578 A JP2015240578 A JP 2015240578A JP 2015240578 A JP2015240578 A JP 2015240578A JP 6579935 B2 JP6579935 B2 JP 6579935B2
Authority
JP
Japan
Prior art keywords
address
request
network device
value
network
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.)
Active
Application number
JP2015240578A
Other languages
English (en)
Other versions
JP2017108289A (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 JP2015240578A priority Critical patent/JP6579935B2/ja
Priority to US15/371,046 priority patent/US10097502B2/en
Publication of JP2017108289A publication Critical patent/JP2017108289A/ja
Application granted granted Critical
Publication of JP6579935B2 publication Critical patent/JP6579935B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/66Layer 2 routing, e.g. in Ethernet based MAN's
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/686Types of network addresses using dual-stack hosts, e.g. in Internet protocol version 4 [IPv4]/Internet protocol version 6 [IPv6] networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Description

ネットワークに接続された装置を管理する技術に関する。
従来から、ネットワークに接続可能な画像処理装置や各種端末などを被管理装置としてネットワークを介して管理する管理装置が存在する。管理装置は、それら被管理装置の物理アドレス(MACアドレス)を識別子として管理を行う場合がある。MACアドレスを管理する場合、管理装置は被管理装置との通信に使用した論理アドレス(IPアドレス)を元にMACアドレスを取得することができる。
管理装置は、MACアドレスの取得において、SNMP(Simple Network Management Protocol)のMIB(Management Information Base)と呼ばれる管理情報で定義されたipAddrTableの要素(ipAdEntIfIndex)が利用できる。それによって、IPv4については、通信中のIPアドレスに対応するネットワークインターフェースのインデックス値が特定でき、MACアドレスを取得することが可能である。
ここで、被管理装置には複数のネットワークインターフェースを有する場合がある。特許文献1には、複数のネットワークインターフェースを有するMFPが、外部装置からのifTypeとインデックス値を指定したリクエストに応じて、いずれかのネットワークインターフェースに対応するMIB情報を応答する技術が開示されている。とくに、特許文献1では、MFPが、インデックスで特定値(1)を指定したリクエストを受付けた場合に、該リクエストで利用しているネットワークインターフェースのMIB情報を、当該特定の値に対応する情報として、応答する技術が開示されている。
なお、RFC4293で、IPv4並びにIPv6のIPアドレスのそれぞれについて、ネットワークインターフェースのインデックス値を管理するためのipAddressTableの1つの要素(ipAddressIfIndex)の定義が行われている。
特開2011−81433号公報
現状、ネットワーク上に存在する被管理装置は、有線、無線の通信に対応するため、複数のネットワークインターフェースを備えている場合がある。管理装置は、被管理装置を特定するための情報としてMACアドレスを用いる場合があるが、そのような場合は、被管理装置が通信に用いるネットワークインターフェースを特定したうえで、MACアドレスを取得することが求められる。
ここで、前述の特許文献1で開示される被管理装置であるMFPは、管理装置からの特定値(1)を指定したリクエストに対して、特定値に依らず、該リクエストで利用しているネットワークインターフェースのMIB情報を応答する。しかしながら、一般的な被管理装置は、管理装置から指定されたインデックスに対応するMIB情報を単に応答するものである。よって、より汎用的な多種の被管理装置を管理するために、被管理装置のそれぞれが通信に用いるネットワークインターフェースのMACアドレスを取得するためには、管理装置が該ネットワークインターフェースを予め特定する必要がある。
被管理装置はIPv4、IPv6の何れか任意のアドレスタイプで通信を行っている。また、現状のネットワーク上には、前述のipAddressIfIndexを含むMIBに対応した被管理装置と、未対応の被管理装置とが混在している。
そこで、本発明は、管理装置が、このような様々の被管理装置のそれぞれに対して、通信に用いられているネットワークインターフェースを適切に特定することができる手法を提供することを目的とする。
上記課題を解決するために、例えば本発明は、複数のネットワークインターフェースを備えるネットワーク機器と通信可能な管理装置であって、前記ネットワーク機器との通信で用いられている該ネットワーク機器のIPアドレスがIPv4のアドレスか、IPv6のアドレスかを判定する判定手段と、前記判定手段によりIPv4のアドレスであると判定された際に、前記ネットワーク機器でIPv4のIPアドレスに対応して管理されているネットワークインターフェースを識別するための値を取得するための要求を、前記ネットワーク機器のIPアドレスを指定して、当該ネットワーク機器に対して実行する第1の要求手段と、前記判定手段によりIPv6のアドレスであると判定された際に、前記ネットワーク機器でテーブルを用いて管理されたIPv4及びIPv6の複数のIPアドレスのそれぞれに対応する複数のネットワークインターフェースのそれぞれを識別するための複数の値を取得するための1以上の要求を、当該ネットワーク機器に対して実行する第2の要求手段と、前記第2の要求手段による要求に対する前記ネットワーク機器からの応答に含まれる、前記IPv6のIPアドレスに対応するネットワークインターフェースを識別するための値を特定する特定手段と、前記第1の要求手段による要求に対する前記ネットワーク機器からの応答に含まれる値、または、前記特定手段により特定された値を指定して、前記ネットワーク機器に対して、MACアドレスを取得するための要求を実行する第3の要求手段と、を有することを特徴とする。
本発明によれば、管理装置が、様々の被管理装置のそれぞれに対して、通信に用いられているネットワークインターフェースを適切に特定することができる。
本発明のネットワーク構成と各機器のハードウェア構成の例を示す図である。 本発明のソフトウェアモジュールの概念図である。 SNMPパケットの構造を示す図である。 管理装置101での処理全体を説明するためのフローチャートを示す図である。 IPv4におけるifIndexの値の選定処理を説明するためのフローチャートを示す。 IPv6におけるifIndexの値の選定処理を説明するためのフローチャートを示す。 1つのOIDに対する値を取得する際の処理を説明するためのフローチャートを示す。 複数のOIDに対する値を取得する際の処理を説明するためのフローチャートを示す。 実施例2における、IPv6におけるifIndexの値の選定処理を説明するためのフローチャートを示す。
以下、本発明を実施するための形態について図面を用いて説明する。
まず、図1を用いて本発明を実施するためのシステム全体の構成及び、各機器のハードウェア構成を説明する。図1の101は管理装置であり、102は被管理装置であり、103はネットワークである。管理装置101は、ネットワーク103を介して、被管理装置102を含む種々のネットワーク機器と通信可能である。被管理装置102は、印刷装置やネットワークカメラなどの画像処理装置、各種ネットワーク端末などである。また、不図示だが、管理装置101は、ネットワーク103を介して、複数の被管理装置102と通信し、管理可能である。
管理装置101は、内部にCPU201、メモリ202、HDD203、入力装置204、出力装置205、ネットワークインターフェースカード(NIC)206を有し、それぞれがバス207で接続されている。
CPU201は、HDD203に保存された本発明に係るプログラム及びデータをメモリ202にロードし、メモリ202にロードされたプログラムの実行を行う。入力装置204はユーザーからの入力を取得する。また出力装置205により、プログラムの操作に必要な情報の表示を行う。ネットワークインターフェース206はネットワーク103を介した通信を制御し、例えば被管理装置102から情報を取得するための信号の送信などを行う。
被管理装置102は、内部にCPU211、メモリ212、HDD213、入出力装置214、ネットワークインターフェース215を有し、それぞれがバス217で接続されている。
CPU211は、HDD213に保存された管理装置101からの情報取得要求に応答するためのプログラムをメモリ212にロードし、メモリ212にロードされたプログラムの実行を行う。被管理装置102にHDD213が装着されていない場合には、メモリ212がその役割を担う。ネットワークインターフェースカード(NIC)215は、ネットワーク103を介した通信を制御し、例えば管理装置102からの要求信号の受信及び応答信号の送信を行う。入出力装置214は、ユーザー入力を受けつける。また、入出力装置214は、ユーザーに示すための情報表示を行う。また、被管理装置102には、故障などのステータスを監視するための各種センサ(不図示)を備えるものとする。さらに、被管理装置102が画像処理装置である場合には、画像処理用のエンジン(印刷部、撮影部など)や、エンジンコントローラーを、ハードウェアとして備えるものとする。
なお、被管理装置102は、有線LAN接続と無線LAN接続などのために、複数のNIC215(以降、ネットワークインターフェースとも呼ぶ)を有する場合がある。さらに、物理的にはネットワークインターフェースが1つであっても、自装置に対して通信するための仮想的なネットワークインターフェースが存在する場合もある。被管理装置102が複数のネットワークインターフェースを有している場合に、ネットワーク103とは別のネットワーク104に接続する場合もある。
図2は、本発明を実施するためのソフトウェアモジュールの概念図である。本図で例示する各モジュールは、概念的なものであって、管理装置101、被管理装置102で本発明に係るプログラムを実行した際の処理の主体としている。
管理装置101は、データ格納部301と、取得部302、判定部303、及びUI制御部304で構成される。
データ格納部301は、メモリ202もしくはHDD203といった格納領域に対して、被管理装置102から取得したデータなどを格納する。例えば、表1に示すデバイスリストのような1つ以上の被管理装置102のデータを格納する。表1に示すように、MACアドレスなどが未取得である機器も管理することができる。
Figure 0006579935

取得部302は、被管理装置102から、多種のプロトコルにより情報を取得するためのモジュールである。例えば、SNMPを利用した情報取得では、SNMPに準拠した取得要求のパケットを生成し、ネットワークインターフェース206を介してパケットの送信を行う。また、取得部302は、ネットワークインターフェース206を介して、被管理装置102から応答パケットを受信し、パケットからデータを取り出す。
判定部303は、取得部302が取得したデータに基づく判定処理を実行する。例えば、判定部303は、IPアドレスに対応するMACアドレスを特定するための判定処理を実行する。この判定結果は、データ格納部301によりメモリ202もしくはHDD203といった格納領域に対して格納される。UI制御部304は、出力装置205に表示する情報を生成する。また、UI制御部304は、入力装置204での入力情報を取得する。
被管理装置102は、データ格納部311、応答部312、UI制御部313で構成される。
データ格納部311は、被管理装置102に固有のデータなどの格納の制御を行う。被管理装置102は、MIBでデータを管理している。応答部312は、格納されたデータを元に管理装置101からの取得要求に対する応答パケットを生成し、複数のネットワークインターフェースのいずれかを用いた該応答パケットの送信を行う。UI制御部313は、入出力装置214で表示する画面の生成及びユーザー入力情報の取得を行う。
SNMPは、ネットワーク機器の情報の管理、取得などが可能なプロトコルである。具体的には、被管理装置102を含むネットワーク機器内のMIBと呼ばれる管理情報の集合に対して、オブジェクト識別子(OID)と呼ばれるツリー構造の識別子を指定してアクセスすることができる。
図3は、取得部302が送受信するパケットの構造の例である。
401は、SNMPのバージョンを示し、SNMPのバージョン1の場合には値は0である。402は、コミュニティ名であり、管理装置101からの送信パケットに含まれるコミュニティ名402と被管理装置102が有するコミュニティ名が一致する場合にのみ、被管理装置102は管理装置101に応答を返す。
403は、PDUタイプと呼ばれる値であり、取得か応答かによって値が異なる。また、取得の場合にも、GetRequest(0xA0)またはGetNextRequest(0xA1)がある。PDUタイプ403には、パケットで指定したOIDに対する値を取得する場合には0xA0で、指定したOIDの次のOIDの値を取得する場合には0xA1が設定される。応答の場合にはPDUタイプ403は0xA2である。
404は、要求毎に取得部302が生成する識別子であり、要求とその応答については同じ値をとる。405は、エラー情報であり、取得のパケットでは空であり、応答のパケットでエラーを示す場合にはエラー情報の値が入る。406は、オブジェクト識別子(OID)であり、407は、OIDに対する値である。取得要求パケットではOIDに対する値407は空で、応答パケットでは被管理装置102の応答部312が値407に、被管理装置102の対応するデータを挿入する。取得要求パケットにおいて、OID406を複数指定することが可能である。
例えば、取得要求で、PDUタイプ403に0xA1(GetNextRequest)を、OID406にifTypeに対応する”1.3.6.1.2.1.2.2.1.3”を指定すると、その応答としてOID406が”1.3.6.1.2.1.2.2.1.3.1”である値407がネットワーク機器から取得できる。さらに、取得要求で、PDUタイプ403に0xA1(GetNextRequest)を、OID406に”1.3.6.1.2.1.2.2.1.3.1”を指定すると、その応答としてOID406が“1.3.6.1.2.1.2.2.1.3.2” である値407がネットワーク機器から取得できる。
図4は、管理装置101での処理を説明するためのフローチャートである。図4で示す処理は、管理装置101のCPU201が本発明に係るプログラムを実行することで実現される。
被管理装置102には、1つ以上のネットワークインターフェース215があり、ネットワークインターフェース毎にMACアドレスが割り振られている。管理装置101は、図4で示す処理で通信中のIPアドレスに対応するいずれかのネットワークインターフェースのMACアドレスを特定する。
管理装置101は、被管理装置102のIPアドレスをデバイスリストとして格納し、管理しているものとする。デバイスリストでは、MACアドレスが未だ不明な被管理装置102の情報も管理されることになる。なお、UI制御部304が提供する画面を介してユーザーが入力したIPアドレスを取り出し、デバイスリストに対して格納してもよい。
まず、S101において、取得部302は、デバイスリストからIPアドレスを取り出す。ここでは、通信中の被管理装置102との該通信で利用されているIPアドレスが、通信パケットなど該通信で用いたデータ内から、取り出されているものとする。
S102において、取得部302は、S101で取り出したIPアドレスがIPv6アドレスか否かの判定を行う。IPv4アドレスかIPv6アドレスかの判定は以下のデータ長、データ形式の違いにより行う。IPv4アドレスは32ビット長であり、8ビットごとにピリオドで区切り10進数で表記する。また、IPv6アドレスは128ビットであり、16ビットごとにコロンで区切り16進数で表記するという規則がある。なお、IPv6アドレスの表記として、コロンで区切られた部分がすべて0となり、前記の条件を満たす部分が2回以上連続する場合には、コロンを2つ続けて表記することで省略が可能である。しかし、データ長で判断する場合には、IPv6アドレスを省略しない表示形式で判断を行う。
S102で、IPv6アドレスと判定された場合にはS104に進む。そして、S102で、IPv6アドレスと判定されなかった場合、つまりIPv4アドレスと判断された場合にはS103に進む。S103での処理の詳細は、図5を用いて後述する。また、S104での処理の詳細は、図6を用いて後述する。
ここで、図6では、判定処理に、ipAddressTableの1つの要素であるipAddressIfIndexを利用する。ipAddressIfIndexは、IPv4並びにIPv6のIPアドレスのそれぞれについて、ネットワークインターフェースのインデックス値に係る定義が存在する。しかしながら、監視対象となる被管理装置の中には、比較的新しいMIBの定義であるipAddressIfIndexに対応していない機器も存在する。そこで、本実施例においては、S102でIPv4アドレスと判断された場合には、後述の図5で示すようなipAddrTableの1つの要素であるipAdEntIfIndexを利用した判定処理を行うこととする。従って、監視対象が予め新しいMIBに対応している機種のみが存在しているとわかっている場合など、特定の条件においては、S101で取り出したIPアドレスがIPv4アドレスであろうとIPv6アドレスであろうと、図6に示すipAddressIfIndexを利用する判定処理を実行することも可能である。
S103及びS104では、S101で取り出したIPアドレスに対応するネットワークインターフェースに関する値、つまり、MIBのifIndexの値が選定される。
ここで、“ifIndex”の値は、被管理装置102の1つ以上のネットワークインターフェースのそれぞれに対して割り当てられる固有の値となっている。ifIndexは、表2で示すMIBの一部であるifTableのインデックス値でもある。ifTableはifType, ifDescr, ifPhysAddressなどの要素を含む。ifTableは各被管理装置102で、記憶、管理されている。
Figure 0006579935

S105で、判定部303は、S103とS104でifIndexの値の取得に成功したか否かを判断する。ここで、取得に成功していた場合にはS106に進み、失敗していた場合にはS108に進む。S106では、ifIndexの値を用いたMACアドレスの取得処理が行われる。MACアドレスの取得処理の詳細は、図7を用いて、後述する。
S107で、判定部303は、S106でMACアドレスを取得できたか否かを判定する。ここで、取得できたと判定した場合にはS109に進み、取得できなかったと判定した場合にはS108に進む。S108では、データ格納部301は、デバイスリスト内のS101で取り出したIPアドレスに対応するMACアドレスの空き領域の範囲でランダムな値もしくはシーケンシャルな値としてMACアドレスを生成する。S109では、データ格納部301は、デバイスリストにMACアドレスの書き込みを行う。
図5を用いて、前述のS103に係る処理の詳細を説明する。本処理は、IPv4におけるifIndexの値を選定するための処理を示している。
S201で、取得部302は、S101で取り出したIPアドレスを指定して、ipAddrTableに対してifIndexの値を取得するためのパケットの生成を行う。ipAddrTable(表3)は、被管理装置102で管理されたMIBの一部の情報を含むデータテーブルである。ここで生成されるパケットにおいてipAdEntAddrでIPアドレスを指定して、対応するipAdEntIfIndexの値を取得することができる。ここで、ipAdEntIfIndexの値は、ifIndexと同値である。S201での値の取得処理の流れは、図7のフローチャートを用いて後述する。
Figure 0006579935

S202で、判定部303は、S201でipAdEntIfIndexの値を取得できたか否かを判定する。ipAdEntIfIndexの値を取得できたと判定された場合にはS203に進み、取得失敗していた場合にはS204に進む。
S203で、判定部303は、ipAdEntIfIndexの値を、ifIndexの値として選定する。そして、ifIndexの値の取得に成功したとして、図4に示すS105の処理に進む。
S204で、取得部302は、例えばhrDeviceIDなどのOID406を指定して、被管理装置102の機種情報の取得処理を実行する。S204での値の取得処理の流れは、図7のフローチャートを用いて後述する。
S205で、判定部303は、S204での処理の結果、機種情報を取得できたか否かを判定する。機種情報が取得できた場合にはS206に進み、取得できなかった場合にはS208に進む。S206で、判定部303は、S204で取得した機種情報が、予め管理装置101で管理された特定の機種を示すか否かを判定する。ここで、特定の機種であると判定された場合にはS207に進み、特定の機種ではないと判定された場合にはS208に進む。S207では、判定部303は、ifIndexを“1”として選定する。そして、ifIndexの値の取得に成功したとして、図4に示すS105の処理に進む。
なお、特定の機種とは、例外的に用いる登録情報であって、事前に管理装置101と通信するインターフェースに対応するインデックス値をデフォルトで“1”としている被管理装置の種類を示すものである。ただし、この種の被管理装置もプラットフォームや管理設定の変更など、様々な要因で変更され得るため、本実施例においては、特定の機種の情報を例外的に用いるものとしている。
S208で、取得部302は、ifTypeの値を取得する処理を行う。S208での取得処理の流れは、図8のフローチャートを用いて後述する。S209で、判定部303は、ifTypeの取得に成功したか否かを判定する。ここで、取得に成功したと判定した場合にはS210に進む。S209で取得に失敗したと判定した場合は、ifIndexの値の取得に失敗したとして、図4に示すS105の処理に進む。
S210で、取得部302は、取得した複数のifTypeの値から、“softwareLoopback(24)”以外の先頭の値(ループバックアドレスに対応する値)を、ifIndexの値として選定する。そして、ifIndexの値の取得に成功したとして、図4に示すS105の処理に進む。なお、S210では、ifTypeがethernetCsmacd(6)である値を、ifIndexの値とする場合としてもよい。この値は、イーサネット(登録商標)接続のネットワークインターフェースを識別するための値を示す。
図6を用いて、前述のS104に係る処理の詳細を説明する。本処理は、IPv6におけるifIndexの値を選定するための処理を示している。
被管理装置102では、表4で示すMIBの一部であるipAddressTableが記憶、管理されている。このテーブルに対して、ipAddressAddrTypeとipAddressAddrを指定することで、ipAddressIfIndexを取得することができる。さらにipAddressIfIndexの値は、ifIndexと同値であり、このifIndexを用いてMACアドレスを取得することができる。このテーブルは、IPv4、IPv6の双方のアドレスに対応している。ipAddressIfIndexは、“ipAddressIfIndex.ipAddressAddrType.ipAddressPrefix.(IPアドレス)“という形式のOIDになっている。また、”ipAddressPrefix.“は省略可能である。
Figure 0006579935

S301で、取得部302は、ipAddressTableの各要素(ipAddressIfIndex)の値を取得するためのパケットの生成を行い、取得要求として該パケットの送信を行う。S301での値の取得処理の流れは、図8のフローチャートを用いて後述する。
S302では、取得部302は、1以上のipAddressIfIndexの値が取得できたか否かの判定を行う。ipAddressIfIndexの値を取得できたと判定した場合にはS303に進み、取得できなかったと判定した場合にはS309に移行する。S309、S310、S311の処理は、前述したS208〜S210と同様の処理であり、その説明は省略する。
S303において、判定部303は、S301で取得された情報から、N個目のOIDとその値を取り出す。このときNの初期値は1である。S301で取得された情報に、前述の表4の各行で示す1以上のOIDとその値が含まれている。
S304で、判定部303は、S303で取り出された情報が示すアドレスタイプがIPv6アドレスであるか否かを判定する。具体的には、OIDに含まれるipAddressAddrTypeの値が“2”である場合にはIPv6アドレスであることを意味する。S304の判定の結果で2と判定した場合には、S312に移行する。アドレスタイプがIPv6アドレスである場合にはS305に進み、IPv6アドレスでない場合にはS312に進む。
S305で、判定部303は、S303で取り出された情報が示すIPアドレスが、前述のS101で取り出した通信中のIPアドレスと一致するか否かを判定する。ここでは、前述したipAddressIfIndexのOID(ipAddressIfIndex.ipAddressAddrType.ipAddressPrefix.(IPアドレス)“)における、(IPアドレス)部分と、前述のS101で取り出した通信中のIPアドレスとが比較される。なお、”ipAddressPrefix.“部分は省略可能なので、ipAddressAddrType.以降のデータサイズが16バイトより大きいか否かをチェックすることで、IPアドレス部分を特定してもよい。S305の判定の結果、一致すると判定した場合にはS306に進み、一致しないと判定された場合にはS307に進む。
S306で、判定部303は、S303で取り出された情報のipAddressIfIndexの値を、ifIndexの値として選定する。この処理により、通信中のアドレスに対応するifIndexの値の特定が行われることになる。そして、ifIndexの値の取得に成功したとして、図4に示すS105の処理に進む。
S307で、判定部303は、S301で取得された情報に含まれる全行を処理したか否かを判定する。S312で全て処理したと判定した場合には、取得失敗として、図4に示すS105の処理に進む。全て処理していないと判定した場合にはS308に移行する。S308で、判定部303は、Nを1だけカウントアップして、S303に戻る。
図7は、1つのOID406の指定に対する値407を取得する際の処理を説明するためのフローチャートを示す。この処理は、前述したS106のMACアドレス取得処理や、前述したS201のipAdEntIfIndexの値の取得処理、前述したS204の機種情報の取得処理などに対応する。
S401で、取得部302は、1つのOIDを指定して、所望の値を取得するための送信パケットの生成を行い、該パケットを送信することで被管理装置102に対して取得要求を行う。S106のMACアドレス取得処理では、OID406として、S103とS104で取得に成功したifIndexの値が指定される。具体的には、ifTableのifPhysAddressの値を取得するために、“1.3.6.1.2.1.2.2.1.6.(ifIndexの値)”といった指定が行われる。また、S201のipAdEntIfIndexの値の取得処理では、OID406として、通信中のIPアドレスが指定される。具体的には、“1.3.6.1.2.1.4.20.2.(IPアドレス)”といった指定が行われる。
S402において、取得部302は、被管理装置102から応答があったか否かを判断する。被管理装置102からの応答の待ち時間は、予め設定された時間である。S402で応答があったと判断した場合にはS403に進み、無かった場合にはS404に進む。
S403で、取得部302は、被管理装置102から受信した応答パケットにエラー情報が含まれるか否かを判定し、エラー情報が含まれると判定した場合には取得失敗として処理を終了する。S403で、エラー情報が含まれない判定した場合には、取得成功として、処理を終了する。ここでは、前述したS106から本処理が実行された場合にはMACアドレスが取得され、前述したS201から本処理が実行された場合にはipAdEntIfIndexの値が取得されたことになる。
S404で、取得部302は、S401での取得要求を一定回数以上、繰り返して実行したかを判定する。ここで、一定回数以上実行したと判定した場合には、取得失敗として、処理を終了する。一定回数以上実行していないと判定した場合には、S405に進む。S405では、取得要求の処理回数のカウントを1つ増やし、S406に進む。S406では、規定の一定時間だけ待機して、S401に処理を戻す。
図8は、複数のOIDに対する値を取得する際の処理を説明するためのフローチャートを示す。前述のS208及びS309でのifTypeの値の取得処理や、S301でのipAdEntIfIndexの値の取得処理として、実行される処理である。ともに、テーブル構造になった複数のOIDの値を、GetNextRequestを繰り返すことで、取得することになる。
前述したように、ifTypeの値を取得する際には、OID406にifTypeに対応する”1.3.6.1.2.1.2.2.1.3”を指定してGetNextRequestを実行して、被管理装置102からの応答により、1つ目のインデックス値を取得する。さらに、それ以降は、応答に含まれるインデックスを指定したGetNextRequestを繰り返し実行することで、被管理装置102から複数のifTypeのインデックス値を取得する。ipAdEntIfIndexの値の取得処理についても、同様の処理が実行される。
S501〜S506の処理については、図7のS401〜S406と同様のためその説明を省略する。
S507で、取得部302は、取得対象のOIDについてすべての取得処理が終了したかを判定する。例えば、ifTypeのようなテーブル構造の複数のOIDの値を取得している際には、上述のGetNextRequestの応答として“1.3.6.1.2.1.2.2.1.3.x”(xは自然数)以外の値が応答された場合には、該応答より前までの応答で、ifTypeに該当する全てのOIDの値の取得が終了したことを判断できる。S507で、すべての取得が終了したと判定した場合には、取得成功として、図5や図6における次の処理に進む。S507で、すべての値の取得が終了していないと判断した場合にはS508に進む。
S508で、取得部302は、S505でカウントされていた処理回数をリセットする。S509で、取得部302は、前述したように、次の取得すべきOIDの値を取得するために、直前の被管理装置102からの応答に含まれるインデックスを指定する。その後、S501に戻り、該指定に従うGetNextRequestのパケットが生成され、取得要求として被管理装置102に送信される。
(実施例2)
実施例2は、実施例1の図6を用いて説明した処理の変形例を、図9を用いて説明する。本実施例と実施例1との相違点は、図6の処理に代わって図9で示す処理が実行されるだけである。実施例1と同様の部分については、その説明は省略する。
図9は、IPv6におけるifIndexの値の選定処理を説明するためのフローチャートを示す。図6と同様の処理については、同じ符号を付与している。また、処理内容は同じため、ここでの説明は省略する。
S601において、取得部302は、ipAddressAddrTypeにIPv6を示す値(2)、ipAddressAddrにS101で取得した通信中のIPアドレスを指定したipAddressIfIndexの値の取得処理を実行する。ここでは、該指定により、ipAddressIfIndexの値が1つに特定されることになる。なお、この取得処理の詳細は、図7のフローチャートに従う。
図9の処理の場合には、図6と比べて、S303〜S305、S307〜S308の処理が省略されることになる。ただし、前述したように、被管理装置102の実装によっては、ipAddressIfIndexについては、”ipAddressPrefix.“の部分が省略可能である。よって、S601では、取得要求の対象となった被管理装置102の実装で”ipAddressPrefix.“の部分が省略されている場合には、図7のS403でエラーと判断される可能性がある。
したがって、被管理装置102の実装に依存せずにipAddressIfIndexを利用して、通信中のネットワークインターフェースを示すifIndexの値の選定するためには、図6で説明した処理を実行する必要がある。
(他の実施例)
本発明は、上述した実施形態を適宜組み合わせることにより構成された装置あるいはシステムやその方法も含まれるものとする。
ここで、本発明は、上述した実施形態の機能を実現する1以上のソフトウェア(プログラム)を実行する主体となる装置あるいはシステムである。また、その装置あるいはシステムで実行される上述した実施形態を実現するための方法も本発明の一つである。また、そのプログラムは、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給され、そのシステム或いは装置の1以上のコンピュータ(CPUやMPU等)によりそのプログラムが読み出され、実行される。つまり、本発明の一つとして、さらにそのプログラム自体、あるいは該プログラムを格納したコンピュータにより読み取り可能な各種記憶媒体も含むものとする。また、上述した実施形態の機能を実現する回路(例えば、ASIC)によっても、本発明は実現可能である。
101 管理装置
102 被管理装置
103 ネットワーク

Claims (4)

  1. 複数のネットワークインターフェースを備えるネットワーク機器と通信可能な管理装置であって、
    前記ネットワーク機器との通信で用いられている該ネットワーク機器のIPアドレスがIPv4のアドレスか、IPv6のアドレスかを判定する判定手段と、
    前記判定手段によりIPv4のアドレスであると判定された際に、前記ネットワーク機器でIPv4のIPアドレスに対応して管理されているネットワークインターフェースを識別するための値を取得するための要求を、前記ネットワーク機器のIPアドレスを指定して、当該ネットワーク機器に対して実行する第1の要求手段と、
    前記判定手段によりIPv6のアドレスであると判定された際に、前記ネットワーク機器でテーブルを用いて管理されたIPv4及びIPv6の複数のIPアドレスのそれぞれに対応する複数のネットワークインターフェースのそれぞれを識別するための複数の値を取得するための1以上の要求を、当該ネットワーク機器に対して実行する第2の要求手段と、
    前記第2の要求手段による要求に対する前記ネットワーク機器からの応答に含まれる、前記IPv6のIPアドレスに対応するネットワークインターフェースを識別するための値を特定する特定手段と、
    前記第1の要求手段による要求に対する前記ネットワーク機器からの応答に含まれる値、または、前記特定手段により特定された値を指定して、前記ネットワーク機器に対して、MACアドレスを取得するための要求を実行する第3の要求手段と、を有することを特徴とする管理装置。
  2. 前記第1の要求手段による要求、または前記第2の要求手段による要求で、前記ネットワーク機器からネットワークインターフェースを識別するための値を取得できなかった場合に、前記ネットワーク機器の複数のネットワークインターフェースのそれぞれを識別するための複数の値を取得するための複数の要求を、当該ネットワーク機器に対して実行する第4の要求手段と、を有し、
    前記特定手段は、前記第4の要求手段による要求に対する前記ネットワーク機器からの応答に含まれる複数の値の中から、ループバックアドレスに対応する値を除くいずれかの値を特定することを特徴とする請求項1に記載の管理装置。
  3. 複数のネットワークインターフェースを備えるネットワーク機器との通信で用いられている該ネットワーク機器のIPアドレスがIPv4のアドレスか、IPv6のアドレスかを判定する判定手段と、
    前記判定手段によりIPv4のアドレスであると判定された際に、前記ネットワーク機器でIPv4のIPアドレスに対応して管理されているネットワークインターフェースを識別するための値を取得するための要求を、前記ネットワーク機器のIPアドレスを指定して、当該ネットワーク機器に対して実行する第1の要求手段と、
    前記判定手段によりIPv6のアドレスであると判定された際に、前記ネットワーク機器でテーブルを用いて管理されたIPv4及びIPv6の複数のIPアドレスのそれぞれに対応する複数のネットワークインターフェースのそれぞれを識別するための複数の値を取得するための1以上の要求を、当該ネットワーク機器に対して実行する第2の要求手段と、
    前記第2の要求手段による要求に対する前記ネットワーク機器からの応答に含まれる、前記IPv6のIPアドレスに対応するネットワークインターフェースを識別するための値を特定する特定手段と、
    前記第1の要求手段による要求に対する前記ネットワーク機器からの応答に含まれる値、または、前記特定手段により特定された値を指定して、前記ネットワーク機器に対して、MACアドレスを取得するための要求を実行する第3の要求手段、
    としてコンピュータを機能させるためのプログラム。
  4. 複数のネットワークインターフェースを備えるネットワーク機器と通信可能な管理装置における方法であって、
    前記ネットワーク機器との通信で用いられている該ネットワーク機器のIPアドレスがIPv4のアドレスか、IPv6のアドレスかを判定する判定工程と、
    前記判定工程でIPv4のアドレスであると判定された際に、前記ネットワーク機器でIPv4のIPアドレスに対応して管理されているネットワークインターフェースを識別するための値を取得するための要求を、前記ネットワーク機器のIPアドレスを指定して、当該ネットワーク機器に対して実行する第1の要求工程と、
    前記判定工程でIPv6のアドレスであると判定された際に、前記ネットワーク機器でテーブルを用いて管理されたIPv4及びIPv6の複数のIPアドレスのそれぞれに対応する複数のネットワークインターフェースのそれぞれを識別するための複数の値を取得するための1以上の要求を、当該ネットワーク機器に対して実行する第2の要求工程と、
    前記第2の要求工程での要求に対する前記ネットワーク機器からの応答に含まれる、前記IPv6のIPアドレスに対応するネットワークインターフェースを識別するための値を特定する特定工程と、
    前記第1の要求工程での要求に対する前記ネットワーク機器からの応答に含まれる値、または、前記特定工程で特定された値を指定して、前記ネットワーク機器に対して、MACアドレスを取得するための要求を実行する第3の要求工程と、を有することを特徴とする方法。
JP2015240578A 2015-12-09 2015-12-09 管理装置、方法およびプログラム Active JP6579935B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015240578A JP6579935B2 (ja) 2015-12-09 2015-12-09 管理装置、方法およびプログラム
US15/371,046 US10097502B2 (en) 2015-12-09 2016-12-06 Management apparatus, method, and storage medium for specifying a network interface used for communication with respect to each of various network devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015240578A JP6579935B2 (ja) 2015-12-09 2015-12-09 管理装置、方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2017108289A JP2017108289A (ja) 2017-06-15
JP6579935B2 true JP6579935B2 (ja) 2019-09-25

Family

ID=59021026

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015240578A Active JP6579935B2 (ja) 2015-12-09 2015-12-09 管理装置、方法およびプログラム

Country Status (2)

Country Link
US (1) US10097502B2 (ja)
JP (1) JP6579935B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10708158B2 (en) * 2015-04-10 2020-07-07 Hewlett Packard Enterprise Development Lp Network address of a computing device

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004135108A (ja) * 2002-10-11 2004-04-30 Canon Inc 通信制御方法、通信端末、ルータ、通信端末の制御プログラム、およびルータの制御プログラム
US8984141B2 (en) * 2004-05-20 2015-03-17 Freebit Co., Ltd. Server for routing connection to client device
US7941512B2 (en) * 2004-12-13 2011-05-10 Cisco Technology, Inc. Use of IPv6 in access networks
JP5383415B2 (ja) 2009-10-02 2014-01-08 キヤノン株式会社 通信装置及び通信装置の通信方法並びにプログラム
US8769156B2 (en) * 2009-12-23 2014-07-01 Citrix Systems, Inc. Systems and methods for maintaining transparent end to end cache redirection
US9515999B2 (en) * 2011-12-21 2016-12-06 Ssh Communications Security Oyj Automated access, key, certificate, and credential management
US9973468B2 (en) * 2012-06-15 2018-05-15 Citrix Systems, Inc. Systems and methods for address resolution protocol (ARP) resolution over a link aggregation of a cluster channel
JP2015043565A (ja) * 2013-07-22 2015-03-05 富士電機株式会社 通信装置、通信システムおよびプログラム
US9241044B2 (en) * 2013-08-28 2016-01-19 Hola Networks, Ltd. System and method for improving internet communication by using intermediate nodes
US9565098B2 (en) * 2015-05-27 2017-02-07 Arista Netwroks, Inc. Method and system for implementing border gateway protocol on network devices

Also Published As

Publication number Publication date
US20170171145A1 (en) 2017-06-15
JP2017108289A (ja) 2017-06-15
US10097502B2 (en) 2018-10-09

Similar Documents

Publication Publication Date Title
US8045485B2 (en) Monitoring technique of a device connected to a network
JP5691761B2 (ja) 管理装置、管理方法、プログラムおよび記録媒体
JP5865221B2 (ja) センサデータ収集システム及びゲートウェイ制御方法
US9712487B2 (en) Communication apparatus and method of controlling same
US20210336924A1 (en) Device management apparatus, device management system, and device management method
JP5607355B2 (ja) 情報処理装置及び情報処理装置の制御方法
JP6579935B2 (ja) 管理装置、方法およびプログラム
CN112311585A (zh) 选择管理节点的方法和装置、设备及其存储介质
JP6827840B2 (ja) 管理システム、管理方法およびプログラム
CN112714010A (zh) 一种网络拓扑管理方法、装置、拓展单元及存储介质
JP2008053773A (ja) 端末装置または中継機器、及びプログラム
US20140344432A1 (en) Image forming apparatus, image forming method, and non-transitory computer readable medium
EP2938143A1 (en) Control device and communication system
CN104935679B (zh) 信息处理装置和信息处理方法
JP2011114805A (ja) 通信装置及び方法、並びにプログラム
CN108769293A (zh) 一种ip地址解析方法及相关装置
JP7463458B2 (ja) 設定情報提供装置、設定情報提供方法、及びプログラム
JP6435987B2 (ja) 通信装置、通信システム、および、通信方法
JP2011228883A (ja) ネットワーク監視装置、ネットワーク監視方法およびプログラム
JP2020177408A (ja) 通信装置、通信方法及びプログラム
JP2016224732A (ja) 情報処理装置、情報処理方法、及びプログラム
JP2015109108A (ja) 管理装置、管理方法、プログラムおよび記録媒体
US11088894B2 (en) Communication apparatus, communication method, and storage medium
JP6213009B2 (ja) ネットワーク装置及びプログラム
JP2004021525A (ja) ネットワークサーバへの負荷テストシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181129

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: 20190730

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190827

R151 Written notification of patent or utility model registration

Ref document number: 6579935

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151