2025年1月28日にEasyBlocks DHCPシリーズ及びDDNシリーズのソフトウェアアップデートがリリースされました。
リリース内容に関しての詳細はこちらからご確認ください。
今回リリースした内容に、「DHCP機能に各払い出し範囲における使用率通知機能」があり、こちらの機能を活用してZabbixと連携した可視化を試したいと思います。
はじめに
これまでEasyBlocksシリーズをご利用の方からいただいたご意見をもとに機能改善を行ってきましたが、「DHCPで払い出したIPアドレス数を監視したい」「一定数を超えたら通知が欲しい」といった要望も多くありました。
これは、設定範囲内のIPアドレスがすべて払い出され、新規割り当てができなくなる事態を未然に防ぐためです。
近年では、1社員が複数の端末を持つのが一般的になり、利用者数以上にIPアドレスが必要になるケースが増えています。そのため、IPアドレスの配布範囲を厳密に設計すると同時に、配布状況の監視が重要になっています。
今回実装した機能は、SyslogサーバーやZabbixサーバーと連携することでより詳細な監視や可視化が可能ですので、ぜひご活用ください。
使用率通知機能について
こちらの機能自体はシンプルなもので、DHCPサービスの各配布範囲に対して、使用率をSyslogにて通知する機能となります。
また、指定した配布範囲サイズ以上かつ指定使用率以上の場合、CRITICAL判定として扱われSyslogメッセージが異なります。(詳細はドキュメントを参照)
- 通常判定時サンプルメッセージ
Running notice: [DHCP pool info] 172.16.0.10 – 172.16.0.200 , 0 / 191 use , ratio 0.00 %
- CRITICAL判定時サンプルメッセージ
Running notice: [DHCP pool info / CRITICAL] 192.168.100.10 – 192.168.100.10 , 1 / 1 use , ratio 100.00 %
連携構成と設定方法
連携構成
今回は、EasyBlocks DHCPシリーズから使用率通知機能を使用してEasyBlocks SyslogシリーズへSyslogを送信し、EasyBlocks SyslogシリーズのZabbix連携機能を使用して必要な部分のログをZabbixサーバーへ送信し、Zabbixサーバー側で監視・可視化します。

EasyBlocks DHCP設定
- IPアドレス配布設定
今回は以下3つのネットワークアドレスを配布対象とし、それぞれのネットワークで配布範囲を3パターン作成しています。

- 使用率通知機能

赤く囲った部分の配布範囲サイズ、使用率を設定するだけです。
これで15分毎に指定したSyslogサーバーへログが送信されます。
EasyBlocks Syslog設定
Zabbix連携機能についてはこちらで解説していますので、本記事で詳細な説明は割愛します。
流れとしては、Zabbixサーバー側でのホストの作成、アイテムの作成(Zabbixトラッパー)、EasyBlocks Syslog側ではZabbix用ホスト登録、Zabbixトラッパー連携にて条件を設定を行います。
今回、条件部分は以下のようにしました。

①のホストはEasyBlocks DHCPのIPアドレス
②メッセージは使用率通知機能から出力されるログがマッチする内容
③と④はZabbixサーバー側で登録済みの内容
これで、Zabbixサーバー側に必要なログが送信されます。
Zabbixサーバー設定
- Zabbixトラッパー作成
ログの受け口となるアイテムを作成します。
今回は以下のように作成しました。

Zabbixサーバー側で実際に受け取ったデータを確認すると以下の通りです。

次にこのデータを一部使用して使用率のグラフを作成するために、依存アイテムを作成します。
- 依存アイテム作成

①タイプを依存アイテム
②マスターアイテムを予め作成したデータの受け口にあたるZabbixトラッパーアイテムを選択
③保存前処理から以下の通り必要な部分のデータのみ取り出し
今回は使用率の可視化をするため、「〇〇%」部分を取り出します。

①正規表現を選択
②パラメータに使用率を取得したいIPアドレス範囲及び%部分を記載し
③正規表現のキャプチャグループの1つ目(最初の括弧内のマッチ)を出力として抽出
これを使用率の可視化をしたい範囲分、作成します。
今回は以下の通りです。

グラフ確認
テスト用にIPアドレスを払い出した範囲部分のグラフを確認してみます。
使用率がグラフに反映されていることが確認できました。
192.168.10.10_20 DHCP使用率グラフ

192.168.20.10_20 DHCP使用率グラフ

まとめ
今回はEasyBlocks DHCPシリーズ、EasyBlocks Syslogシリーズ、Zabbixサーバーを連携させてDHCPのIPアドレス配布状況を可視化しましたが、Zabbixサーバー側でアイテムに対してトリガーを作成して使用率に関する監視なども可能です。
EasyBlocksとZabbixサーバーを連携させると、アイデア次第で様々な変化をもたらすことが可能です。是非色々試してみてください。