SNMPの概要と設定
SNMP(Simple Network Management Protocol、簡易ネットワーク管理プロトコル)を使用すると、ネットワーク管理者から各種情報を取得できます。 Merakiでは、SNMPポーリングを使用することで、ダッシュボードから、またはMRアクセス ポイント、MSスイッチ、およびMXセキュリティ アプライアンスから直接、情報を収集できます。サード パーティ製のネットワーク モニタリング ツールではSNMPを使用して特定のパラメータをモニタリングできます。このドキュメントでは、ダッシュボード設定の概要と収集可能な情報について説明します。
概要
以下の情報をダッシュボードからポーリングできます。
- デバイスのMACアドレス
- デバイスのシリアル番号
- デバイス名
- デバイスのステータス(オンラインまたはオフライン)
- デバイスへの最終アクセス - 日時
- メッシュのステータス(ゲートウェイまたはリピータ)
- パブリックIPアドレス
- 製品コード(例:MR18-HW)
- 製品の説明(例:Merakiクラウドコントローラ802.11n AP)
- デバイスが存在するネットワークの名前(ダッシュボード ネットワーク)
- 各物理インターフェースで入力/出力したパケット/バイト数
注記:具体的な情報は、3つの製品ライン間で異なります。上記の情報すべてを、デバイスからローカルにポーリングできるわけではありません。
標準MIB
Merakiデバイスは、次のMIBのサブセット内に属するOIDの大部分をサポートしています。
- SNMPv2-MIB .1.3.6.1.2.1.1
- IF-MIB .1.3.6.1.2.1
これらのMIBは汎用規格であるため、大半のネットワーク モニタリング システムで使用できます。
独自MIB
Meraki固有の追加情報は、MERAKI-CLOUD-CONTROLLER-MIB(Organization(オーガナイゼーション) > Settings(設定) > SNMP)にあります。 このMIBは、Merakiデバイスをローカルでポーリングするためではなく、ダッシュボードをポーリングするために使用します。ローカル デバイスをポーリングする場合のオプションについては、上記の標準MIBを参照してください。
設定
ダッシュボードのOrganization(オーガナイゼーション) > Settings(設定)> SNMPで、SNMPポーリングを設定できます。SNMPを有効にすると、「enabled(有効)」設定の下に直接定義されているホストにSNMPリクエストを送信できます。 また、コミュニティ ストリングも定義され、SNMPリクエストを介して情報を抽出するためのサンプル コマンドが表示されます。
以下は、SNMPのダッシュボード設定のスクリーンショットです。
注記:すべてのSNMPリクエストで、ホスト名としてsnmp.meraki.comを使用する必要があります。nXXX.meraki.comの形式(n123.meraki.comなど)を使用するオーガナイゼーション固有のホスト名の使用は避けてください。
SNMPアクセスを特定の送信元に制限するために、IP制限を設定できます。 SNMPバージョン1および2はコミュニティ ストリングをクリア テキストで送信します。そのため、IP制限は、コミュニティ ストリングが別のユーザによって傍受または取得されて不正なSNMPアクセスに利用されるのを防ぐのに役立ちます。
注記:Meraki SNMPアクセスはGETリクエストのみをサポートしているため、SNMPを使用してダッシュボード設定に変更を加えることはできません。Merakiは読み取り専用コミュニティ ストリング タイプを使用します。ダッシュボードをポーリングする際は、次を利用できます: GetRequestおよびGetNextRequest snmp GETメソッド。
個々のMerakiデバイスをローカルでポーリングすることもできます。 このシナリオでは、SNMPトラフィックはローカル ネットワーク内に留まるため、ネットワーク管理システムから各デバイスをポーリングする必要があります。 これらの設定は、Network-wide(ネットワーク全体) > General(一般) > Reporting(レポーティング)の下にあります。
SNMPを使用して個々のデバイスを直接ポーリングする場合は、SNMP v1/v2cまたはv3のどちらかを選択できます。 バージョン3では、マネージャ(ネットワーク管理システム)とエージェント(Merakiデバイス)間の通信を暗号化する機能が追加されます。SNMP v1/v2cはコミュニティ ストリンスをプレーン テキストで送信します。v3を選択した場合は、ユーザ名とパスワードを設定する必要があります。v3を使用する場合、Cisco Merakiデバイスは認証にSHA1を、プライバシ―の保護にDESを使用します。設定済みのパスワードが両方で使用されます。
注記:リピータにはローカルLANのIPアドレスがないため、SNMPを使用してリピータをポーリングすることはできません
ネットワーク外部からのポーリング
デフォルトでは、ローカルIPネットワークの外部からSNMPを介してMerakiデバイスをポーリングすることはできません。ただし、コミュニティ ストリングの設定後に、リモートIPホワイトリストからのポーリングを許可するようにMXを設定できます。これは、Organization(オーガナイゼーション) > Configure(設定) > Settings(設定) > SNMPで設定します。
SNMPのテスト
さまざまなオペレーティング システムでSNMP機能をテストするためのツールは複数存在します。 Windowsベースのオペレーティング システムでは、net-snmpと呼ばれるオープン ソース ツールを使用できます。 net-snmpをインストールし、クラウド コントローラへのSNMPアクセスをテストするには、次の手順に従ってください。
- net-snmpをダウンロードして、インストールします
- ダッシュボードから適切なnet-snmpディレクトリにMIBファイルを保存します(Organization(オーガナイゼーション) > Settings(設定) > SNMP > Download MIB(MIBをダウンロード))。デフォルトのディレクトリは、C:\usr\share\snmp\mibs\です
- サンプルのsnmp walkをコントローラからコピーし(Organization(オーガナイゼーション) > Settings(設定) > SNMP)、コマンド プロンプトに貼り付けます
Linuxベースのシステムでは、同じ結果をアーカイブするためにSNMPパッケージをインストールできます。Debianベースのシステムでは、次の手順に従ってください。
- snmpdをインストールします。apt-getを使用するシステムの場合:
sudo apt-get install snmpd
- ダッシュボードから適切な snmpdディレクトリにMIBファイルを保存します(Organization(オーガナイゼーション) > Settings(設定) > SNMP > Download MIB(MIBをダウンロード)
- サンプルのsnmpwalkをコントローラからコピーし(Organization(オーガナイゼーション) > Settings(設定) > SNMP)、ターミナルに貼り付けます
個々のMRへのSNMPのテストはまったく同じですが、個々のMRに対してsnmpwalkを使用します。 たとえば、2つのMRアクセス ポイントがある場合は、snmpwalkを2回使用する必要があります(MR 1 IP:192.168.100.15、MR2 IP:192.168.100.16):
snmpwalk -v2c -t 10 -c meraki 192.168.100.15:161 snmpwalk -v2c -t 10 -c meraki 192.168.100.16:161
snmpwalkコマンドは、設定したSNMPのバージョンに基づいて変更する必要があります。 上記の例では、SNMP v2cが、コミュニティ ストリング「meraki」とともに使用され、ポートはデフォルトの161のままです。
次のコマンドは、SNMPv3のsnmpwalkの例で、Network-wide(ネットワーク全体) > General(一般)で設定したユーザ名とパスフレーズが使用されています。
snmpwalk -v3 -t 10 -a sha -A <passphrase> -u <username> -x des -X <passphrase> -l authpriv <IP address>
SNMPタイムアウト
一部の環境では、SNMPエージャントが最初のクエリを送信して、オーガナイゼーションのデバイスのデータベースを構築するまでに数秒かかる場合があります。エージャントが応答するための十分な時間を設けるために、上記のコマンド例では、タイムアウトを10秒に設定しています。WhatsUp Goldなどの独自のネットワーク モニタリング ソフトウェアを使用している場合、SNMPタイムアウトも設定してください。デフォルトでは短すぎることが多いためです。
出力例
以下は、ローカルMR 16に対してローカルに実行されたsnmpwalkコマンドの出力例です。
sysadmin@ubuntu:~$ snmpwalk -v2c -c meraki 192.168.100.15:161 iso.3.6.1.2.1.1.1.0 = STRING: "Meraki MR16 Cloud Managed AP" iso.3.6.1.2.1.1.2.0 = OID: iso.3.6.1.4.1.29671.2.13 iso.3.6.1.2.1.1.5.0 = STRING: "MR16" iso.3.6.1.2.1.1.9.1.2.1 = OID: iso.3.6.1.6.3.1 iso.3.6.1.2.1.1.9.1.2.2 = OID: iso.3.6.1.6.3.16.2.2.1 iso.3.6.1.2.1.1.9.1.2.3 = OID: iso.3.6.1.2.1.31 iso.3.6.1.2.1.1.9.1.2.4 = OID: iso.2.840.10036 iso.3.6.1.2.1.1.9.1.3.1 = STRING: "The MIB module for SNMPv2 entities" iso.3.6.1.2.1.1.9.1.3.2 = STRING: "View-based Access Control Model for SNMP." iso.3.6.1.2.1.1.9.1.3.3 = STRING: "The MIB module to describe generic objects for network interface sub-layers" iso.3.6.1.2.1.1.9.1.3.4 = STRING: "The MIB module for managing 802.11 implementations" iso.3.6.1.2.1.1.9.1.4.1 = Timeticks: (0) 0:00:00.00 iso.3.6.1.2.1.1.9.1.4.2 = Timeticks: (1) 0:00:00.01 iso.3.6.1.2.1.1.9.1.4.3 = Timeticks: (6) 0:00:00.06 iso.3.6.1.2.1.1.9.1.4.4 = Timeticks: (6) 0:00:00.06 iso.3.6.1.2.1.2.1.0 = INTEGER: 3 iso.3.6.1.2.1.2.2.1.1.1 = INTEGER: 1 iso.3.6.1.2.1.2.2.1.1.2 = INTEGER: 2 iso.3.6.1.2.1.2.2.1.1.3 = INTEGER: 3 iso.3.6.1.2.1.2.2.1.2.1 = STRING: "wired0" iso.3.6.1.2.1.2.2.1.2.2 = STRING: "wifi0" iso.3.6.1.2.1.2.2.1.2.3 = STRING: "wifi1" iso.3.6.1.2.1.2.2.1.3.1 = INTEGER: 6 iso.3.6.1.2.1.2.2.1.3.2 = INTEGER: 71 iso.3.6.1.2.1.2.2.1.3.3 = INTEGER: 71 iso.3.6.1.2.1.2.2.1.4.1 = INTEGER: 0 iso.3.6.1.2.1.2.2.1.4.2 = INTEGER: 0 iso.3.6.1.2.1.2.2.1.4.3 = INTEGER: 0 iso.3.6.1.2.1.2.2.1.5.1 = Gauge32: 0 iso.3.6.1.2.1.2.2.1.5.2 = Gauge32: 0 iso.3.6.1.2.1.2.2.1.5.3 = Gauge32: 0 iso.3.6.1.2.1.2.2.1.6.1 = Hex-STRING: 00 18 0A 34 36 C4 iso.3.6.1.2.1.2.2.1.6.2 = Hex-STRING: 00 18 0A 34 36 C4 iso.3.6.1.2.1.2.2.1.6.3 = Hex-STRING: 02 18 1A 34 36 C4 iso.3.6.1.2.1.2.2.1.7.1 = INTEGER: 1 iso.3.6.1.2.1.2.2.1.7.2 = INTEGER: 1 iso.3.6.1.2.1.2.2.1.7.3 = INTEGER: 1 iso.3.6.1.2.1.2.2.1.8.1 = INTEGER: 1 iso.3.6.1.2.1.2.2.1.8.2 = INTEGER: 1 iso.3.6.1.2.1.2.2.1.8.3 = INTEGER: 1 iso.3.6.1.2.1.2.2.1.9.1 = Timeticks: (0) 0:00:00.00 iso.3.6.1.2.1.2.2.1.9.2 = Timeticks: (0) 0:00:00.00 iso.3.6.1.2.1.2.2.1.9.3 = Timeticks: (0) 0:00:00.00 iso.3.6.1.2.1.2.2.1.10.1 = Counter32: 77152729 iso.3.6.1.2.1.2.2.1.10.2 = Counter32: 70138554 iso.3.6.1.2.1.2.2.1.10.3 = Counter32: 17035160 iso.3.6.1.2.1.2.2.1.11.1 = Counter32: 0 iso.3.6.1.2.1.2.2.1.11.2 = Counter32: 0 iso.3.6.1.2.1.2.2.1.11.3 = Counter32: 0 iso.3.6.1.2.1.2.2.1.12.1 = Counter32: 0 iso.3.6.1.2.1.2.2.1.12.2 = Counter32: 0 iso.3.6.1.2.1.2.2.1.12.3 = Counter32: 0 iso.3.6.1.2.1.2.2.1.13.1 = Counter32: 0 iso.3.6.1.2.1.2.2.1.13.2 = Counter32: 0 iso.3.6.1.2.1.2.2.1.13.3 = Counter32: 0 iso.3.6.1.2.1.2.2.1.14.1 = Counter32: 0 iso.3.6.1.2.1.2.2.1.14.2 = Counter32: 0 iso.3.6.1.2.1.2.2.1.14.3 = Counter32: 0 iso.3.6.1.2.1.2.2.1.16.1 = Counter32: 16102848 iso.3.6.1.2.1.2.2.1.16.2 = Counter32: 35646246 iso.3.6.1.2.1.2.2.1.16.3 = Counter32: 1540911 iso.3.6.1.2.1.2.2.1.17.1 = Counter32: 0 iso.3.6.1.2.1.2.2.1.17.2 = Counter32: 97878 iso.3.6.1.2.1.2.2.1.17.3 = Counter32: 2728 iso.3.6.1.2.1.2.2.1.18.1 = Counter32: 0 iso.3.6.1.2.1.2.2.1.18.2 = Counter32: 0 iso.3.6.1.2.1.2.2.1.18.3 = Counter32: 0 iso.3.6.1.2.1.2.2.1.19.1 = Counter32: 0 iso.3.6.1.2.1.2.2.1.19.2 = Counter32: 0 iso.3.6.1.2.1.2.2.1.19.3 = Counter32: 0 iso.3.6.1.2.1.2.2.1.20.1 = Counter32: 0 iso.3.6.1.2.1.2.2.1.20.2 = Counter32: 0 iso.3.6.1.2.1.2.2.1.20.3 = Counter32: 0 iso.3.6.1.2.1.2.2.1.21.1 = Gauge32: 0 iso.3.6.1.2.1.2.2.1.21.2 = Gauge32: 0 iso.3.6.1.2.1.2.2.1.21.3 = Gauge32: 0 iso.3.6.1.2.1.2.2.1.22.1 = OID: ccitt.0 iso.3.6.1.2.1.2.2.1.22.2 = OID: ccitt.0 iso.3.6.1.2.1.2.2.1.22.3 = OID: ccitt.0 iso.3.6.1.2.1.31.1.1.1.1.1 = STRING: "wired0" iso.3.6.1.2.1.31.1.1.1.1.2 = STRING: "wifi0" iso.3.6.1.2.1.31.1.1.1.1.3 = STRING: "wifi1" iso.3.6.1.2.1.31.1.1.1.2.1 = Counter32: 0 iso.3.6.1.2.1.31.1.1.1.2.2 = Counter32: 0 iso.3.6.1.2.1.31.1.1.1.2.3 = Counter32: 0 iso.3.6.1.2.1.31.1.1.1.3.1 = Counter32: 0 iso.3.6.1.2.1.31.1.1.1.3.2 = Counter32: 0 iso.3.6.1.2.1.31.1.1.1.3.3 = Counter32: 0 iso.3.6.1.2.1.31.1.1.1.4.1 = Counter32: 0 iso.3.6.1.2.1.31.1.1.1.4.2 = Counter32: 0 iso.3.6.1.2.1.31.1.1.1.4.3 = Counter32: 0 iso.3.6.1.2.1.31.1.1.1.5.1 = Counter32: 0 iso.3.6.1.2.1.31.1.1.1.5.2 = Counter32: 0 iso.3.6.1.2.1.31.1.1.1.5.3 = Counter32: 0 iso.3.6.1.2.1.31.1.1.1.6.1 = Counter64: 77152729 iso.3.6.1.2.1.31.1.1.1.6.2 = Counter64: 70138621 iso.3.6.1.2.1.31.1.1.1.6.3 = Counter64: 17035162 iso.3.6.1.2.1.31.1.1.1.7.1 = Counter64: 0 iso.3.6.1.2.1.31.1.1.1.7.2 = Counter64: 0 iso.3.6.1.2.1.31.1.1.1.7.3 = Counter64: 0 iso.3.6.1.2.1.31.1.1.1.8.1 = Counter64: 0 iso.3.6.1.2.1.31.1.1.1.8.2 = Counter64: 0 iso.3.6.1.2.1.31.1.1.1.8.3 = Counter64: 0 iso.3.6.1.2.1.31.1.1.1.9.1 = Counter64: 0 iso.3.6.1.2.1.31.1.1.1.9.2 = Counter64: 0 iso.3.6.1.2.1.31.1.1.1.9.3 = Counter64: 0 iso.3.6.1.2.1.31.1.1.1.10.1 = Counter64: 16102848 iso.3.6.1.2.1.31.1.1.1.10.2 = Counter64: 35646309 iso.3.6.1.2.1.31.1.1.1.10.3 = Counter64: 1540911 iso.3.6.1.2.1.31.1.1.1.11.1 = Counter64: 0 iso.3.6.1.2.1.31.1.1.1.11.2 = Counter64: 97878 iso.3.6.1.2.1.31.1.1.1.11.3 = Counter64: 2728 iso.3.6.1.2.1.31.1.1.1.12.1 = Counter64: 0 iso.3.6.1.2.1.31.1.1.1.12.2 = Counter64: 0 iso.3.6.1.2.1.31.1.1.1.12.3 = Counter64: 0 iso.3.6.1.2.1.31.1.1.1.13.1 = Counter64: 0 iso.3.6.1.2.1.31.1.1.1.13.2 = Counter64: 0 iso.3.6.1.2.1.31.1.1.1.13.3 = Counter64: 0 iso.3.6.1.2.1.31.1.1.1.15.1 = Gauge32: 0 iso.3.6.1.2.1.31.1.1.1.15.2 = Gauge32: 0 iso.3.6.1.2.1.31.1.1.1.15.3 = Gauge32: 0 iso.3.6.1.2.1.31.1.1.1.18.1 = "" iso.3.6.1.2.1.31.1.1.1.18.2 = "" iso.3.6.1.2.1.31.1.1.1.18.3 = ""
SNMPが適切に機能していることを確認した後、ダッシュボードとMRのどちらか、または両方をポーリングするようにネットワーク管理システム(NMS)を設定できます。 新しいマネージド デバイス(MR/ダッシュボード)を追加するための設定手順については、NMSのドキュメンテーションを参照してください。
SNMPトラップ
SNMPトラップにより、特定のネットワーク シナリオでリアルタイムにアラートを通知できます。SNMPトラップは常に、Merakiクラウドから転送されます。トラップの詳細なリストは、Meraki MIBにあります。SNMPトラップは認証にSHA1を、プライバシー保護にAESを使用します。
注記: SNMPトラップ内の変数の順序は、予期した順序と異なる場合があります。管理者は、特定の変数順序に依存しているパーサーを設定する前に、トラップ メッセージ自体を確認する必要があります。
トラップの有効化
オーガナイゼーションで機能を有効にするには、Merakiサポートに問い合わせてください。次に移動します:Network-wide(ネットワーク全体) > Alerts(アラート)。 SNMP traps(SNMPトラップ)の下で、必要なフィールドに入力します。トラップはMerakiクラウドから送信されます。受信側のサーバーがNATの背後にある場合は、ポート転送を使用する必要があります。テスト トラップ ボタンを使用して、トラップが正常に送受信されていることを確認できます。
Receiving server IP(受信側サーバーIP)はパブリックIPである必要があります。
送信されるトラップの定義
トラップを有効化した後、Network-wide(ネットワーク全体) > Alerts(アラート)の下のAlerts Settings(アラート設定)セクションで、送信されるトラップをトリガーするアラートを設定します。 送信されるトラップを設定するには、選択したアラートのShow additional recipients(追加受信者の表示)をクリックし、受信者として「snmp」を追加します。または、Default recipient(デフォルトの受信者)として「snmp」を追加することもできます。設定後は、イベントが検出されると、Eメールとトラップの両方が送信されます。
注記:トラップはダッシュボードから送信されるため、迅速さが求められるトラップでは、ダッシュボードがイベントを検出した瞬間からカウントを開始します。