SNMPプロトコル操作
「実践SNMP教科書」の第4章の復刻版です。
SNMPv1 PDU
RFC1157-SNMP DEFINITIONS ::= BEGIN
IMPORTS
ObjectName, ObjectSyntax, NetworkAddress, IpAddress, TimeTicks
FROM RFC1155-SMI;
-- SNMPメッセージの定義を省略
-- PDU
PDUs ::=
CHOICE {
get-request
GetRequest-PDU,
get-next-request
GetNextRequest-PDU,
get-response
GetResponse-PDU,
set-request
SetRequest-PDU,
trap
Trap-PDU
}
-- PDUs
GetRequest-PDU ::=
[0]
IMPLICIT PDU
GetNextRequest-PDU ::=
[1]
IMPLICIT PDU
GetResponse-PDU ::=
[2]
IMPLICIT PDU
SetRequest-PDU ::=
[3]
IMPLICIT PDU
PDU ::=
SEQUENCE {
request-id
INTEGER,
error-status -- 無効な場合ある
INTEGER {
noError(0),
tooBig(1),
noSuchName(2),
badValue(3),
readOnly(4),
genErr(5)
},
error-index -- 無効な場合がある。
INTEGER,
variable-bindings -- 値は無効な場合がある
VarBindList
}
Trap-PDU ::=
[4]
IMPLICIT SEQUENCE {
enterprise -- TRAP送信するオブジェクトの識別子
OBJECT IDENTIFIER,
agent-addr -- TRAP送信者のアドレス
NetworkAddress,
generic-trap -- 一般TRAP番号
INTEGER {
coldStart(0),
warmStart(1),
linkDown(2),
linkUp(3),
authenticationFailure(4),
egpNeighborLoss(5),
enterpriseSpecific(6)
},
specific-trap -- 拡張TRAP番号
INTEGER, -- 拡張TRAPでなくても存在
time-stamp -- ノードが(再)起動されてから
TimeTicks, -- TRAPを送信するまでの
-- 経過時間
variable-bindings -- "興味深い" 情報
VarBindList
}
-- 管理情報
VarBind ::=
SEQUENCE {
name
ObjectName,
value
ObjectSyntax
}
VarBindList ::=
SEQUENCE OF
VarBind
SNMPv2 PDU
ここから先は
18,741字
/
11画像
SNMPの仕様について解説した本やサイトは、沢山あると思います。
独自の拡張MIBを自分で設計してMIBファイルやエージェントを作る方法を解説した教科書はないと思います。
実践SNMP教科書 復刻版
500円
20年近く前に書いた「実践SNMP教科書」を現在でも通用する部分だけ書き直して復刻するマガジンです。最近MIBの設計で困っている人に遭遇し…
開発のための諸経費(機材、Appleの開発者、サーバー運用)に利用します。 ソフトウェアのマニュアルをnoteの記事で提供しています。 サポートによりnoteの運営にも貢献できるのでよろしくお願います。