この記事では、ネットワーク監視ソフトウェア「PRTG Network Monitor」(以下、PRTG)を使用して、「Speedtest」を自動実行し、その結果を保存・グラフ表示する方法を紹介します。インターネット速度を定期的に測定し、可視化することができます。
文:ジュピターテクノロジー やすだ
※本記事に掲載されている商品またはサービスの名称は、各社の商標または登録商標です。
はじめに
Ooklaが提供する「Speedtest」は、インターネットの通信速度を計測するための一般的なツールです。
「Speedtest」の結果から、通信が快適かどうかを判断することができます。
PRTGで「Speedtest」を自動化するメリット
通信速度の分析ができる
PRTGでは「Speedtest」を定期的に自動実行し、結果を記録・グラフ表示・表形式での確認が可能です。
これにより、速度の変化や平均速度、速度が低下する時間帯、過去との比較など、通信速度の詳細な分析が行えます。
また、通信速度がしきい値を下回った際にアラートを受け取ることもできます。
ネットワークのすべてを一元監視できる
PRTGは「Speedtest」だけでなく、ネットワーク内の機器の死活監視、リソース、トラフィック状況なども幅広く監視できます。
通信速度に限らず、ネットワーク全体の状態をPRTGひとつで把握することが可能です。
注意事項
- 「Speedtest」を用いた通信速度の測定はPRTGの標準機能ではありません。よって、PRTGの開発元および当社ではこの機能に関するサポートを行っておりません。
- 本記事で紹介する方法では、Ooklaの提供するコマンドラインツール「Speedtest CLI」とPowerShellスクリプトを使用して測定を自動化します。環境によってはスクリプトの実行が制限されている場合があります。
- Speedtestの実行は帯域を大きく使用します。自動実行の間隔によってはネットワークに重大な影響を与える可能性があります。
- 本記事をもとにした設定や実行に関する問題について、当社および当ブログでは責任を負いかねます。実施は自己責任でお願いします。
PRTG監視画面の例
PRTGでは「センサー」(定義済み監視テンプレート)を用いて監視を行います。センサーの監視画面を紹介します。
全般画面
センサーはタコメーターのような「チャネル」と呼ばれる項目で最新の監視結果を表示します。
「Internet Download Speed」、「Internet Upload Speed」のチャネルがそれぞれダウンロードとアップロードの速度です。
監視間隔ごとに自動でテストを実行し、結果を表示・保存します。

履歴データの確認
過去のテスト結果は時系列グラフとテーブルで確認可能です。


ダウンロード速度の平均は約433Mbpsで、まれに50Mbps程度まで低下していることが確認できます。
データはデフォルトで1年間分を保存します。特定の日時を指定してグラフとテーブルを表示することもできます。
※スキャン間隔によってはグラフが点になる場合があります。
しきい値とアラート
各チャネルにはしきい値を設定でき、下回った場合にアラート通知が可能です。
例:ダウンロード速度が10Mbps未満になった場合にメールで通知。
しきい値(制限値)の設定方法はPRTG専門情報サイトの簡易マニュアルをご参照ください。
設定手順
ここからは、PRTGで「Speedtest」を自動実行するための設定手順を紹介します。
PRTGのセンサーでPowerShellスクリプトを定期実行し、スクリプト内でSpeedtestのコマンドラインツール「Speedtest CLI」を実施、その結果を取得、保存、表示します。
PRTGのインストールについてはこちらのブログもご参照ください。
PRTG Network Monitor – 100センサーフリー版で無料ネットワーク監視
PowerShellスクリプトと「Speedtest CLI」の準備
必要なファイルをダウンロードして、PRTGサーバーに配置します。
PowerShellスクリプトのダウンロード
PowerShellスクリプトを、次の手順でダウンロードします。
- サードパーティが作成したPowershellスクリプトを公開している、PRTG開発元サイト「PRTG Sensor Hub」へアクセス:PRTG開発元サイト「PRTG Sensor Hub」
- ページ下部「Internet Speed Test」をクリックし、スクリプト「Internet Speed Test」が公開されているGithubページへアクセス

- 「PRTG_WINDOWS_ookla_SpeedTestNet.ps1」をクリック

- 表示されたページで「Download raw file」ボタンをクリックして保存

「Speedtest CLI」のダウンロード
Speedtestのコマンドラインツール「Speedtest CLI」を含むフォルダを、次の手順でダウンロードします。
- 次の「ookla」公式サイトのダウンロードリンクをクリック:ookla公式サイトダウンロードリンク
- ダウンロードした「ookla-speedtest-1.1.1-win64.zip」を解凍
※スクリプトでは「ookla-speedtest-1.1.1-win64」というフォルダパスを前提にしています。異なるバージョンを使用する場合はスクリプトを修正してください。
これで、必要な次のファイルとフォルダ―が準備できました。
- スクリプトファイル:PRTG_WINDOWS_ookla_SpeedTestNet.ps1
- 解凍後のフォルダ:ookla-speedtest-1.1.1-win64
スクリプトとCLIをPRTGサーバーに配置
スクリプトファイルとCLIのフォルダをPRTGサーバーのプログラムフォルダの次のパス(デフォルトのパス)に保存します。
C:\Program Files (x86)\PRTG Network Monitor\Custom Sensors\EXEXML
※スクリプト内でパスを指定しています。プログラムフォルダを変更している場合はスクリプトを適宜修正してください。

これでPowerShellスクリプトと「Speedtest CLI」の準備ができました。
センサーの作成
PRTGのGUIからセンサーを作成します。「EXE/スクリプト(アドバンスト)」センサーで、PowerShellスクリプトを定期実行します。
作成手順
PRTGのGUIにログインし、次の手順で作成します。
- デバイスツリー画面で「プローブデバイス」の「センサー追加」をクリック

- 「センサーの追加」画面で、検索ボックスに「exe」を入力

- 「EXE/スクリプト(アドバンスト)」センサーをクリック

- 項目「センサー基本設定」の「センサー名」を「SPEEDTEST」などわかりやすい名称に変更

- 項目「センサー設定」の「EXE/スクリプト」でプルダウンメニューから「PRTG_WINDOWS_ookla_SpeedTestNet.ps1」を選択

- 項目「スキャン間隔」の「引継ぎ元」のチェックを外し、「スキャン間隔」で30分以上のできるだけ大きな時間を指定
- 注意:Speedtestの実行は帯域を大きく使用します。短いスキャン間隔の場合、ネットワークに重大な影響を与える可能性があります。

- 「作成」をクリック
これでセンサーが作成できました。

単位の調整
チャネルの単位を「Mbps」に変更し、結果をわかりやすくします。
PRTGのGUIにログインし、次の手順で変更します。
- 作成したセンサーをクリック
- 「全般」画面で各チャネルの「<歯車>アイコン」をクリック

- 「チャネルの編集」画面で、項目「単位」に「Mbps」と入力

- 「OK」をクリック
- 「Internet Download Speed」、「Internet Upload Speed」チャネルの両方で変更
これで単位がMbpsになりました。
まとめ
PRTGにより、Speedtestを自動実行して通信速度を可視化できるようになりました。
センサーは結果を定期的に収集・保存し、グラフやテーブルで時系列データを確認できます。
通信速度の傾向分析やしきい値によるアラート通知も可能です。
PRTGは、サーバー、ネットワーク機器、仮想環境、クラウドなどの一元監視も可能なオールインワンソリューションです。
トライアル版・フリー版も用意されています。ぜひご活用ください。