EN JA
BSNMPD(1)
BSNMPD(1) FreeBSD General Commands Manual BSNMPD(1)

名称

bsnmpdシンプルで拡張性のある SNMP デーモン

書式

bsnmpd [ -dh][ -c file][ -D options][ -e file][ -I paths][ -l prefix][ -m variable[ = value]][ -p file]

解説

bsnmpd デーモンは、インターネット SNMP (Simple Network Management Protocol) に役立ちます。それは、最も基本的な MIB だけの役目をすることを目的として、ローダブルモジュールを通して他のすべての MIB を実装しています。このように、予期しない方法で bsnmpd を使用することができます。

オプションは、次の通りです:

-d
デーモン化しません。デバッグに使用されます。
-h
短い使用法のメッセージを印刷します。
-c file
標準のファイルの代わりに設定ファイルとして file を使用します。
-D options
デバッグオプションは、オプションのコンマで区切られた文字列が続く -o フラグで指定されます。次のオプションが利用可能です。
dump
すべての送信と受信の PDU を端末にダンプします。
events
イベントライブラリ ( eventlib(3) 参照) のデバッグレベルを 10 に設定します。
trace = level
snmp ライブラリトレースフラグを指定された値に設定します。
この値は、通常の C の構文で数を指定することができます。
-e file
エージェントのブートのエンジン ID と番号が保存される代替ファイルを指定します。
-I paths
設定インクルードファイルを検索するためにディレクトリのコロンで区切られたリストを指定します。デフォルトは、 /etc:/usr/etc/:/usr/local/etc です。これらのパスは、<>括弧の中で指定されたインクルードで検索されるだけです。
-l prefix
pid と設定ファイルのためのデフォルトの basename として prefix を使用します。
-m variable[ = value]
設定変数を定義します。
-p file
デフォルトのファイルの代わりに代替の pid ファイルを指定します。

設定

bsnmpd は、デフォルトまたはユーザ指定の設定ファイルのどちらかから設定を読み込みます。設定ファイルは、次のタイプの行から成ります:
  • 変数代入
  • セクション分離符 (セパレータ)
  • インクルード命令
  • MIB 変数代入

行が長過ぎるなら、バックスラッシュで行を終わらせることによって、次の行に続けることができます。空行と最初の非空白文字が“#”記号である行は、無視されます。

全体の設定 (入れ子になった設定ファイルを含めて) のすべての MIB 変数代入は、 1 つのトランザクションとして、すなわち、まるで 1 つの SET PDU であるかのように、扱われます、初期の設定を読み込む間に失敗があれば、 bsnmpd は、終了します。モジュールロードによって引き起こされる、設定の読み込みの間の失敗は、モジュールのロードの失敗を引き起こします。

モジュールがロードされるとき、および bsnmpd が SIGHUP を受け取ったとき、 bsnmpd の初期化の間に設定は、読み込まれます。

変数代入

変数代入は、2 つの形式の 1 つを取ることができます:

variable := string 
variable ?= string

string (文字列) は、等号の後の最初の非空白文字から最初の改行か“#”文字までです。前者の場合、string (文字列) は、無条件に変数に代入され、 2 つ目の場合は、まだ存在していない場合にだけ変数に代入されます。

変数名は、文字か下線で始まり、文字、数値または下線のみ含まなければなりません。

セクション分離符 (セパレータ)

設定は、名前が付けられたセクションから成ります。“snmpd”と名前が付けられたセクションの MIB 変数の代入は、初期のセットアップの間か bsnmpd が SIGHUP を受け取ったときにだけ実行されます。他のすべてのセクションは、セクションとして同じ名前があるモジュールがロードされるか、または bsnmpd が SIGHUP を受け取り、しかも、そのモジュールが既にロードされているとき、実行されます。設定の最初のデフォルトセクションは、“snmpd”です。それは、次のような構文で別のセクションに切り替えることができます。

%secname

ここで、 secname は、セクションの名前です。同じ secname は、設定の複数の場所で使うことができます。これらの部分のすべては、1 つのセクションに集められます。

インクルード命令

次の 2 つの形式のどちらかをとるインクルード命令により、別の設定ファイルを現在のファイルに含めることができます:

.include "file" 
.include <"file">

最初の形式は、カレントディレクトリでファイルを検索し、 2 番目の形式は、システムインクルードパスで指定されたディレクトリを検索します。入れ子の深さは、利用可能なメモリによってのみ制限されます。

MIB 変数代入

MIB 変数は、次の構文で代入されます

oid [ suboids ] = value

oid は、設定される変数の名前です。全体の名前の最後の要素だけがここで使用されます。変数がスカラであるなら、インデックス (.0) が自動的に追加されるので、指定する必要がありません。変数がテーブルカラムであるなら、インデックス ( suboids) を指定しなければなりません。インデックスは、それぞれがドットによって前のものと区切られた要素から成ります。要素は、数、文字列または [] 括弧で囲まれたホスト名のいずれかです。要素が数であるなら、それは、現在の oid に追加されます。要素が文字列であるなら、それぞれのその文字の長さと ASCII コードが現在の oid に追加されます。要素がホスト名であるなら、ホストの IP アドレスが検索され、 IP アドレスの 4 つの要素が oid に追加されます。

例えば、

myvariable.27.foooll.[localhost]."&^!"

の oid は、oid

myvariable.27.6.102.111.111.111.108.108.127.0.0.1.38.94.33
 

となります。

代入の値は、空、文字列または数のいずれかです。文字列が文字または下線から始まって、文字、数値、下線およびマイナス記号だけから成るなら、引用文なしでそれを書き込むことができます。他のすべての場合では、文字列は、二重引用符で囲まなければなりません。

置換

変数の置換は、次のように書かれます。

$(variable)

ここで variable は、置換される変数の名前です。未定義の変数を使用することは、エラーとみなされます。

関連ファイル

/etc/< prefix>.config
デフォルトの設定ファイル。ここで、デフォルトの<prefix>は、“snmpd”です。
/var/< prefix>.engine
デフォルトのエンジン ID ファイル。
/var/run/< prefix>.pid
デフォルトの pid ファイルです。
/etc:/usr/etc/:/usr/local/etc
システムのインクルードファイルのためのデフォルトの検索パス。
/usr/share/snmp/mibs/FOKUS-MIB.txt
/usr/share/snmp/mibs/BEGEMOT-MIB.txt
/usr/share/snmp/mibs/BEGEMOT-SNMPD.txt
デーモンで実装された MIB のための定義。
/etc/hosts.allow, /etc/hosts.deny
TCP ラッパによって実行されるべきであるアクセス管理は、ここで定義されます。詳細は、 hosts_access(5) に説明されています。

規格

bsnmpd は、適切な IETF RFC に適合しています。

作者

Hartmut Brandt <harti@FreeBSD.org>

バグ

きっとあるでしょう。
September 9, 2010 FreeBSD