ネットワーク運用で欠かせないのが「監視」です。
サーバーやルーターの状態を把握できれば、障害を未然に防ぎ、安定したサービスを提供できます。
その仕組みを支える代表的な仕組み(プロトコル)が SNMP(Simple Network Management Protocol) です。
今回は、SNMPの基礎から実際の運用イメージ、分かり易く理解できるように解説していきます!
1. SNMPとは?
SNMP は、ネットワーク機器やサーバーの状態を「遠隔から取得・監視・管理」するための通信ルールです。
たとえば以下のような情報を取得できます。
SNMPで取得できる情報
- CPUやメモリの使用率
- ネットワークトラフィック(送受信量)
- ディスクの残容量
- プリンターのトナー残量
つまり、機器に取り付けた「健康診断センサー」のような役割を果たすのがSNMPです。
2. SNMPの仕組み
先ずここが大事なのですが、SNMPは大きく マネージャ(監視する側) と エージェント(監視される側) に分かれています。
- マネージャ:監視サーバー(Zabbix、PRTGなど)
- エージェント:監視対象の機器(ルーター、サーバーなど)に内蔵
この両者がSNMPで通信し、監視を実現します。

MIBの仕組み
SNMPでマネージャがエージェントに情報を問合せた際にエージェント側の情報はどう管理されているのでしょうか?
それが、「MIB(Management Information Base)」になり、ネットワーク機器(ルータ、スイッチ、サーバなど)が持っている「どんな項目を監視できるか」 をまとめた表みたいなものですね。
簡単に言うと「管理情報の辞書・データベース」ですね。
イメージ的には以下のようになります。

ということで、SNMPは以下の3つの要素で成り立っていることになります。
| 要素 | 役割 |
|---|---|
| マネージャー(NMS) | ネットワーク全体を監視・制御するソフトウェア(例:Zabbix、SolarWinds) |
| エージェント | 監視対象機器に組み込まれた監視プログラム。機器の情報を収集しマネージャーに返す |
| MIB(Management Information Base) | 監視項目を格納したデータベース。CPU使用率、メモリ、ポート状態などを管理 |
3. SNMPで使われる主な通信
上記の図でも出てきましたが、SNMPの通信方式としては以下のお作法があります。
基本的にはネットワーク機器の情報をマネージャが取得「GET」したり、設定「SET」し、何かあったらネットワーク機器が通知「TRAP」するというシンプルな感じですね。
| 通信方法 | 説明 |
|---|---|
| GET | マネージャーがエージェントに情報を問い合わせる |
| SET | マネージャーがエージェントの設定を変更する |
| TRAP | エージェントが異常をマネージャーへ通知する |
| GETNEXT / GETBULK | 複数のデータをまとめて取得する |
4. 実際の活用例
ここまでSNMPの仕組みを解説しましたが、実際の現場でどう使われているか例を挙げます。
SNMPの活用例
- ルーターのCPU使用率やポート状態の監視
- サーバーのメモリ使用量やディスク残量の取得
- ネットワークプリンターの紙切れやトナー切れ通知
- UPS(無停電電源装置)のバッテリー状態管理
いろんな機器の情報を取得して管理できるので、活用範囲は幅広いことがわかると思います。
実際はどんな情報をどのタイミングで取得するかなど、運用設計が大事だったりしますね。
5. SNMPのバージョンとセキュリティ
SNMPはこれまで何回かバージョンアップしてきました。
バージョンアップの理由としては、機能面、セキュリティ面を高くするためですね。
現在はSNMPv3が推奨です。
v1やv2cは情報が平文で送られるため、盗聴や改ざんリスクがありますので、現在は使われていないと思います。
| バージョン | 特徴 | セキュリティ |
|---|---|---|
| v1 | 初期仕様。機能が限定的 | ほぼなし |
| v2c | 情報取得効率が向上 | ほぼなし(コミュニティ名で管理) |
| v3 | 認証(Auth)+暗号化(Priv)対応 | 高い安全性 |
6. まとめ
今回はネットワーク運用の監視に重要なSNMPに関して解説してきました。
SNMPまとめ
- SNMPはネットワーク監視の標準プロトコル
- マネージャー・エージェント・MIBの3つで構成されている
- GET・TRAPなどで機器情報を取得/通知
- セキュリティ面ではSNMPv3が安心
ネットワークは今後も至るところで活用されていきます。
安定したネットワークの運用を実現するSNMPは非常に重要な仕組みとなりますね。
SNMPは定期的に情報をGETするために「ポーリング」を使ってます。このポーリングに関しても当ブログにて解説もしてますので、よろしければ読んでみてください。
以上です!
