ITエンジニアの技術メモ

神奈川在住のITエンジニアの備忘録です。主にプログラミング(Perl, Java など)やネットワーク技術について、仕事などを通じて学んだことを自分の中で整理するためにゆるゆると書いています。誰かのご参考になれば幸いです。

SNMP Report PDU が使われる場面

先日、SNMP report - ITエンジニアの技術メモ にて、「SNMP Report はあまり見たことがない」と書いたが、最近、SNMP Report が使われる場面を見つけたのでメモしておく。

 

https://www.ietf.org/rfc/rfc2574.txt に以下の記載がある。

4. Discovery

The User-based Security Model requires that a discovery process
obtains sufficient information about other SNMP engines in order to
communicate with them. Discovery requires an non-authoritative SNMP
engine to learn the authoritative SNMP engine's snmpEngineID value
before communication may proceed. ★This may be accomplished by
generating a Request message with a securityLevel of noAuthNoPriv, a
msgUserName of zero-length, a msgAuthoritativeEngineID value of zero
length, and the varBindList left empty. The response to this message
will be a Report message containing the snmpEngineID of the
authoritative SNMP engine as the value of the
msgAuthoritativeEngineID field within the msgSecurityParameters
field. It contains a Report PDU with the usmStatsUnknownEngineIDs
counter in the varBindList.

・・・

これによると、SNMPマネージャが (SNMPv3)エージェントに空のリクエストを投げる。それに対して、エージェントが SNMP Report に自分のエンジンIDを含めて応答する。これでSNMPマネージャはエージェントのエンジンIDを知ることができ、SNMPv3通信を開始すると読める。

つまり、SNMP Report は、SNMPマネージャがSNMPv3エージェントのエンジンIDを知る目的で使用されることがある。

 

以下も参考にさせて頂きました。

SNMP v3 の engineID とかのメモ - ngyukiの日記