Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

SNMP を使用したネットワーク監視

SUMMARY このセクションでは Junos OS での SNMP 実装について説明します。

Junos OS における SNMP 実装について

SNMPアーキテクチャ

典型的なSNMP実装には、3つのコンポーネントが含まれます。

  • NMS(ネットワーク管理システム)—ネットワークの監視と管理に使用されるハードウェア(デバイス)とソフトウェア(SNMP マネージャー)の組み合わせマネージャーは、ネットワーク接続、アクティビティ、イベントに関する情報について指定した頻度で、ネットワーク上のデバイスにポーリングします。

  • 管理対象デバイス—管理対象デバイス(ネットワーク要素とも呼ばれます)は、NMS が管理するネットワーク上のデバイスです。ルーターとスイッチは管理対象デバイスによくある例です。

  • SNMP エージェント—SNMP エージェントは、管理対象デバイス上に存在し、NMS と通信する SNMP プロセスです。SNMPエージェントは、NMSで実行しているSNMPソフトウェアまたはホストとネットワーク管理情報を交換します。エージェントは、マネージャーからの情報およびアクションの要求に応答します。また、SNMPマネージャーで表示または変更できるオブジェクトのコレクションである、エージェントのMIBへのアクセスも制御します。

このトピックには、以下のセクションが含まれています。

SNMP MIB

SNMP データは、MIB(管理情報ベース)と呼ばれる高度に構成された階層形式で保存されます。MIB は、ネットワーク デバイス内の管理対象オブジェクトを定義します。

MIB 構造は、ツリー 構造に基づいており、オブジェクトのグループ化を関連するセットに定義します。MIB 内の各オブジェクトは、オブジェクトに名前を付ける OID(オブジェクト識別子)に関連付けられています。ツリー 構造内の「リーフ」は、実際の管理対象オブジェクト インスタンスであり、ネットワーク デバイスで発生するリソース、イベント、またはアクティビティを表します。

MIBには、標準のものとエンタープライズ固有のものがあります。標準の MIB は、インターネット技術タスク フォース(IETF)により作成され、さまざまな RFC で文書化されています。ベンダーに応じて、多くの標準 MIB には NMS ソフトウェアが付属しています。また、IETF ウェブサイト(www.ietf.org)から標準 MIB をダウンロードして、必要に応じて NMS にコンパイルすることもできます。

サポートされる標準MIBの一覧については、Junos OSでサポートされている標準SNMP MIBを参照してください。

エンタープライズ固有のMIBは、特定の機器メーカーにより開発およびサポートされています。ネットワークにエンタープライズ固有の MIB を持つデバイスが含まれている場合、メーカーから取得し、ネットワーク管理ソフトウェアにコンパイルする必要があります。

ジュニパーネットワークスのエンタープライズ固有 MIB リストについては、Junos OS でサポートされているエンタープライズ固有の SNMP MIB を参照してください。

SNMP マネージャーとエージェント認証および通信

SNMP は、コミュニティ文字列と呼ばれる非常に基本的な認証形式を使用して、マネージャーとリモート エージェント間のアクセスを制御します。コミュニティ文字列は、共通管理ドメインへのデバイス(とその上で実行されているエージェント)のコレクションのグループ化に使用される管理名です。マネージャーとエージェントが同じコミュニティを共有する場合、互いに話せます。多くの人は、行うジョブが類似しているため、SNMP コミュニティ文字列をパスワードおよびキーと関連付けます。そのため、SNMP コミュニティは従来は文字列と呼ばれていました。

エージェントとマネージャー間の通信は、以下のいずれかの形式で発生します。

  • GetGetBulk、およびGetNextリクエスト—マネージャーはエージェントから情報を要求します。エージェントはGet応答メッセージ内の情報を返します。

  • Set リクエスト—マネージャーはエージェントによって制御される MIB オブジェクトの値を変更します。エージェントは、Set応答メッセージのステータスを示します。

  • Traps 通知—エージェントはトラップを送信して、ネットワーク デバイス上で発生する重要なイベントをマネージャーに通知します。

SNMP トラップとインフォーム

ルーターは、デバイス上で重要なイベントが発生した場合、SNMP マネージャーに通知を送信できます。ほとんどの場合、エラーまたは障害の通知です。SNMP 通知はトラップまたはインフォーム リクエストとして送信できます。SNMP トラップは確認されていない通知です。SNMP インフォームは確認された通知です。

SNMP トラップは標準またはエンタープライズ固有の MIB 内で定義されています。標準トラップは、IETF によって作成され、さまざまな RFC で文書化されています。標準トラップはネットワーク管理ソフトウェアにコンパイルされます。また、IETF ウェブサイト(www.ietf.org)から標準のトラップをダウンロードすることもできます。

Junos OS でサポートされている標準トラップの詳細については、Junos OS を実行するデバイスでサポートされている標準 SNMP トラップを参照してください。

エンタープライズ固有のトラップは、特定の機器メーカーにより開発およびサポートされています。ネットワークにエンタープライズ固有のトラップを持つデバイスが含まれている場合、メーカーから取得し、ネットワーク管理ソフトウェアにコンパイルする必要があります。

Junos OS でサポートされているエンタープライズ固有のトラップの詳細については、Junos OS でサポートされているエンタープライズ固有の SNMP トラップを参照してください。SNMP トラップのシステム ロギングの重大度レベルについては、SNMPトラップのシステムロギング重大度レベルを参照してください。

トラップでは、トラップを受信したときにレシーバーは確認を送信せず、送信者がトラップを受信したかどうかを決定します。信頼性を高めるために、SNMPv3 では SNMP インフォームがサポートされています。インフォームを受信する SNMP マネージャーは、応答でメッセージを確認します。SNMP インフォームの詳細については、SNMP インフォームの設定を参照してください。

Junos OS 上の SNMP

Junos OS では、SNMP は標準(IETF により開発され、RFC で文書化されている)とジュニパーネットワークス エンタープライズ固有の MIB をどちらも使用します。

注:

Junos OSを搭載したデバイスでは、デフォルトでSNMPが有効になっていません。

Junos OS では、SNMP 管理データを維持するプロセスには以下が含まれます。

  • 管理対象デバイス上に存在し、NMS またはホストで管理されているマスター SNMP エージェント。

    Junos OS SNMPソフトウェアは、SNMPプライマリエージェント(SNMPプロセス、またはsnmpdとも呼ばれます)で構成されています。管理対象デバイス上に存在し、NMS またはホストで管理されます。

  • ルーティング エンジンなど、Junos OS のさまざまなモジュールに存在するさまざまなサブエージェント。マスターSNMPエージェントは、すべてのSNMP要求をサブエージェントに委任します。各サブエージェントは、特定の MIB セットのサポートを担当します。

  • SNMPデータ(インターフェイス関連MIBなど)をポーリングする際にサブエージェントとデータを共有するJunos OSプロセス。

コミュニティ文字列は、Junos OS内のSNMPエージェントに実装されている管理認証の第1レベルです。

詳細については、以下のセクションを参照してください。

SNMP バージョンの Junos OS サポート

Junos OSは、以下のバージョンのSNMPをサポートします。

  • SNMPv1—SNMP のアーキテクチャとフレームを定義する SNMP の初期実装。

  • SNMPv2c—パフォーマンスとマネージャー間通信が改善された改正プロトコル。特に、SNMPv2c は、コミュニティ文字列を実装します。これは、誰が、何が、そして SNMP クライアントはどのようにして SNMP エージェント内のデータにアクセスできるかを決定する際にパスワードとして機能します。GetNextコミュニティ文字列は、SNMP GetGetBulk、およびSetリクエストに含まれています。エージェントは、GetGetBulk、および GetNextリクエスト( read-onlyアクセス)に対して、 Setリクエスト(read-writeアクセス)とは異なるコミュニティ文字列を求める必要があります。

  • SNMPv3—最新のプロトコルはセキュリティに焦点を置いています。SNMPv3 は、セキュリティ モデル、USM(ユーザーベース セキュリティ モデル)、VACM(ビューベース アクセス コントロール モデル)を定義します。SNMPv3 USM は、データ整合性、データ送信元の認証、メッセージ再生保護、メッセージ ペイロードの開示に対する保護を提供します。SNMPv3 VACMは、管理情報に対する特定タイプのアクセス(読み取りまたは書き込み)を許可するかどうかを決定するためのアクセス制御を提供します。

さらに、Junos OS SNMP エージェント ソフトウェアは、IPv4 と IPv6 を介したトランスポートのために IPv4 および IPv6 アドレスを受け入れます。IPv6では、Junos OSは以下の機能をサポートします。

  • IPv6 ネットワークを介した SNMP データ

  • IPv6固有のMIBデータ

  • IPv6 の SNMP エージェント

