1

私は net-snmp と agentx を使用しています。スカラーとテーブルのエンタープライズ OID を登録する必要があります。例えば:

netsnmp_register_read_only_scalar(...); // register my scalars
netsnmp_tdata_register(...); // register my table

私のagentxコードでこれらの呼び出しを行うまで、私のOIDはsnmpdに表示されません。

私の MIB ファイルには、次のような NOTIFICATION-TYPE 定義もあります。

myTrapTest NOTIFICATION-TYPE
    STATUS          current
    DESCRIPTION     "A sample trap."
    ::= { myNotifications 1 }

調べてみまし#include <net-snmp/agent/agent_trap.h>たが、このファイルはトラップの送信に関するもので、カスタム トラップの登録に関するものではないようです。

私の質問: トラップ定義を登録するには、何を呼び出しますか?

4

1 に答える 1

0

トラップに登録は必要ありません。NET-SNMP メーリング リストで質問したところ、次のような回答がありました。

特定の OID が取得/設定されたときに、どのサブエージェントを呼び出し/呼び出すか (あなたと他の人) をマスターエージェントが認識できるように、変数/テーブルを「登録」する必要がありますが...

トラップ定義を「登録」する必要はありません。(正しく構成された) 通知 (agentx-Notify-PDU) を「送信」するだけで済みます。

(出典: http://permalink.gmane.org/gmane.network.net-snmp.user/35320 )

于 2012-07-19T14:06:31.383 に答える