先輩や上司の会話についていけるように、3分で「SNMPとは?」と「SNMPの使い方」を速攻で教えます!

mieruka.link読者の皆様こんにちは!

本サイト管理人は、長文でプロトコルや技術要素を説明するといったことはせずに、なるべく短文かつシンプルに技術情報の理解を促進させるように記事を書くことを心がけています。

今回は、ネットワークの運用・管理に必須であるSNMPについての記事です。

検索サイトで、「SNMP」、「SNMPとは」と検索して出てくる記事ですが、正直長くて退屈で分かりにくい記事が多いです。

そこで、プロトコルの詳細説明は省き、新入社員や初学者に教えるためのシンプルな記事を作成するべく筆をとりました。

早速、はじめましょう!

SNMPとは?

SNMPとは、

Simple

Network

Management

Protocol

の略で1988年に考案された古いプロトコルですが、2021年現在でも管理者がネットワーク機器やサーバーの監視、設定の編集に利用しまくっている業界では非常に重要なプロトコルです。

SNMPに必須の2用語

SNMPを学ぶうえで、絶対に知っておかなければならない2つの要素があります。

それぞれアルファベット3文字で、OIDとMIBです。

OIDとは?

Object Identifierの略で、各ネットワーク機器やサーバーが管理するシステム情報の番地といった表現でよいでしょう。

例えば、以下のような番地があります。

OID管理するシステム情報
1.3.6.1.2.1.1.5.0ホスト名
1.3.6.1.2.1.2.2.1.5.インターフェイス帯域
1.3.6.1.2.1.4.3.0受信パケット総数
表1 OID例

この番地は、システムの情報を知りたいサーバー側(SNMPマネージャと呼ぶ)が、SNMPエージェントを起動した対象機器に問い合わせる際に利用されます。

MIBとは?

Management Information Baseの略で、上記で説明したOIDの名前解決を定義したテキストファイルといった理解でよいでしょう。

例えば、IAサーバーでおなじみのDell PowerEdge向けDell EMC OpenManage MIBであるoutOfBandGroupを例に説明します。

このMIBの定義が以下です。

outOfBandGroup MODULE-IDENTITY
    LAST-UPDATED "201808210000Z" -- 21 August 2018
    ORGANIZATION "Dell Inc."
    CONTACT-INFO
~省略~
    REVISION "201210300000Z" -- 30 Oct 2012
    DESCRIPTION
        "Version: 2.0
         * Initial SMIv2 version of the iDRAC MIB."
    ::= { enterprises dell(674) server3(10892) 5 }

かなり省略していますが、最初の行と最後の行だけに注目すれば必要十分です。

outOfBandGroupという名称のMIBの番地は、最終行「enterprises dell(674) server3(10892) 5」であるといった定義がされております。

enterprises迄のOIDは、共通で「.1.3.6.1.4.1」と機械的に覚えましょう。

このenterprise以降が、各メーカに割り当てられた番地となります。

Dellの場合は、記載の通り674番地です。

つまり、outOfBandGropuのOIDは、MIBファイルの中で「.1.3.6.1.4.1.674.10892.5」であると定義されているのです。

これがMIBの正体で、単にテキストファイルでMIBの番地を定義しているだけなのです。

簡単ですよね?

なんでMIBなんてあるの?OIDだけでよいじゃん?と思うかもしれませんが、番号だけだと人間は記憶したり他人と情報交換するのに手間がかかりますので、DNSと同じく名前解決をするために定義がされているといった理解をしてください。

SNMPの使い方

SNMPの使い方は非常に簡単です。

2パータンあります。

情報を知りたい側(SNMPマネージャ)が、OIDを使ってルーターやスイッチといったSNMPエージェントを起動している機器にリクエストを送信し、結果を受信するのがパターン①。

これを業界では、SNMPマネージャからエージェントにポーリングすると言ったりします。

こういった用語が分からないと、会議の席で???になってしまいますので、記憶しておいてください。

図1 SNMPエージェントとマネージャの通信

この時、リクエスト及びレスポンスに利用されるのはUDPでポート番号が161であることを覚えておきましょう!

Wiresharkで図1の通信をキャプチャしたのが図2です。

図2 SNMPリクエストとレスポンス

図1とは別に、SNMPエージェントから一方的にSNMPマネージャに情報を送信する場合があります。

これをSNMPトラップといい、UDPのポート162を利用します。

これがパターン②です。

SNMPのバージョン

SNMPのバージョンは、3種類あります。

表2にまとめました。

SNMPバージョン特徴
1と2cユーザー名なしで、認証にはコミュニティストリングを利用する、暗号化なし
3ユーザー名とパスワードを認証に利用する、暗号化あり
表2 SNMPのバージョン

SNMPバージョン3が、セキュリティが高くもっとも利用されていると思われるでしょうが、実際はバージョン1, 2cが使われ続けております。

如何でしたでしょうか?

SNMPとは?から始まり、OIDとは?、 MIBとは?、ポーリング、SNMPトラップ、SNMPバージョンの違いまでみてきました。

ここまで理解すれば、とりあえずはSNMPに関する会話についていけると思いますので、是非参考にしてください。

(Visited 755 times, 1 visits today)
The following two tabs change content below.
【好きなもの】 インフラ技術が好き。古いものが好き。 【生きてきたフィールド】 システム運用、ソフトウェア開発、ミドルウェア検証、OSSサポート、プリセールスエンジニア、プロジェクトマネジメント 【このサイトでの役割】 サイト管理者。