清水理史の「イニシャルB」

11axのベンチも安心! 10GbE化したSynology NASにiPerf3をインストール

 ユーザー作成のパッケージアプリやDockerコンテナを利用すれば、本連載でもテストに用いているネットワーク測定ツール「iPerf3」のサーバーとして、SynologyのNASを使うことはさほど難しくない。ファイルの保管やバックアップだけでなく、ネットワーク速度のベンチマークにも、NASを活用してみよう。

Synologyの5ベイNAS「DS1517+」

登場予定の1Gbps超え有線LANを備えた11axルーターのテストに向けて

 2018年末にASUSから登場した「RT-AX88U」に続き、ネットギアジャパンからも「Nighthawk AX8」が発表された。さらに、Galaxy S10のWi-Fi 6対応も発表されたことで、ようやく国内でもIEEE802.11ax(Wi-Fi 6)が使える環境が整いそうだ。

 こうした状況は個人的にも楽しみなのだが、同時に、「そろそろ何とかしなければ」と対応を迫られていたのが、ネットワーク機器のベンチマークテスト環境だ。

 これまでは、Core i3搭載のNUCにWindows Serverをインストールし、iPerf3を稼働させていたのだが、さすがに古くなってきたし、10GBASE-Tなど、1Gbpsを超える環境のテストもちらほら登場してきたため、このまま使い続けるわけにも行かなくなってきた。

長らく本連載を支えてきたベンチマーク用Iperfサーバーを入れ替え

 今のところは、LAN側が1Gbps止まりの11ax対応ルーターが多いため、まだ対応は可能だ。しかし、すでに海外で、ASUSNETGEARTP-Linkなどが発表しているように、今後は、LAN側が1Gbpsを越える11axルーターが当たり前になってくるだろうことを考え、思い切って環境を切り替えることにした。

10GBASE-T対応させたSynology NASをiPerf3のサーバーとして使う

 新しいサーバーの候補は、普段からファイルサーバーとしても活用しているSynologyのNAS「DS1517+」だ。

 常時稼働しているNASをベンチマークのサーバーとしても使えれば効率的だし、2018年にネット回線、スイッチ、PC、NASと、メインの環境を10Gbps化しておいたおかげで、速度面では十分な環境が整っている。

PCIeスロットにカードを追加して10GbEに対応させたので、速度は十分

 しかしながら、最大の課題は、肝心のiPerfをどう導入するかだ。SynologyのNASにはさまざまな機能が搭載されているが、さすがにベンチマークテストのサーバーとして使うことは想定されていないため、iPerf3の実行環境は標準では用意されていない。

 そこで、いろいろと調べてみたところ、2つの方法が見つかった。

 1つは、ユーザーが作成したパッケージを利用する方法だ。個人制作のパッケージとなるため、信頼性の問題はあるものの、海外のSynologyのフォーラムでは、比較的古くから知られていて、実際に活用しているユーザーも少なくない。

 こちらのウェブページで配布されているが、SynologyのNAS用OSである「DSM 5.2」「DSM 6.1」「DSM 6.2」の各バージョンごとに用意されており、さまざまなモデルに対応している。

 もう1つは、Dockerを使う方法だ。SynologyのNASのうち、Plusシリーズより上位のモデル(対応機種はこちら)であれば、Dockerパッケージの利用が可能だ。これを利用することで、iPerf3をコンテナとして稼働させることができる。

 Dockerが使えないコンシューマー向けのモデルでは、言わば“野良”パッケージを使うしかないが、筆者宅のDS1517+はどちらにも対応できたので、この両方を試してみることにした。

iPerf3のユーザー作成パッケージを試す

 まずは、汎用性が高いパッケージ版から試していこう。

 ウェブサイトにアクセスした後、「Iperf」メニューを開くと、いきなりディレクトリの一覧が表示される。

 バージョンごとにパッケージが管理されているので、稼働中のバージョンに合わせてダウンロードする必要があるが、今回は最新バージョンの「DSM 6.2」を選択する。

