7
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

エムスリーAdvent Calendar 2015

Day 7

Aruba Instant の MIB について

Posted at

この記事はエムスリーAdvent Calendar 2015の7日目の記事です。

概要

Aruba Instant のMIBを簡単に紹介します。

Aruba Instant とは

Wifiアクセスポイントの管理手法は大きく自律型とコントローラ型に分かれます。
Aruba Instant 独立したコントローラを配置しなくてもクラスタを構成するアクセスポイントの内一台がコントローラの役割を果たしてコントローラなしでコントローラ型の機能を実現するArubaの独自機能となります。ただし、本業のコントローラに比べると管理できる台数や機能には若干の違いが存在します。

Aruba Instant のMIB

Aruba Instant のMIBはArubaのサイトから参照可能です。6.4.3.4-4.2.1.0のドキュメントはこちらです。Aruba Instant MIB Reference Guide というPDFにMIBの情報がまとまっています。

SNMPの情報をポーリングする場合管理対象となる機器単体の情報を取得できるのが一般的ですが、Aruba Instantはコントローラとなるため管理対象となるアクセスポイントの情報を一つのOIDから取得することができます。

例えばアクセスポイントの無線出力であれば aiRadioTransmitPower なので 1.3.6.1.4.1.14823.2.3.3.1.2.2.1.5 から取得可能です。

取得される結果は以下の通りです。

SNMPv2-SMI::enterprises.14823.2.3.3.1.2.2.1.5.A.B.C.D.E.F.0 = INTEGER: 21
SNMPv2-SMI::enterprises.14823.2.3.3.1.2.2.1.5.A.B.C.D.E.F.1 = INTEGER: 9

A,B,C,D,E,FにはアクセスポイントのMACアドレスを10進数で表示した値が入ります。

aiAPName(1.3.6.1.4.1.14823.2.3.3.1.2.1.1.2) にはアクセスポイントの名前が格納されていますのでMACアドレスとアクセスポイントを紐付けることが可能です。

Cacti の様な管理ツールを使用する場合機器名と取得する値を紐付ける必要がありますので、MACアドレスの と アクセスポイント名を配列に格納して利用します。

実際に有る一台のアクセスポイントの aiRadioRxBad(1.3.6.1.4.1.14823.2.3.3.1.2.2.1.18) をCactiで出力したグラフが以下の通りです。
(青が2.4GHz、赤が5Ghzです)
rx_error.png

日中になるとエラーが増えていることがわかります。

クライアントのIPアドレスを監視する

Aruba Instant のMIBには接続しているクライアントの情報も格納されています。
aiClientIPAddress(1.3.6.1.4.1.14823.2.3.3.1.2.4.1.3) には接続しているクライアントのIPアドレスが入っています。

先日Wifi環境でDHCPの応答がなくなり接続がクライアントが通信ができなくなる問題発生したのですが、クライアントのIPアドレスがリンクローカルアドレスになっているかで監視を行うことが出来そうです。

client_addr.rb
require 'snmp'
require 'ipaddr'

class YuIPAddr < IPAddr
        def ipv4_linklocal?
                range = IPAddr.new("169.254.0.0/255.255.0.0")
                return range.include?(self)
        end
end

SNMP::Manager.open(:Host => '192.168.1.1',:Community => 'community', :timeout => 1, :retries => 1) do |manager|
        manager.walk('1.3.6.1.4.1.14823.2.3.3.1.2.4.1.3') do |row|
                addr=YuIPAddr.new(row.value.to_s)
                if addr.ipv4_linklocal?
                        puts addr.to_s
                end
        end
end

まとめ

Aruba Instant は豊富はMIB情報を備えているのでSNMPで様々な管理を行うことが可能です。ArubaにはAirWaveという管理機能がありますがMIBを活用することで似たような時系列でのデータの収集が可能です。

7
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?