こんにちは!昨年LogStareの開発チームとして入社したKJです。
普段は沖縄開発センターで開発メンバーのマネジメントや不具合管理などを担当しています。
私がこれまで携わってきた開発業務ではネットワーク監視の仕組みなどに触れる機会がなかったため、自社の製品をより理解するため、LogStareで使われている技術の一つであるSNMPについて今回勉強してみました。
勉強した内容からSNMPに関する簡単な説明と、実際にSNMP監視をコマンドラインで実行した場合と弊社製品であるLogStare Collectorを利用してSNMP監視した場合の違いを試した結果について、記事にしてみたいと思います。
目次
SNMPとは
SNMPとは「Simple Network Management Protocol」の略で、ネットワーク機器をネットワーク経由で監視するためのプロトコルです。
SNMPで何が出来る??
SNMPを利用する事で、ネットワーク経由で機器の監視をする事が出来ます。
監視する事でネットワーク障害が発生時にどの機器のどういったポイント(※)で障害が発生したのか素早く突き止める事が出来るので、障害検知はもちろん復旧にも役立ちます。
※ネットワーク機器のCPU使用率が異常に高い、スイッチングハブのケーブルが抜けている、大量の通信が流れている、など
SNMPを利用する理由
SNMPを利用するメリットは世界規模の業界基準の規格であるため、ベンダーに左右されず利用可能となります。また情報の管理は一元管理され、監視対象に固有のエージェントをインストールする必要がないので、監視を始めるための設定が容易となります。
SNMPの構成要素
SNMPはSNMPマネージャとSNMPエージェントで構成されます。
SNMPマネージャとSNMPエージェント間でMIBをやりとりして必要な情報を収集します。
SNMPマネージャとSNMPエージェント
SNMPマネージャはネットワーク機器を監視するソフトウェアです。
SNMPエージェントへ要求を行い、情報の収集を行います。(ポーリング)
SNMPエージェントは監視対象機器にあるソフトウェアです。
SNMPマネージャの要求に従い、情報の連携を行います。
上記以外に不測の事態が起きた場合、SNMPマネージャに通知を送信します。(トラップ)
図)SNMPマネージャとSNMPエージェントのイメージ
MIBとOID
MIB(Management Information Base):ネットワーク機器の管理情報を集めたデータベース。MIBを参照して機器の監視を行う。
OID(Object IDentifier):各情報に対して割り当てられる一意な番号。
各SNMPコマンドでの情報取得に必要なID
図)MIBとOIDイメージ(一部抜粋)
拡張MIB
拡張MIB:各メーカがそれぞれの機器に独自に設定しているMIB
プライベートMIBとも呼ばれています
(WindowsならMicrosoft。FortiGateならFortinetなど)
snmpgetコマンドとsnmpwalkコマンド
snmpget:指定したOIDと該当する値を単体で取得するコマンド
snmpv1/snmpv2c
‘snmpget -v <1|2c> -c <コミュニティ> <ホスト名:ポート番号><OID> -v <1|2c> : SNMPバージョン -c <コミュニティ> : SNMPコミュニティ <ホスト名:ポート番号>:SNMPエージェントの機器のホスト名とポート番号 <OID>:取得したいOID |
snmpwalk:指定したOID配下に含まれるすべてのOIDと、値を取得するコマンド
snmpv1/snmpv2c
‘snmpwalk -v <1|2c> -c <コミュニティ> <ホスト名:ポート番号> <OID> -v <1|2c> : SNMPバージョン -c <コミュニティ> : SNMPコミュニティ <ホスト名:ポート番号>:SNMPエージェントの機器のホスト名とポート番号 <OID>:取得したいOID |
SNMP監視してみよう
WindowsにNet-SNMPをインストールし、SNMPコマンドを利用してポーリングを実行します。
Net-SNMPのインストール、設定手順などは割愛させていただきます。
検証環境
- SNMPマネージャ:Windows
- SNMPエージェント:Ubuntu(wsl) 172.30.25.192
コマンド実行・結果
実行コマンド:snmpget -v 2c -c public 172.30.25.192 .1.3.6.1.2.1.1.1.0
⇒指定のOIDの情報が取得出来る。
実行コマンド:snmpget -v 2c -c public 172.30.25.192 .1.3.6.1.2.1.1.1
⇒単一のOIDではないので、取得に失敗
実行コマンド:snmpwalk -v 2c -c public 172.30.25.192 .1.3.6.1.2.1.1.1
⇒指定したOIDの配下の情報を取得
実行コマンド:snmpwalk -v 2c -c public 172.30.25.192 .1.3.6.1.2.1.1
⇒指定したOIDの配下の情報を取得
利用してみて
- 現在は一つの端末だけなので簡単だが、ネットワーク機器が増加すると、管理の手間が増える
- 欲しい情報を取得するために必要なMIBやOIDの情報が必要
と手動での利用は大変な手間がかかると感じました。
SNMP監視をより簡単に始めるには
弊社製品であるLogStare CollectorはSNMPマネージャとしても利用出来るセキュリティ運用ソフトウェアとなります。
LogStare Collectorを利用する事でコマンドやMIB、OIDといったSNMPの知識がなくてもGUIでの設定でSNMP監視ができます。
LogStare Collectorでは、標準的なMIBに加え、多数のメーカの拡張MIBの内容も自動的にスキャンできます。
対応可能メーカと監視内容はこちら!
監視対象機器一覧 | セキュリティ専門企業発、ネットワーク・ログ監視の技術情報 - KnowledgeStare(ナレッジステア) (secuavail.com)
※有償版ご利用のユーザ様へはインターネットを通じて順次監視対象機器の情報の更新が配信されます。
拡張MIBにつきましては各メーカにお問い合わせください。
※LS製品(LSC、LSQ)につきましてはMIBはございません
図)LSCでのSNMP監視の設定画面
※詳細な設定方法など下記リンクにございますので参照いただけたらと存じます。
ポーリングの設定
SNMP監視の設定 | セキュリティ専門企業発、ネットワーク・ログ監視の技術情報 - KnowledgeStare(ナレッジステア) (secuavail.com)
トラップの設定
SNMP-Trap監視設定と具体的な設定方法| セキュリティ専門企業発、ネットワーク・ログ監視の技術情報 - KnowledgeStare(ナレッジステア) (secuavail.com)
SNMP監視への苦手意識もLogStare Collectorでカンタン克服
いかがでしたでしょうか?
SNMP監視を実施しようとするとSNMPへの知識、コマンドへの理解等、敷居が高く感じました。ですがLogStare Collectorを利用する事で、GUIベースで監視項目を設定する事が出来るのでSNMPへの知識がなくても監視が可能となります。
また、対応デバイスについてはベンダーごとの固有のMIB情報の調査等が不要で、すぐに監視することができるのも一つの特徴です。
無料でも利用出来ますので、SNMP監視を検討されていらっしゃる方は是非試していただけたらと存じます。
記載されている会社名、システム名、製品名は一般に各社の登録商標または商標です。
当社製品以外のサードパーティ製品の設定内容につきましては、弊社サポート対象外となります。