DSMのバージョンごとにフォルダー分けされている一覧から、プラットフォームにあったパッケージをダウンロードする

 すると、「.spk」という拡張子のファイルが、ズラリと表示される。どうやら、arp-scanのパッケージとiperfのパッケージの両方が保存されているので、ファイル名の先頭が「iperf」で始まるものだけに注目していこう。

 注目したいのは、CPUの部分だ。SynologyのNASでは、モデルごとに搭載CPUの違いがあり、これによってパッケージも分けられている。ファイル名に含まれる「alpine」や「braswell」といったCPUコアの開発コードネームなどを参考に、自分が利用しているモデル用のパッケージをダウンロードする必要がある。

 そんなこと言われても、自宅のNASに搭載されているCPUなんて知らない……。という場合も、心配する必要はない。スペックを調べてもいいが、以下で紹介するウェブページで、ほとんどのモデルのCPUを参照することができる。

 これを参照すると、筆者宅のDS1517+のCPUは、Intelの「Atom C2538」で、CPUコアはAvotonとなる。このため、先のサイトから「iperf_avoton-6.2_3.6-1.spk」をダウンロードすればいいことになる。

 パッケージのファイルをダウンロードしたら、手動でNASにインストールする。管理画面の「パッケージセンター」から、「手動インストール」を選択し、ダウンロードしたファイルを指定する。

 ブラウザーによっては、ダウンロードしたファイルの拡張子が「.tar」になっていることがあるので、その場合は「.spk」に変更しておけばいい。

 なお、個人制作のアプリパッケージなので、インストール時にはデジタル署名がないという警告が表示される。そのリスクを承知した上でインストールしてほしい。あくまでも自己責任で試して欲しい。

手動インストールでパッケージを追加

 インストールが完了したら、iPerf3が使えるようになる。と言っても、GUIの操作画面が用意されるわけではないので、コンソールからコマンドを入力して実行する必要がある。

 「コントロールパネル」の「端末とSNMP」でSSHサービスを有効化し(ポートはお好みで構わない)、SSHに対応する「PuTTY」などのターミナルクライアントを使ってNASにアクセスする。アカウントとパスワードを入力してログイン後、「iperf3 -s」と入力すれば、NASがiPerf3のサーバーとして稼働する。

 次に、同一ネットワーク内にあるスマートフォンのアプリやPCなどのクライアントから「iperf3 -c 192.168.1.170」などと接続すれば、テストが実行されるはずだ。

SSHを有効化する
PuTTYなどを使ってNASに接続
無事に通信可能になった

DockerでiPerf3を稼働させる

 次に、DockerでiPerf3を稼働させてみよう。あらかじめNASにDockerのパッケージをインストールした状態で、まずはiPerf3のイメージをダウンロードする。

 すべてコマンドラインで実行した方が手っ取り早いが、一部の操作はGUIでも可能なので、なるべくGUIを使っていくことにしよう。

 Dockerを起動したら、「レジストリ」でイメージを検索する。「iperf3」で検索すると、「networkstatic/iperf3」が表示されるので、これをダブルクリックしてダウンロードする(126MBある)。

Dockerをインストールし、レジストリからiPerf3をダウンロード

 ダウンロードが完了したら、コンテナを作るのだが、これはGUIで実行するよりもコマンドを使った方が効率的だ。SSHでログイン後、以下のコマンドを実行し、もう一度、管理者アカウントのパスワードを入力する。

sudo docker run  -it --name=iperf3-server -p 5201:5201 networkstatic/iperf3 -s

 これで、iPerf3サーバーがNAS上で稼働する。ユーザー作成のパッケージをインストールした後と同様に、クライアントから接続してみるといいだろう。

 一度、稼働させてしまえば、GUI画面からDockerコンテナごとに起動、停止が可能になる。コンテナ画面でスイッチをオフにすれば停止し、再びオンにすれば稼働させることができる。SSHでログインしなくて済むので便利だ。

コンテナのオン/オフはGUIから可能。SSHを無効化できるのでお勧めだ

 仮想化コンテナであるDockerでも、パフォーマンス面の問題はなさそうだ。「-P10」のオプションを付けてセッションを増やしてやると、10Gbpsの有線LANを経由した環境で、7~8Gbps程度の結果が得られた。

 これなら、有線LANが1Gbps以上の11axルーターでも、問題なくテストできそうだ。

-P10スイッチを付けて転送量を増やすと、8Gbpsほどで通信ができた

清水 理史

製品レビューなど幅広く執筆しているが、実際に大手企業でネットワーク管理者をしていたこともあり、Windowsのネットワーク全般が得意ジャンル。最新刊「できる Windows 10 活用編」ほか多数の著書がある。