SNMPトラップのシステムロギング重大度レベル

一部のトラップでは、SNMPエージェントがNMSにトラップを送信するかどうかを問わず、トラップ条件が発生すると、システムロギングがシステムロギング重大度レベルと合わせてイベントをロギングするように設定されている場合、トラップがロギングされます。

標準トラップのシステム ロギング重大度レベルについては、Junos OS でサポートされている標準 SNMP トラップを参照してください。エンタープライズ固有トラップのシステムロギング重大度レベルについては、Junos OSでサポートされているエンタープライズ固有のSNMPトラップを参照してください。

SNMP 通信フロー

NMS がデータのプライマリ エージェントをポーリングすると、プライマリ エージェントはプライマリ エージェントまたはサブエージェントの 1 つから利用可能な場合、プライマリ エージェントがデータを直ちに NMS と共有します。ただし、要求されたデータがプライマリ エージェントまたはサブエージェントで維持されているカテゴリーに属していない場合、サブエージェントは Junos OS カーネルまたはそのデータを維持しているプロセスにポーリングします。必要なデータを受信すると、サブエージェントはプライマリエージェントに応答を返し、それがNMSに渡されます。

図 1は、NMS、SNMPプライマリ エージェント(snmpd)、SNMPサブエージェント、Junos OSカーネル、パケット転送エンジン間の通信フローを示しています。

図 1: SNMP 通信フローSNMP 通信フロー

重要なイベント(ほとんどはエラーまたは障害)がネットワーク デバイスに発生した場合、SNMP エージェントは SNMP マネージャーに通知を送信します。Junos OS における SNMP 実装は、2 種類の通知をサポートします。トラップとインフォームトラップは確認されていない通知ですが、インフォームは確認された通知です。インフォームは、SNMPv3(SNMP バージョン 3)設定をサポートするデバイスでのみサポートされています。

トラップキューイング

Junos OSは、トラップキューイングをサポートしており、ルートが一時的に利用できないことでトラップが失われることはありません。2種類のキュー、宛先キュースロットルキューが、トラップの配信を確保して、トラップトラフィックを制御するために形成されます。

注:

Junos OS では、トラップ キューイングを設定できません。システム ログで提供されたものを除き、トラップ キューに関する情報を表示することはできません。

Junos OS は、特定の宛先へのトラップがホストに到達できないために返された場合に宛先キューを形成し、以降の同じ宛先へのトラップをキューに追加します。Junos OS は、30 秒ごとにルートの可用性を確認し、ラウンドロビン方式で宛先キューからトラップを送信します。

トラップの配信に失敗した場合、トラップはキューに戻され、キューの配信試行カウンターと次の配信試行タイマーがリセットされます。それ以降の試行は、1 分、2 分、4 分、および8 分の漸進的な間隔で発生します。試行の最大遅延は 8 分、最大試行回数は 10 回です。10 回失敗すると、宛先のキューとキュー内のすべてのトラップが削除されます。

また、Junos OS にはスロットル メカニズムがあり、それによって、特定の時間帯(スロットル間隔、デフォルトは 5 秒)に送信されるトラップ数(スロットル閾値、デフォルト値は 500 トラップ)を制御し、特にインタフェースのステータス変更により大量のトラップが発生した場合に、トラップ トラフィックの一貫性を確保します。スロットル間隔期間は、最初のトラップがスロットルに到着したときに始まります。トラップしきい値内のすべてのトラップは処理され、しきい値制限を超えたトラップはキューイングされます。

トラップ キューの最大サイズ(つまり、スロットル キューと宛先キューの合計)は 40,000 です。ただし、EX シリーズ イーサネット スイッチでは、トラップ キューの最大サイズは 1,000 です。1つのキューの最大サイズは、EXシリーズスイッチ以外のデバイスでは 20,000 です。EXシリーズスイッチでは、1つのキューの最大サイズは 500 です。トラップがスロットル キューに追加された場合、またはスロットル キューが最大サイズを超えた場合、トラップは宛先キューの先頭に戻され、宛先キューからの後続の試行はすべて 30 秒間停止し、その後宛先キューはトラップの送信を再開します。

注:

ユーザーは、Junos OSをトラップキューイングに設定することはできません。ユーザーは、ロギングされた情報で利用可能なものを除き、トラップ キューに関する情報を表示できません。

SNMPv3 の概要

SNMP バージョン 1 (SNMPv1) および SNMP バージョン 2 (SNMPv2) とは異なり、SNMP バージョン 3 (SNMPv3) では、認証と暗号化をサポートしています。SNMPv3 では、メッセージのセキュリティにユーザーベースのセキュリティモデル (USM) と、アクセス制御に view-based access control model(VACM)を採用しています。USM は、認証と暗号化を指定します。VACM は、アクセス制御規則を指定します。

USM では、エージェントとマネージャの両方にセキュリティパラメーター(セキュリティレベル、認証、プライバシープロトコル、およびキー)が設定されたユーザーという概念を採用しています。USM を使って送信されるメッセージは、パスワードがプレーンテキストで送信されてコミュニティ文字列を使って送信されるメッセージよりも保護されています。USM では、マネージャーとエージェントの間で交換されるメッセージに、データの整合性チェックとデータの起源の認証を行うことができます。USM は、タイムインジケーターとリクエスト ID を使用して、メッセージの遅延やメッセージの再生を防ぎます。暗号化も可能です。

USM を補完するために、SNMPv3 では、SNMPv3 アプリケーションのための高度に詳細なアクセス制御モデルである VACM を使用します。エージェントに問い合わせたグループの名前にセキュリティポリシーを適用するという概念に基づき、エージェントはそのグループが特定の MIB オブジェクトの表示や変更を許可されているかどうかを判断します。VACM では、データの集合体 (ビューと呼びます)、データユーザーのグループ、そして特定のユーザーグループがどのビューを使ってトラップの読み取り、書き込み、または受信ができるかを定義するアクセスステートメントを定義します。

SNMPv3 のトラップエントリーは、通知、通知フィルター、ターゲットアドレス、およびターゲットパラメーターを設定することで作成されます。notify ステートメントは通知 (トラップ) のタイプを指定し、単一のタグを含めます。タグは、トラップを受信するターゲットアドレスのセットを定義します。通知フィルターは、トラップのオブジェクト識別子 (OID) の集合体へのアクセスを定義します。ターゲットアドレスは、通知を送信する際に使用する管理アプリケーションのアドレスやその他の属性を定義します。ターゲットパラメーターは、特定の管理ターゲットに通知を送信する際に使用するメッセージ処理およびセキュリティパラメーターを定義します。

SNMPv3 を設定するには、以下のタスクを実行します。

SNMPv3の概要(スタンドアロンモードのQFX)

QFX3500スイッチは、SNMPバージョン3(SNMPv3)をサポートします。SNMPv3では、ユーザー認証とデータ暗号化をサポートしており、SNMPv1とSNMPv2cの機能が強化されています。SNMPv3では、ユーザーベースのセキュリティモデル(USM)を使用することでSNMPメッセージにセキュリティを提供し、ビューベースのアクセス制御モデル(VACM)を使用してユーザーアクセス制御を提供します。

SNMPv3の機能は次のとおりです:

  • USMを使用すると、SNMPマネージャとエージェント間のSNMPメッセージで、メッセージ ソースが認証され、データの整合性を確認することができます。USMは、タイムアウト制限を適用し、重複するメッセージ要求IDをチェックすることにより、メッセージングの遅延とメッセージの再生を削減します。

  • VACMは、エージェントにSNMPクエリーのユーザーアクセス制御を提供することで、USMを補完します。1 人以上のユーザーのグループに拡張するアクセス権を定義します。アクセス権は、セキュリティモデルパラメーター(usmv1、またはv2)とセキュリティレベルパラメーター(authenticationprivacy、またはnone)によって決定されます。各セキュリティレベルに対して、グループのMIBビューを1つ関連付ける必要があります。MIBビューをグループに関連付けることで、グループのMIBオブジェクトのセットに対する読み取り、書き込み、または通知のアクセス許可が付与されます。

  • ユーザー名、認証の種類と認証パスワード、プライバシーの種類とプライバシーパスワードなど、各ユーザーのセキュリティパラメーターを設定します。各ユーザーに与えられるユーザー名は、そのユーザーに対して構成されたセキュリティモデルに依存する形式です。

  • メッセージングのセキュリティを確保するために、セキュリティ名と呼ばれる別のタイプのユーザー名が、ローカルSNMPサーバーと送信先SNMPサーバー間に送信されるメッセージングデータに含まれます。各ユーザー名はセキュリティ名にマップされますが、セキュリティ名はセキュリティモデルには依存しない形式で作成されます。

  • SNMPv3のトラップエントリーは、通知、通知フィルター、ターゲットアドレス、およびターゲットパラメーターを設定することで作成されます。notifyステートメントは、通知のタイプ(トラップ)を指定し、トラップを受信するターゲットアドレスセットを定義する単一のタグが含まれます。通知フィルターは、トラップのオブジェクト識別子 (OID) の集合体へのアクセスを定義します。ターゲットアドレスは、SNMP管理アプリケーションのアドレスと、通知の送信に使用されるその他の属性を定義します。ターゲットパラメーターは、特定のターゲットに通知を送信するときに使用するメッセージ処理とセキュリティパラメーターを定義します。

