MIB を使用したルーター管理について
ルーター管理用の管理情報ベース (MIB) API を使用すると、ルーター マネージャーのいずれかまたはルーターマネージャーがサービスするルーティング プロトコルによってエクスポートされた MIB 変数の値を照会および設定できます。 この API を使用すると、ルーターは簡易ネットワーク管理プロトコル (SNMP) をサポートします。
SNMP フレームワークでは、ルーター内の管理可能な各オブジェクトは、一意のオブジェクト識別子 (OID) を持つ変数で表されます。 各 OID に対応する は、オブジェクトの現在の状態を表す値です。 OID と値のコレクションは、管理情報ベース (MIB) と呼ばれます。 MprAdminMib 呼び出しを使用すると、開発者は OID でオブジェクトを指定し、オブジェクトの値をクエリまたは書き込み ("Set") することができます。
MIB 変数の照会と設定を行うには、呼び出しをサービスするモジュールで一連のデータ構造を定義する必要があります。 これらのデータ構造には、オブジェクト識別子として使用する構造体と、アクセスされる MIB 変数の値を保持する構造体が含まれます。 これらのデータ構造は、MIB 関数の呼び出し元と呼び出しにサービスを提供するモジュール以外のすべてのデータ構造に対して不透明です。
MIB 呼び出しにサービスを提供するモジュールは、ルーター マネージャーまたはルーティング プロトコルの 1 つです。 呼び出しがルーティング プロトコルのいずれかで処理される場合でも、呼び出し元はルーター マネージャーを指定する必要があります。 このような場合、呼び出し元は、そのルーティング プロトコルのプロトコル ファミリに対応するルーター マネージャーを指定する必要があります。 たとえば、Open Shortest Path First (OSPF) ルーティング プロトコルが MIB 呼び出しを処理していた場合、OSPF は IP プロトコル ファミリに属しているため、呼び出し元は IP ルーター マネージャーを指定する必要があります。 各 MIB 関数では、 dwTransportId パラメーターはルーター マネージャーを指定し、 RoutingPid パラメーターはルーティング プロトコルを指定します。 ルーター マネージャーには一意の RoutingPid もあります。一部の MIB 変数はルーター マネージャー自体によって処理される可能性があるためです。
MprAdminMib 関数は、管理されているコンピューター以外のコンピューターで呼び出すことができます。 値のクエリまたは書き込みを行う MprAdminMIB 関数は、管理するコンピューターへのハンドルをパラメーターとして受け取ります。 MprAdminMIBServerConnect 関数を使用して、リモート コンピューターへの接続を確立し、このハンドルを取得します。 特定の管理タスクを実行するために必要な MprAdminMIB 関数を呼び出した後、 MprAdminMIBServerDisconnect 関数を呼び出して、リモート コンピューターへの接続を終了します。
MprAdminMIBEntryCreate 関数と MprAdminMIBEntrySet 関数は、OID のパラメーターと、オブジェクトの新しい値を含むバッファーとして受け取ります。
MprAdminMIBEntryGet、MprAdminMIBEntryGetFirst、MprAdminMIBEntryGetNext 関数は、OID とポインター変数のアドレスをパラメーターとして受け取ります。 正常に戻った場合、ポインター変数は オブジェクトの値を含むバッファーを指します。 呼び出し元は 、MprAdminMIBBufferFree 関数を呼び出して、このバッファーのメモリを解放する必要があります。
MprAdminMIBEntryGetFirst 関数と MprAdminMIBEntryGetNext 関数を使用すると、開発者は SNMP ウォークを実行できます。 OID は順序付けされているため、各 OID と各管理可能なオブジェクトには 次 の OID があります。 SNMP ウォークとは、OID のシーケンスを読み書きして、MIB の一部を走査することを指します。
すべての MprAdminMib 呼び出しは、動的インターフェイス マネージャー (DIM) を通過します。 OID に応じて、DIM はいずれかのルーター マネージャーに呼び出しを渡します。 (IP と IPX の両方で SNMP がサポートされます)。 ここでも、OID によっては、ルーター マネージャーが呼び出し自体を処理するか、そのクライアントのいずれかに呼び出しを渡すことができます。 すべてのルーター クライアントは、同様の名前の MprAdminMIB 関数に対応する次の関数を実装およびエクスポートする必要があります。