Raspberry pi3を使ってネットの速度測定をしよう

毎回ノートPCを取り出して計測するのは面倒なので、通信速度を手軽に計測する為にRaspberry pi3を使ってみます

色々と調べていたら、既に海外で実装してる人がいた。さすが世界は広い

参照先:http://makezine.com/projects/send-ticket-isp-when-your-internet-drops/

定期取得はしないので、毎回取得するタイプを作ろうと思います

まず、何はともあれ

$ sudo apt-get update

実行後、上記のリンク先の通り、以下のコマンドを実行

$ sudo apt-get install python-pip
$ sudo pip install speedtest-cli

インストール後に一回テストしてみましょう

$ speedtest-cli

こんな感じで測定結果が出ます

Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Acme Broadband Provider. (XXX.XXX.XXX.XXX)...
Selecting best server based on latency...
Hosted by Foo Limited (Metropolis) [2.52 km]: 35.27 ms
Testing download speed........................................
Download: 14.47 Mbit/s
Testing upload speed..................................................
Upload: 1.46 Mbit/s

次に、測定結果をログファイルとして保存します

#!/bin/bash
 
date >> /home/pi/speedtest.log
/usr/local/bin/speedtest --simple >> /home/pi/speedtest.log

上記の内容をviやらvimやらで書いて保存します。私はspeedtest.shとして保存しました

speedtest-cron.shを起動してみましょう

$ bash ./speedtest.sh

しばらく時間かかりますが、先ほど計測していた内容をバックグラウンドで実行し、ログファイルに吐き出しています

吐き出されたファイルをcatしてみましょう

$ cat speedtest.log

以下のような感じで出力されています

Thu Jan 19 15:07:57 JST 2017
Ping: 11.539 ms
Download: 92.43 Mbit/s
Upload: 76.31 Mbit/s

この動作を定期的に実行したい場合は、crontabを使うと良いと思います