MIB ファイルのネットワーク管理システムへの読み込み

ネットワーク管理システム(NMS)が、Junos OSにより使用されるMIBオブジェクトを識別し、理解するには、まずMIBコンパイラを使用してMIBファイルをNMSに読み込む必要があります。MIB コンパイラは、MIB オブジェクト名、ID、および NMS 用のデータタイプなどの MIB 情報を解析するユーティリティです。

Junos OS エンタープライズ MIB インデックス(https://www.juniper.net/documentation/en_US/release-independent/junos/mibs/mibs.html)から Junos MIB パッケージをダウンロードできます。Junos MIB パッケージは、.zipで提供されており、.tarパッケージです。要件に応じて、適切な形式をダウンロードできます。

Junos MIB パッケージには、2 つのフォルダーが含まれています。StandardMibsJuniperMibs があります。StandardMibsフォルダには、Junos OS を実行しているデバイスでサポートされている標準的な MIB と RFC が、JuniperMibsフォルダにはジュニパーネットワークスのエンタープライズ固有の MIB が含まれています。

Junos OS を実行しているデバイスの管理および監視に必要な MIB ファイルを読み込むには、以下を行ってください。

  1. SNMP MIB エクスプローラ ダウンロード ページにアクセスして、ジュニパーネットワークス SNMP MIB パッケージをダウンロードします(SNMP MIB エクスプローラ)。
  2. 適切なリリースの見出しの下にある、TARまたは、ZIPのリンクをクリックし、そのリリースのJunos MIBパッケージをダウンロードします。
  3. 適切なユーティリティを使用して、ファイル(.tarまたは.zip)を解凍します。
  4. 以下の順番で、標準 MIB ファイル(StandardMibsフォルダーから)を読み込みます。
    注:

    一般的に使用されている MIB コンパイラの一部には、事前読み込み済みの標準 MIB が搭載されています。お使いの MIB コンパイラに標準 MIB が既に読み込まれている場合は、このステップをとばして、ステップ 7 に進んでください。

    1. mib-SNMPv2-SMI.txt

    2. mib-SNMPv2-TC.txt

    3. mib-IANAifType-MIB.txt

    4. mib-IANA-RTPROTO-MIB.txt

    5. mib-rfc1907.txt

    6. mib-rfc4293.txt

    7. mib-rfc2012a.txt

    8. mib-rfc2013a.txt

    9. mib-rfc2863a.txt

  5. 残りの標準 MIB ファイルを読み込みます。
    注:

    この手順で指定されている順序に従い、エンタープライズ固有の MIB を読み込む前に、全ての標準 MIB が読み込まれていることを確実にしてください。他のMIBを読み込む前に、コンパイラに特定のMIBが存在しなければならない依存性がある可能性があります。このような依存関係のリストについては、MIBファイルのIMPORTセクションに記載されています。

  6. ジュニパーネットワークスのエンタープライズ固有の SMI MIB、mib-jnx-smi.txt、および次のオプションの SMI MIB を、要件に基づいて読み込みます。
    • mib-jnx-js-smi.txt—(オプション)ジュニパー セキュリティ MIB ツリー オブジェクト向け

    • mib-jnx-ex-smi.txt—(オプション)EXシリーズイーサネットスイッチ向け

    • mib-jnx-exp.txt—(推奨)ジュニパーネットワークス実験 MIB オブジェクト向け

  7. JuniperMibsフォルダから、残りのエンタープライズ固有のMIBを読み込みます。
ヒント:

MIBファイルの読み込み中に、コンパイラがオブジェクトが未定義であるというエラーメッセージを表示する場合は、テキストエディターを使用してMIBファイルを開き、IMPORTセクションに記載されている全てのMIBファイルがコンパイラに読み込まれていることを確認してください。IMPORTセクションに記載されている MIB ファイルのいずれかがコンパイラに読み込まれていない場合、その MIB ファイルを読み込んでから、読み込みに失敗した MIB ファイルの読み込みを試みてください。

例えば、エンタープライズ固有の PING MIB である、mib-jnx-ping.txtには、RFC 2925、DiSMAN-PING-MIB、mib-rfc2925a.txtでの従属物があります。mib-rfc2925a.txtの読み込み前にmib-jnx-ping.txtを読み込もうとすると、コンパイラは、mib-jnx-ping.txt内の特定のオブジェクトが未定義であることを伝えるエラーメッセージを表示します。mib-rfc2925a.txtを読み込んでから、mib-jnx-ping.txtを読み込んでください。エンタープライズ固有の PING MIB、mib-jnx-ping.txtは、その後問題なく読み込みます。

show snmp

Junos OSの動作モードでアクセスして、SNMP情報を監視できるコマンドがいくつかあります。以下にコマンドの一部を示します。

  • show snmp health-monitor:正常性監視ログとアラーム情報を表示します。

  • show snmp mib:デバイスやシステムの情報など、MIBからの情報を表示します。

  • show snmp statistics:パケット数、サイレントドロップ、無効な出力値などのSNMP統計情報を表示します。

  • show snmp rmon:RMONアラーム、イベント、履歴、ログ情報を表示します

以下の例は、show snmp health-monitor コマンドの出力例を示しています。

以下の例は、show snmp mib コマンドの出力例を示しています。

以下の例は、show snmp statistics コマンドの出力例を示しています。

Junos OS SNMPのFAQ概要

このドキュメントでは、Junos オペレーティングシステムを使用してジュニパーネットワークスの複数のデバイスに SNMP サービスを実装するために使用する機能と技術に関する最も頻繁に寄せられる質問を説明しています。

SNMP を使用すると、ユーザーは中央からネットワークデバイスを監視できます。多くのネットワーク管理システム (NMS) は SNMP をベースにしており、このプロトコルのサポートはほとんどのネットワークデバイスの重要な機能です。

ジュニパーネットワークスは、Junos OS で SNMP をサポートするさまざまなプラットフォームを提供しています。Junos OS にはオンボード SNMP エージェントが含まれており、リモート管理アプリケーションからネットワーク上のデバイスに関する詳細情報にアクセスすることができます。

典型的なSNMP実装には3つのコンポーネントが含まれます。

  • 管理対象デバイス - ルーター、スイッチなど。

  • SNMP エージェント - 管理対象デバイス上に置かれ NMS と通信するプロセス。

  • NMS - ネットワークの監視と管理に使用されるハードウェアとソフトウェアの組み合わせで、SNMP管理ソフトウェアを実行するネットワークデバイス。SNMP マネージャーとも呼ばれています。

SNMP エージェントは、ネットワーク管理情報を SNMP マネージャー(NMS)と交換します。エージェントは、マネージャーからの情報およびアクションの要求に応答します。SNMPマネージャーは、マネージドデバイスをポーリングすることで、ネットワーク接続、アクティビティ、イベントに関する情報を収集します。

Junos OS の SNMP 実装は、管理対象デバイス上に置かれたマスター SNMP エージェント (SNMP プロセスまたは snmpd と呼ばれる) を使用します。まざまなサブエージェントは、Junos OS のさまざまなモジュール (ルーティングエンジンなど) に存在し、これらのサブエージェントは snmpd によって管理されています。

Junos OS SNMP FAQ

この「よくある質問」技術概要では、以下のSNMPに関連分野したトピックを取り上げています。

Junos OS SNMP サポート FAQ

このセクションには、Junos OS の SNMP サポートに関するよくある質問とその回答が掲載されています。

Which SNMP versions does Junos OS support?

Junos OSは、SNMPバージョン1(SNMPv1)、バージョン2(SNMPv2c)、バージョン3(SNMPv3)をサポートしています。デフォルトでは、ジュニパーネットワークスのデバイスでは SNMP は無効になっています。

Which ports (sockets) does SNMP use?

SNMP クエリーのデフォルト ポートはポート 161 です。SNMP トラップとインフォームのデフォルトポートはポート 162 です。SNMP トラップやインフォームに使用するポートは構成可能で、デフォルト ポート 162 以外のポートを使用するようにシステムを構成できます。ただし、SNMP のリスニング ポートは同じままで、これは RFC で定められています。

Is SNMP support different among the Junos OS platforms?

いいえ、SNMP サポートは Junos OS プラットフォーム間で違いはありません。SNMPの構成、機能、動作は、どのJunos OSデバイスでも同じです。プラットフォーム間の唯一の違いは、MIB のサポートです。

Junos OSプラットフォームがサポートするMIBの一覧については、SNMP MIBエクスプローラーも参照してください。

Does Junos OS support the user-based security model (USM)?

はい、Junos OSは、SNMPv3サポートの一環としてUSMをサポートしています。SNMPv3は、定義済みのUSMを提供するなど、以前のバージョンのSNMPよりもセキュリティ対策が強化されています。SNMPv3 USM は、データ完全性、データ送信元の認証、メッセージのリプレイ保護、メッセージ ペイロード開示の保護を通じて、メッセージのセキュリティを提供します。

Does Junos OS support the view-based access control model (VACM)?

はい、Junos OSはSNMPv3サポートの一貫としてVACMをサポートしています。SNMPv3では、定義済みのVACMを提供するなど、以前のバージョンのSNMPよりもセキュリティ対策が強化されています。SNMPv3 VACM は、管理情報に対する特定タイプのアクセス(読み取りまたは書き込み)を許可するかどうかを決定します。

Does Junos OS support SNMP informs?

はい、Junos OS は、SNMPv3 サポートの一貫として、SNMP インフォームをサポートしています。SNMP インフォームとは、ネットワーク デバイスで重要なイベントが発生した際に、SNMP エージェントから SNMP マネージャーに送信される確認済みの通知のことです。SNMPマネージャーは、インフォームを受信すると、送信者に応答を送信し、インフォームの受信を検証します。

Can I provision or configure a device using SNMP on Junos OS?

いいえ、Junos OS では SNMP を使ったデバイスのプロビジョニングや構成はできません。

Junos OS MIB FAQ

このセクションには、Junos OS MIB に関するよくある質問とその回答が掲載されています。

What is a MIB?

管理情報ベース(MIB)とは、ネットワークデバイスの管理対象を定義したテーブルのことです。MIBは、SNMPにより、ネットワークデバイス内のすべてのコンポーネントとその動作状態の標準的な定義を維持するために使用されます。MIB内の各オブジェクトには、オブジェクト識別子(OID)と呼ばれる識別コードが設定されています。

MIB には、標準のものとエンタープライズ固有のものがあります。標準の MIB は、インターネット技術タスク フォース(IETF)により作成され、さまざまな RFC で文書化されています。エンタープライズ固有の MIB は、特定の機器メーカーにより開発およびサポートされています。

サポートされる標準MIBの一覧については、Junos OSでサポートされている標準SNMP MIBを参照してください。

ジュニパーネットワークスのエンタープライズ固有 MIB リストについては、Junos OS でサポートされているエンタープライズ固有の SNMP MIB を参照してください。

Do MIB files reside on the Junos OS devices?

いいえ、MIBファイルはJunos OSデバイス上には存在しません。MIB ファイルは、ジュニパーネットワークスの技術文書ページから、必要な Junos OS リリースに合わせてダウンロードする必要があります:https://www.juniper.net/documentation/en_US/release-independent/junos/mibs/mibs.html

How do I compile and load the Junos OS MIBs onto an SNMP manager or NMS?

ネットワーク管理システム(NMS)が Junos OS で使用されている MIB オブジェクトを識別して理解するためには、まず MIB コンパイラを使って MIB ファイルを NMS に読み込む必要があります。MIB コンパイラは、NMS の MIB オブジェクト名、ID、データ タイプなどの MIB 情報を解析するユーティリティです。

Junos OS MIB パッケージは、「エンタープライズ固有の MIB とトラップ」セクション(https://www.juniper.net/documentation/en_US/release-independent/junos/mibs/mibs.html または https://www.juniper.net/documentation/software/junos/index.html)からダウンロードできます。

Junos OS MIB パッケージには、ジュニパーネットワークスのデバイスでサポートされている標準 MIB を含む StandardMibs と、ジュニパーネットワークスのエンタープライズ固有 MIB を含む JuniperMibs の 2 つのフォルダがあります。エンタープライズ固有MIBをダウンロードする前に、必要な標準MIBを必ずダウンロードして解凍しておいてください。存在する依存関係によっては、特定のエンタープライズ固有 MIB を読み込む前に、特定の標準 MIB がコンパイラに存在することが必須になります。

Junos OS MIB パッケージは、.zip および .tar のフォーマットで利用できます。要件に合ったフォーマットをダウンロードしてください。

以下のステップで、Junos OS を搭載したデバイス用の MIB ファイルを読み込みます。

  1. ジュニパーネットワークスのソフトウェア ダウンロード ページに移動し、Enterprise-Specific MIBs and Traps セクションの下にある Enterprise MIBs リンクを見つけます。

    注:

    リンクのタイトルは Enterprise MIBs ですが、標準 MIB とエンタープライズ固有 MIB の両方を、この場所からダウンロードできます。

  2. TAR または ZIP リンクをクリックして、Junos OS MIB パッケージをダウンロードします。

  3. 適切なユーティリティを使用して、ファイル(.tarまたは.zip)を解凍します。

    注:

    一般的に使用されている MIB コンパイラには、標準 MIB がプリロードされているものがあります。標準 MIB がシステムに読み込み済みであれば、ステップ 4 とステップ 5 を省略してステップ 6 に進むことができます。

  4. StandardMibs フォルダーから標準 MIB ファイルを読み込みます。

    以下の順番でファイルを読み込みます。

    1. mib-SNMPv2-SMI.txt

    2. mib-SNMPv2-TC.txt

    3. mib-IANAifType-MIB.txt

    4. mib-IANA-RTPROTO-MIB.txt

    5. mib-rfc1907.txt

    6. mib-rfc2011a.txt

    7. mib-rfc2012a.txt

    8. mib-rfc2013a.txt

    9. mib-rfc2863a.txt

  5. 残りの標準 MIB ファイルを読み込みます。

    注:

    この手順で指定されている順序に従い、エンタープライズ固有の MIB を読み込む前に、全ての標準 MIB が読み込まれていることを確実にしてください。存在する依存関係によっては、特定のエンタープライズ固有 MIB を読み込む前に、特定の標準 MIB がコンパイラに存在することが必須になります。依存関係は、MIB ファイルの IMPORT セクションに記載されています。

  6. 標準 MIB を読み込んだ後、必要に応じて、ジュニパーネットワークスのエンタープライズ固有 SMI MIB、mib-jnx-smi.txt、および以下のオプション SMI MIB を読み込みます。

    • mib-jnx-exp.txt —(推奨)ジュニパーネットワークスの実験MIBオブジェクト向け

    • mib-jnx-js-smi.txt—(オプション)ジュニパー セキュリティ MIB ツリー オブジェクト向け

    • mib-jnx-ex-smi.txt—(オプション)EX シリーズ イーサネット スイッチ向け

  7. 残りの必要なエンタープライズ固有 MIB を JuniperMibs フォルダから読み込みます。

    ヒント:

    MIB ファイルの読み込み中、オブジェクトが未定義であるというエラー メッセージをコンパイラが表示する場合、テキスト エディターを使用して MIB ファイルを開き、セIMPORTクションに記載されている全ての MIB ファイルがコンパイラに読み込まれていることを確認してください。IMPORT セクションに記載されているMIBファイルがコンパイラに読み込まれていない場合は、まず不足しているファイルを読み込み、その後、失敗したMIBファイルの読み込みを試みてください。

    ファイルが特定の順序で読み込まれていない場合、システムがエラーを返すことがあります。

What is SMI?

管理情報の構造バージョン(SMI)は、オブジェクトの構造を記述する抽象構文記法 1(ASN.1)のサブセットです。SMI は、MIB を記述するための標準となる表記構文、すなわち「文法」です。

Which versions of SMI does Junos OS support?

Junos OS は、SNMPv1 の MIB に対しては SMIv1 を、SNMPv2c およびエンタープライズ MIB に対しては SMIv2 をサポートしています。

Does Junos OS support MIB II?

はい、Junos OS は、MIB 標準の 2 番目のバージョンである MIB II をサポートしています。

MIB II の機能には以下が含まれます。

  • 新たな運用要件を反映した追加事項。

  • 元の MIB や SNMP との後方互換性。

  • マルチプロトコルエンティティのサポートを改善。

  • 可読性の向上。

サポートされる MIB のリストについては、関連するリリースのドキュメントを参照してください。https://www.juniper.net/documentation/software/junos/index.html に移動。

Are the same MIBs supported across all Juniper Networks devices?

Junos OS のすべてのデバイスでサポートされている共通の MIB には、インターフェイス MIB(ifTable)、システム MIB、シャーシ MIB などがあります。一部の MIB は、特定のプラットフォームの機能でのみサポートされます。例えば、ブランチ向けのEXシリーズイーサネットスイッチとSRXシリーズサービスゲートウェイでは、Bridge MIBがサポートされています。

What is the system object identifier (SYSOID) of a device? How do I determine the SYSOID of my device?

jnx-chas-defines(ルーターモデル用のシャーシ定義)MIBには、各Junos OSデバイス向けの jnxProductName ブランチがあります。デバイスのシステム オブジェクト ID は、プラットフォーム用の jnxProductName のオブジェクト ID と同じです。例えば、M7i マルチサービス エッジ ルーターの場合、jnxProductNameM7i は jnxProductName ブランチの .1.3.6.1.4.1.2636.1.1.1.2.10 であり、これは M7i (.1.3.6.1.4.1.2636.1.1.1.2.10) の SYSOID と同じです。

How can I determine if a MIB is supported on a platform? How can I determine which MIBs are supported by a device?

MIBデバイスとプラットフォームのサポートは、Junos OS技術文書に記載されています。MIB およびサポートされる Junos OS デバイスのリストについては、Junos OS でサポートされているエンタープライズ固有の SNMP MIB および Junos OSでサポートされている標準SNMP MIB のドキュメントを参照してください。

What can I do if the MIB OID query is not responding?

MIB OID クエリーが応答しなくなる理由はさまざまです。1 つの理由として、MIB 自体が反応しないことが考えられます。MIBが応答していることを確認するには、show snmp mib walk | get MIB name | MIB OID コマンドを使用します。

  • MIBが応答する場合、SNMPプライマリとSNMPエージェントの間に通信上の問題が存在します。この問題の原因としては、ネットワークの問題、不正なコミュニティ構成、不正な SNMP 設定などが考えられます。

  • MIB が応答しない場合は、SNMP traceoptions を有効にして PDU とエラーをログに記録してください。送受信されるすべての SNMP PDU が記録されます。traceoptions の出力にエラーがないか確認します。

MIB OID のクエリーで問題が解決しない場合は、ジュニパーネットワークスの技術支援センター(JTAC)で製品のテクニカルサポートを受けることができます。

What is the enterprise branch number for Junos OS?

Junos OSのエンタープライズ ブランチ番号は2636です。エンタープライズ ブランチ番号は、SNMP MIB 構成で使用され、SMI ネットワーク管理プライベート エンタープライズ コードとも呼ばれます。

Which MIB displays the hardware and chassis details on a Juniper Networks device?

シャーシMIB(jnxchassis.mib)には、ジュニパーネットワークスの各デバイスのハードウェアとシャーシの詳細が表示されます。ここでは、ルーターとそのコンポーネントに関する情報が得られます。シャーシ MIB オブジェクトは、各コンポーネントとそのステータスを表します。

Which MIB objects can I query to determine the CPU and memory utilization of the Routing Engine, Flexible PIC Concentrator (FPC), and PIC components on a device?

シャーシ MIB オブジェクト jnxOperatingMemoryjnxOperatingtBufferjnxOperatingCPU にクエリーを実行して、デバイスのハードウェア コンポーネントの CPU とメモリの使用率を調べることができます。

Is the interface index (ifIndex) persistent?

ifIndex は、Junos OS のバージョンが同じであれば、再起動しても永続的であり、ifIndex でインターフェイスに割り当てられた値は変化しません。

ソフトウェアのアップグレードがあった場合、デバイスはベスト エフォート方式で ifIndex の永続性を維持しようとします。Junos OSリリース10.0以前のバージョンでは、Junos OS Release 10.1以降へのソフトウェアアップグレードがある場合、ifIndexは永続的ではありません。

Is it possible to set the ifAdminStatus?

SNMP で ifAdminStatus を設定することはできません。

Which MIB objects support SNMP set operations?

Junos OS の SNMP 設定操作は、以下の MIB テーブルと変数でサポートされています。

  • snmpCommunityTable

  • eventTable

  • alarmTable

  • snmpTargetAddrExtTable

  • jnxPingCtlTable

  • pingCtlTable

  • traceRouteCtlTable

  • jnxTraceRouteCtlTable

  • sysContact.0

  • sysName.0

  • sysLocation.0

  • pingMaxConcurrentRequests.0

  • traceRouteMaxConcurrentRequests.0

  • usmUserSpinLock

  • usmUserOwnAuthKeyChange

  • usmUserPublic

  • vacmSecurityToGroupTable (vacmGroupName、vacmSecurityToGroupStorageType、vacmSecurityToGroupStatus)

  • vacmAccessTable(vacmAccessContextMatch、vacmAccessReadViewName、vacmAccessWriteViewName、vacmAccessNotifyViewName、vacmAccessStorageType、vacmAccessStatus)

  • vacmViewSpinLock

  • vacmViewTreeFamilyTable (vacmViewTreeFamilyMask、vacmViewTreeFamilyType、vacmViewTreeFamilyStorageType、vacmViewTreeFamilyStatus)

Does Junos OS support remote monitoring (RMON)?

はい、Junos OS は RFC 2819、リモート ネットワーク監視管理情報ベースで定義されている RMON をサポートしています。ただし、リモート監視バージョン2(RMON 2)には対応していません。

Can I use SNMP to determine the health of the processes running on the Routing Engine?

はい、正常性監視機能を構成することで、SNMP を使用してルーティング エンジン プロセスの正常性を判断できます。ジュニパーネットワークスのデバイスでは、RMONのアラームとイベントが、NMSからのポーリングオーバーヘッドを減らすために必要なインフラストラクチャの多くを提供しています。ただし、特定の MIB オブジェクトを RMON アラームに構成するには、NMS の構成が必要です。そのために、デバイスに特化した専門知識や、監視アプリケーションのカスタマイズが必要になることがよくあります。また、監視が必要な MIB オブジェクトのインスタンスには、初期化時にのみ設定されるものや、実行時に変更されるものがあるため、事前に構成することはできません。

これらの問題に対処するため、ヘルスモニターでは、ファイルシステムの使用率、CPUの使用率、メモリ使用率などの一部のオブジェクトインスタンスセットに対して事前に定義済みの監視機能を提供するためにRMONアラームのインフラストラクチャが拡張されており、Junos OSソフトウェアプロセスなどの未知のオブジェクトまたは動的オブジェクトインスタンスへのサポートが含まれています。

正常性監視の構成を表示するには、show snmp health-monitor コマンドを使用します。

正常性監視を構成すると、表 1 に示すように特定のオブジェクト インスタンスの監視情報を利用できます。

表 1: 監視対象のオブジェクト インスタンス

オブジェクト

説明

jnxHrStoragePercentUsed.1

ルーターやスイッチで、以下のファイルシステムを監視します。/dev/ad0s1a:

これは、/ にマウントされたルート ファイル システムです。

jnxHrStoragePercentUsed.2

ルーターやスイッチで、以下のファイルシステムを監視します。/dev/ad0s1e:

これは、/config にマウントされた構成ファイル システムです。

jnxOperatingCPU (RE0)

ルーティング エンジン RE0 と RE1 の CPU 使用率を監視します。ルーティング エンジンに割り当てられるインデックス値は、シャーシ MIB がゼロベースまたは 1 ベースのどちらのインデックス方式を採用しているかによって異なります。インデックス方式は構成可能であるため、いつでもルーターが初期化されたときや構成が変更されたときには、正しいインデックスが特定されます。ルーターまたはスイッチにルーティング エンジンが 1 つしかない場合、CPU 値の取得に 5 回失敗すると、RE1 を監視するアラーム エントリーが削除されます。

jnxOperatingCPU (RE1)

jnxOperatingBuffer (RE0)

ルーティング エンジン RE0 と RE1 で使用可能なメモリの量を監視します。このオブジェクトのインデックスは jnxOperatingCPU と同じであるため、インデックス値はシャーシ MIB で使用されているインデックス方式に応じて調整されます。jnxOperatingCPU と同様に、ルーターやスイッチにルーティング エンジンが 1 つしかない場合、RE1 を監視するアラーム エントリーは削除されます。

jnxOperatingBuffer (RE1)

sysApplElmtRunCPU

Junos OSソフトウェアの各プロセスのCPU使用率を監視します。同じプロセスの複数のインスタンスを個別に監視して、インデックスを作成します。

sysApplElmtRunMemory

Junos OS ソフトウェアの各プロセスのメモリ使用量を監視します。同じプロセスの複数のインスタンスを個別に監視して、インデックスを作成します。

しきい値を超えたり、エラーが発生したりするヘルスモニターイベントに対して生成されるシステムログのエントリーには、汎用の SNMPD_RMON_EVENTLOG タグではなく、対応する HEALTHMONITOR タグが付けられます。ただし、正常性監視は汎用の RMON risingThresholdfallingThreshold トラップを送信します。

Are the Ping MIBs returned in decimal notation and ASCII?

はい、10進法とASCIIの両方をサポートしています。これはSNMPの標準的な実装です。すべての文字列はASCIIでエンコードされています。

以下の例では、Ping MIBを16進数で表示しています。

これは ASCII に変換されます。

Junos OS リリース 9.6 以降では、Junos OS CLI は、show snmp mib get | get-next | walk ascii コマンドを使用して ASCII 値を返します。

以下に、ASCIIオプションを使用した場合の出力例を示します。

以下に、ASCII オプションを使用しない場合の出力例を示します。

http://www.asciichart.com にあるような 10 進数の ASCII チャートを使って、10 進数と ASCII 値を変換できます。

Is IPv6 supported by the Ping MIB for remote operations?

いいえ、IPv6 はサポートされていません。

Is there an SNMP MIB to show Address Resolution Protocol (ARP) table information? Are both IP and MAC addresses displayed in the same table?

はい、Junos OS は、RFC 2011、SMIv2 を使用したインターネットプロトコル向け SNMPv2 管理情報ベースに記載されている標準 MIB ipNetToMediaTable をサポートしています。このテーブルは、IP アドレスとそれに対応する MAC アドレスのマッピングに使用されます。

Junos OS SNMP 構成に関する FAQ

このセクションには、Junos OS SNMP 構成に関するよくある質問とその回答が掲載されています。

Can the Junos OS be configured for SNMPv1 and SNMPv3 simultaneously?

はい、SNMP には後方互換性があるため、3 つのバージョンを同時に有効にできます。

Can I filter specific SNMP queries on a device?

はい、excludeinclude ステートメントを使って、デバイス上の特定のSNMPクエリーをフィルタリングできます。

以下に、コミュニティ test の .1.3.6.1.2.1.1 の下にあるすべての OID に対する読み書き操作をブロックする構成例を示します。

Can I change the SNMP agent engine ID?

はい、SNMP エージェントのエンジン ID は、デバイスの MAC アドレスや IP アドレスなど、任意の値に変更できます。ここでは、いくつかの例を紹介します。

以下の例は、デバイスの MAC アドレスを SNMP エージェント エンジン ID として使用する方法を示します。

以下の例は、デバイスの IP アドレスを SNMP エージェント エンジン ID として使用する方法を示します。

以下の例では、選択した値、AA(ここではデバイスの SNMP エージェント エンジン ID)を使用しています。

How can I configure a device with dual Routing Engines or a chassis cluster (SRX Series Services Gateways) for continued communication during a switchover?

継続的な通信を行う場合は、ルーティング エンジン間で SNMP 構成を同一にしてください。ただし、特に SNMPv3 を使用する場合は、各ルーティング エンジンに個別のルーティング エンジン ID を構成するのが最善です。

以下に、デュアル ルーティング エンジン デバイスのルーティング エンジンの構成例を示します。ルーティングエンジンIDには、各ルーティングエンジンのMACアドレスが設定されていることに留意してください。

以下に、デュアル ルーティング エンジン デバイスでの SNMPv3 構成例を示します。

How can I track SNMP activities?

SNMP トレース操作は、SNMP エージェントのアクティビティを追跡し、その情報をログ ファイルに記録します。

traceoptions の構成例は以下のようになります。

traceoptions flag all ステートメントが [edit snmp] 階層レベルに含まれる場合、以下のログファイルが作成されます。

  • snmpd

  • mib2d

  • rmopd

SNMPv3 に関する FAQ

このセクションには、SNMPv3 に関連するよくある質問とその回答が記載されています。

Why is SNMPv3 important?

SNMP v3は、他のバージョンのSNMPに比べてセキュリティが強化されています。データの認証と暗号化を提供します。管理ステーションからリモートサイトのデバイスを管理する場合、セキュリティの強化は重要です。

In my system, the MIB object snmpEngineBoots is not in sync between two Routing Engines in a dual Routing Engine device. Is this normal behavior?

はい、これは予期される動作です。各ルーティング エンジンが独自の SNMP プロセス(snmpd)を実行することで、各ルーティング エンジンは独自のエンジン ブーツを維持できます。ただし、両方のルーティングエンジンが同じエンジンIDを持ち、スイッチオーバープロセス時に snmpEngineBoots の値が小さい方のルーティングエンジンをプライマリルーティングエンジンとして選択した場合、プライマリルーティングエンジンの snmpEngineBoots 値は他のルーティングエンジンの snmpEngineBoots 値と同期します。

Do I need the SNMP manager engine object identifier (OID) for informs?

はい、認証にはSNMPマネージャーのエンジンOIDが必要で、これがないとインフォームは動作しません。

I see the configuration of informs under the [edit snmp v3] hierarchy. Does this mean I cannot use informs with SNMPv2c?

インフォームは、SNMPv2c で使用できます。以下の例は、あるデバイスにおける SNMPv3 インフォームの基本構成を示します(認証とプライバシは「なし」に設定されていることに留意してください)。

以下の例に示すように、[edit snmp v3 notify N1_all_tl1_informs]階層レベルのtypeステートメントの値をtrapに設定することで、SNMPv3インフォームをトラップに変換できます。

SNMPとジュニパーネットワークスのデバイスとの連携に関するFAQ

このセクションには、SNMP とジュニパーネットワークスのデバイスとのやり取りに関するよくある質問と回答が記載されています。

How frequently should a device be polled? What is a good polling rate?

1 秒あたりの SNMP ポール レートは、以下の 2 つの要素に依存するため、絶対的な数値を示すことは困難です。

  • プロトコル データユニット(PDU)内の変数バインディングの数

  • パケット転送エンジンからのインターフェイスの応答時間

パケット転送エンジンによる遅延が発生せず、PDU(Get リクエスト)ごとに 1 つの変数がある通常のシナリオでは、応答速度は毎秒 130 回以上になります。ただし、SNMP リクエスト PDU に複数の変数が含まれる場合(GetBulk リクエストでは 30~40)、1 秒あたりの応答数はかなり少なくなります。パケット転送エンジンの負荷はシステムごとに異なるため、デバイスをポーリングする頻度にもばらつきがあります。

多数のカウンター(特に統計情報)を頻繁にポーリングすると、デバイスが影響を受ける可能性があります。SNMP マネージャー上で、以下の最適化を行うことお勧めします。

  • 列単位ではなく行単位でポーリングを行います。

  • PDU あたりの変数バインディングの数を減らします。

  • ポーリングとディスカバリの間隔のタイムアウト値を大きくします。

  • SNMP プロセス(snmpd)の受信パケットレートを引き下げます。

デバイスの SNMP 応答を良くするために、Junos OS は以下を実行します。

  • 重複する SNMP リクエストをフィルタリングします。

  • SNMP クエリーの応答が遅いインターフェイスを除外します。

レート制限を判断する 1 つの方法は、show snmp statistics extensive コマンドからの Currently Active の数の増加に注目することです。

以下に、show snmp statistics extensive コマンドの出力例を示します。

Does SNMP open dynamic UDP ports? Why?

SNMPプロセスにより、さらに2つのポート(ソケット)が開きます。1つはIPv4用で、もう1つはIPv6用です。これにより、SNMP プロセスがトラップを送信できるようになります。

I am unable to perform a MIB walk on the ifIndex. Why is this?

アクセス レベルが not-accessible の変数バインディングや値は、SNMP MIBテーブル内の他の変数バインディングの一部となっているため、直接クエリーを実行することはできません。ifIndex のアクセス レベルは not-accessible です。そのため、これは変数バインディングの一部であり、直接アクセスすることはできません。ただし、変数バインディングを通じて ifIndex に間接的にアクセスできます。

I see SNMP_IPC_READ_ERROR messages when the SNMP process restarts on my system and also during Routing Engine switchover. Is this acceptable?

はい、SNMPプロセスの再起動時、システムの再起動時、ルーティングエンジンのスイッチオーバー時に SNMP_IPC_READ_ERROR メッセージが表示されることは問題ありません。すべてのプロセスが正常に立ち上がり、SNMP動作が正常に行われている場合は、これらのメッセージは無視してかまいません。

What is the source IP address used in the response PDUs for SNMP requests? Can this be configured?

SNMPリクエストの応答PDUで使用される送信元IPアドレスは、宛先に到達するための発信インターフェイスのIPアドレスです。送信元 IP アドレスを応答用に構成することはできません。構成できるのは、トラップ用のみです。

SNMP トラップとインフォームに関する FAQ

このセクションには、SNMPトラップとインフォームに関するよくある質問と回答が掲載されています。

Does the Junos OS impose any rate limiting on SNMP trap generation?

Junos OSは、生成および送信されるトラップの数を制限するために、トラップキューイングメカニズムを実装しています。

トラップの配信に失敗した場合、トラップはキューに戻され、キューの配信試行カウンターと次の配信試行タイマーがリセットされます。その後の試行は、1 分、2 分、4 分、8 分と累進的な間隔で行われます。試行の最大遅延は 8 分、最大試行回数は 10 回です。10 回失敗すると、宛先のキューとキュー内のすべてのトラップが削除されます。

Junos OS には、特定のスロットル間隔(デフォルトは 5 秒)で送信されるトラップの数(デフォルトは 500 トラップ)を制御するスロットル閾値機構もあります。これにより、特にインターフェイスのステータス変更により大量のトラップが生成される場合、トラップ トラフィックの一貫性を確保できます。

スロットル間隔は、最初のトラップがスロットルに到着したときに始まります。スロットル閾値内のトラップはすべて処理され、閾値を超えるトラップはキューに入れられます。すべてのトラップ キュー(スロットル キューと宛先キュー)の最大サイズは 40,000 トラップです。1 つのキューの最大サイズは 20,000 トラップです。トラップがスロットルキューに追加された場合、またはスロットル キューが最大サイズを超えた場合、トラップは宛先キューの先頭に移動します。宛先キューからのさらなるトラップ送信の試みが 30 秒間停止し、その後、宛先キューがトラップの送信を再開します。

注:

ジュニパーネットワークス EX シリーズ イーサネット スイッチの場合、すべてのトラップ キュー(スロットル キューと宛先キュー)の最大サイズは 1,000 トラップです。EX シリーズのキュー 1 つの最大サイズは 500 トラップです。

I did not see a trap when I had a syslog entry with a critical severity. Is this normal? Can it be changed?

クリティカルな重大度の syslog エントリすべてがトラップというわけではありません。ただし、event-options ステートメントを使って、任意の syslog エントリーをトラップに変換できます。

以下の例では、rpd_ldp_nbrdown syslog エントリー メッセージのエラーが発生するたびに jnxSyslogTrap を構成しています。

Are SNMP traps compliant with the Alarm Reporting Function (X.733) on the Junos OS?

いいえ、Junos OS の SNMP トラップは X.733 に準拠していません。

Can I set up filters for traps or informs?

トラップとインフォームは、トラップのカテゴリーとオブジェクト識別子に基づいてフィルタリングできます。categories ステートメントを [edit snmp trap-group trap-group] 階層レベルで使用して、受信するトラップのカテゴリーをホストごとに指定できます。このオプションは、Junos OS の特定モジュールのみを監視する場合に使用します。

以下の例は、linkvrrp-eventsservicesおよびotn-alarmsトラップのみを受信する場合の構成例を示しています。

Junos OS には、オブジェクト識別子に基づいて特定のトラップまたはトラップのグループをフィルタリングする、より高度なフィルタオプション(notify-filter)もあります。

以下の構成例に示すように、SNMPv3 構成では、SNMPv1 および SNMPv2 トラップのフィルタリングと、ジュニパーネットワークスのエンタープライズ固有の構成管理トラップの除外もサポートしています。

Can I simulate traps on a device?

はい、request snmp spoof-trap trap name コマンドを使用して、デバイスのトラップを通常受信するNMSへのトラップをシミュレートできます。また、variable-bindings パラメーターを使って必要な値を追加することもできます。

以下の例では、変数バインディングを使用してローカルNMSへのトラップをシミュレートする方法を示しています。

How do I generate a warm start SNMPv1 trap?

通常の状態で SNMP プロセスを再起動したとき、システムのアップタイムが 5 分を超えると、ウォーム スタート トラップが生成されます。システムのアップタイムが 5 分未満の場合、コールド スタート トラップが生成されます。

The NMS sees only the MIB OIDs and numbers, but not the names of the SNMP traps. Why?

NMSは、トラップ名などのSNMPトラップの詳細を認識する前に、まずMIBをコンパイルして理解してから、MIB OIDを解析する必要があります。

In the Junos OS, how can I determine to which category a trap belongs?

一般的なトラップとそのカテゴリーのリストについては、Junos OS でサポートされるエンタープライズ固有の SNMP トラップを参照してください。

Can I configure a trap to include the source IP address?

はい、trap-options コマンドを使用して、送信元 IP アドレスの source-addressrouting-instance、または logical-instance の名前を構成できます。

Can I create a custom trap?

はい、jnxEventTrap イベントスクリプトを使って、必要に応じてカスタマイズしたトラップを作成できます。

次の例では、UI_COMMIT_NOT_CONFIRMED イベントを受信すると Junos OS のオペレーション(op)スクリプトがトリガーされます。Junos OS の op スクリプトは、イベントの完全なメッセージを照合して、SNMP トラップを生成します。

例:Junos OS Opスクリプト

カスタマイズしたトラップを作成した後、トラップ受信後に実行するアクションをデバイスに伝えるために、デバイスにポリシーを構成する必要があります。

以下に、[edit event-options] 階層の下に構成されたポリシーの例を示します。

Can I disable link up and link down traps on interfaces?

はい、リンク アップとリンク ダウンのトラップは、インターフェイス構成で無効にできます。トラップを無効にするには、no-traps ステートメントを、物理インターフェイスと論理インターフェイス用の [edit interfaces interface-name unit logical-unit-number] および [edit logical-systems logical-system-name interfaces interface-name unit logical-unit-number] 階層で使用します。

I see the link up traps on logical interfaces, but I do not see the link down traps. Is this normal behavior?

イーサネットとATMタイプのインターフェイスでは、同じ根本原因によるフラッドアラームを防ぐために物理インターフェイスがダウンしている場合、Junos OSは論理インターフェイス用のリンクダウントラップを送信しません。ただし、物理インターフェイスと論理インターフェイスが復旧すると、リンク アップを示すトラップが送信されます。これは、物理インターフェイスが立ち上がると、論理インターフェイスも立ち上がるとは限らないためです。

PPP カプセル化された SONET タイプのインターフェイスでは、物理インターフェイスがダウンした場合、Junos OS は論理インターフェイス向けのリンクダウントラップを送信します。物理インターフェイスと論理インターフェイスが復旧すると、リンクアップを示すトラップが物理と論理の両方のインターフェイスに送信されます。

HDLC カプセル化された SONET タイプのインターフェイスでは、物理インターフェイスがダウンしていても、Junos OS は論理インターフェイスのリンク ダウン トラップを送信しません。物理インターフェイスと論理インターフェイスが復旧すると、リンクアップを示すトラップが物理と論理の両方のインターフェイスに送信されます。

PPP カプセル化されたチャネル化インターフェイスでは、物理インターフェイスがダウンした場合、Junos OS は論理インターフェイスのリンク ダウン トラップを送信します。物理インターフェイスと論理インターフェイスが復旧すると、リンクアップを示すトラップが物理と論理の両方のインターフェイスに送信されます。

HDLCカプセル化されたチャネル化インターフェイスでは、物理インターフェイスがダウンしていても、Junos OSは論理インターフェイスのリンクダウントラップを送信しません。物理インターフェイスと論理インターフェイスが復旧すると、リンクアップを示すトラップが物理と論理の両方のインターフェイスに送信されます。

Junos OS デュアル ルーティング エンジン構成に関する FAQ

このセクションには、デュアル ルーティング エンジンの構成に関するよくある質問とその回答が掲載されています。

通信の継続を意図して構成する場合、ルーティング エンジン間で SNMP 構成を同一にする必要があります。ただし、SNMPv3 を使用する場合は、各ルーティング エンジンに個別のルーティング エンジン ID を構成することをお勧めします。

In my system, the MIB object snmpEngineBoots is not in sync between two Routing Engines in a dual Routing Engine device. Is this normal behavior?

はいこれは正常な動作です。各ルーティング エンジンが独自の SNMP プロセス(snmpd)エージェントを実行することで、各ルーティング エンジンは独自のエンジン ブーツを維持できます。

Is there a way to identify that an address belongs to RE0, RE1, or the master Routing Engine management interface (fxp0) by looking at an SNMP walk?

いいえ。デバイス上で SNMP ウォークを実行すると、プライマリ ルーティング エンジンの管理インターフェイス アドレスのみが表示されます。

What is the best way to tell if the current IP address belongs to fxp0 or a Routing Engine, from a CLI session?

ルーティング エンジンは fxp0 インターフェイスでマッピングされます。つまり、RE0 をクエリーすると、ifTable は RE0 の fxp0 インターフェイス アドレスのみを報告します。同様に、RE1 をクエリーすると、ifTable は RE1 の fxp0 インターフェイス アドレスのみを報告します。

When there is a failover, the master hostname is changed since the hostname belongs to the Routing Engine. Is this correct?

はい同じホスト名を構成することも、異なるホスト名を構成することもできます。どちらでも構いません。

プライマリ IP アドレスのみが構成されていて(例:192.168.2.5)、sysDescr.0 オブジェクトには両方のルーティング エンジンで同じ文字列が構成されている場合、スイッチオーバー後も sysDescr.0 オブジェクトは同じ値を返します。以下の例は、snmpget コマンドを使用して得られる結果を示します。

ルーティング インスタンスの SNMP サポートに関する FAQ

このセクションには、SNMP によるルーティング インスタンスのサポートに関する、よくある質問とその回答が掲載されています。

Can the SNMP manager access data for routing instances?

はい、Junos OS では、すべてのルーティング インスタンスの SNMP マネージャーが、対応するルーティング インスタンスや論理システム ネットワークに関連する SNMP データをリクエストおよび管理できます。

クライアントの出自に応じて、ルーティングインスタンスの動作は以下の2通りに分かれます。

  • デフォルト以外のルーティング インスタンスからのクライアントは、所属する論理システム ネットワーク上でのみ、MIB オブジェクトにアクセスして SNMP 操作を行うことができます。

  • デフォルトのルーティングインスタンスからのクライアントは、すべてのルーティングインスタンスと論理システムネットワークに関連する情報にアクセスできます。

ルーティング インスタンスは、SNMPv3 リクエストのコンテキスト フィールド、または SNMPv1 や SNMPv2c リクエストのコミュニティ文字列でエンコードされたもので識別されます。

コミュニティ文字列でエンコードされた場合、ルーティング インスタンス名が最初に表示され、実際のコミュニティ文字列とは @ 文字で区切られます。

@ 文字を含む有効なコミュニティ文字列との競合を避けるため、典型的なコミュニティ文字列処理が失敗した場合にのみ、コミュニティが解析されます。例えば、RI という名前のルーティングインスタンスが構成されている場合、RI@public の付いたSNMPリクエストは RI ルーティングインスタンスのコンテキスト内で処理されます。アクセス制御(ビュー、送信元アドレス制限、アクセス権を含む)は、実際のコミュニティ文字列(@文字以降のデータ セット、ここではpublic)に基づいて適用されます。ただし、コミュニティ文字列 RI@public が構成されている場合は、そのコミュニティに従ってPDUが処理され、埋め込まれたルーティングインスタンス名は無視されます。

論理システムは、物理ルーターのアクションのサブセットを実行し、独自のルーティングテーブル、インターフェイス、ポリシー、ルーティングインスタンスを保持します。論理システム内でルーティング インスタンスが定義されると、論理システム名はルーティング インスタンスと一緒にスラッシュ(/)で区切ってエンコードする必要があります。例えば、ルーティングインスタンス RI が論理システム LS 内で構成されている場合、そのルーティングインスタンスは、コミュニティ文字列内で LS/RI@public としてエンコードする必要があります。ルーティング インスタンスが論理システム(デフォルトの論理システム内)の外部で構成されている場合、論理システム名(/ 文字)は必要ありません。

また、論理システムを作成すると、論理システム内に default という名前のデフォルトルーティングインスタンスが常に作成されます。この名前を、そのルーティング インスタンスのデータ(例:LS/default@public)のクエリーに使用してください。SNMPv3リクエストの場合は、logical system/routing instance の名前はコンテキストフィールド内で直接識別されます。

Can I access a list of all routing instances on a device?

はい、SNMP-VIEW-BASED-ACM MIB の vacmContextName オブジェクトを使用して、デバイス上のすべてのルーティング インスタンスのリストにアクセスできます。SNMP では、各ルーティング インスタンスが VACM コンテキストになります。これが、ルーティング インスタンスが vacmContextName オブジェクトに表示される理由です。

Can I access a default routing instance from a client in another logical router or routing instance?

いいえ、SNMPエージェントは、接続されている論理ルーターのデータにしかアクセスできません。

SNMP カウンターに関する FAQ

このセクションには、SNMP カウンターに関するよくある質問とその回答が掲載されています。

Which MIB should I use for interface counters?

SNMP によるインターフェイス管理は、ifTable およびその拡張である ifXTable という 2 つのテーブルに基づいて行われます。両者の詳細は、RFC 1213、TCP/IPベースのインターネットのネットワーク管理向けの管理情報ベース:MIB-II および RFC 2233、SMIv2 を使用したインターフェイス グループ MIB に記載されています。

インターフェイスは、メディアによって複数のレイヤーを持つことがあり、サブレイヤーごとにテーブル内の行が異なります。上位レイヤーと下位レイヤーとの関係は、ifStackTable で説明されています。

ifTable は、インバウンドとアウトバウンドのオクテット(ifInOctets/ifOutOctets)、パケット(ifInUcastPkts/ifOutUcastPkts、ifInNUcastPkts /ifOutNUcastPkts)、エラー、破棄の 32 ビット カウンターを定義します。

ifXTable は、インバウンドとアウトバウンドのオクテット(ifHCInOctets/ifHCOutOctets)およびインバウンド パケット(ifHCInUcastPkts)に対して、高容量(HC)カウンターとも呼ばれる同様の 64 ビット カウンターを提供します。

When should 64-bit counters be used?

64ビットカウンターは、低容量と高容量の両方のコンポーネントの統計情報を含んでいるため、常に使用することをお勧めします。

Are the SNMP counters ifInOctets and ifOutOctets the same as the command reference show interfaces statistics in and out counters?

はい、これらは同じですが、ルーターの起動時に SNMP が有効になっている場合に限ります。ジュニパーネットワークスのデバイスの電源を入れてからSNMPを有効にした場合、SNMPカウンターは0から始まります。SNMPカウンターが、show コマンド出力から自動的に統計情報を受け取ることはありません。同様に、clear statistics コマンドを使用しても、SNMP カウンターが収集した統計情報はクリアされないため、両プロセスで表示されるデータに相違が生じる可能性があります。

Do the SNMP counters ifInOctets and ifOutOctets include the framing overhead for Point-to-Point Protocol (PPP) and High-Level Data Link Control (HDLC)?

はい

トラップとインフォームの管理

以下のセクションには、SNMP通知の管理に関するいくつかのヒントが含まれます。

SysLogイベントに基づいたトラップの生成

イベントポリシーには、システムログメッセージに基づいてイベントのトラップを発生させるアクションを含めることができます。この機能により、重要なシステムログメッセージが発生した場合、SNMPトラップベースのアプリケーションの通知が可能になります。対応するトラップがないシステムログメッセージをトラップに変換できます。システムログメッセージではなく、ネットワーク管理システムトラップを使用してネットワークを監視する場合、この機能を使用して、すべての主要なイベントの通知を確認できます。

イベントの受信時にトラップを発生させるポリシーを設定するには、階層レベルに以下のステートメント [edit event-options policy policy-name]を含めます。

以下の例は、イベントのトラップを発生させるための設定の構成例を示していますui_mgd_terminate

SysLogイベントに基づいたトラップの生成

トラップカテゴリーに基づいたトラップのフィルタリング

SNMPトラップは、多くのカテゴリーに分類されます。Junos OSには、[edit snmp trap-group trap-group]階層レベルでの設定オプションcategoriesが用意されており、特定のホストで受信したいトラップのカテゴリーを指定できます。このオプションは、Junos OSの特定のモジュールのみを監視したい場合に使用できます。

以下の例は、linkvrrp-eventsservicesおよびotn-alarmsトラップのみを受信する場合の構成例を示しています。

オブジェクト識別子に基づいたトラップのフィルタリング

Junos OSには、そのオブジェクト識別子に基づいて特定のトラップを除外できる、より高度なフィルターオプションも用意されています。notify-filterオプションを使用して、特定のトラップまたはトラップグループのフィルターを除外できます。

以下の例は、ジュニパーネットワークスエンタープライズ固有の構成管理トラップを除く構成例を示しています(以下の例に示すように、SNMPv3設定ではSNMPv1およびSNMPv2トラップのフィルタリングもサポートすることに注意してください)。