Macでネットワークに帯域制限をかけたい
Macを使用して、ネットワーク帯域が制限された「通信環境の悪い状態」をシミュレートしてテストを行う必要があったため、手順をメモとして残しておきます。
手順はシンプルです。Apple公式のツール「Network Link Conditioner」をインストールし、設定を「ON」にするだけで実現できます。(厳密には単体のアプリではなく、システム設定に追加される .prefPane 形式のツールです)
Preference Panes | Apple Developer Documentation
注意点として、このツールはMac App Storeでは配布されていません。Apple Developer Programのサイトから直接ダウンロードする必要があるため、少し場所が分かりにくいかもしれません。
作業内容
簡単に手順をまとめておきます。
Apple Developer Programにアクセス
以下の、Apple Developer ProgramのURLにアクセスします。
https://developer.apple.com/account
初めてのアクセスの際に、規約の同意画面などが表示されますので、適宜進みます。
その後、以下のアカウント画面が表示されます。
ダウンロードページへアクセス
続いて、以下のダウンロードページへアクセスします。
https://developer.apple.com/download/all/
検索窓に「network」と入力して検索すると「Additional Tools for Xcode」がヒットします。ご自身のXcodeのバージョンに合ったもの(基本的には最新版)のdmgファイルをダウンロードしてください。
Network Link Conditioner.prefPane のインストール
ダウンロードしたdmgファイルを開きます。
「Hardware」フォルダを開き、「Network Link Conditioner.prefPane」をダブルクリックしてインストールします。
インストールが完了すると、macOSの「システム設定」アプリ内に「Network Link Conditioner」というメニューが追加されているはずです。(macOSのバージョンによっては、サイドバーの最下部や「ネットワーク」カテゴリ内に表示されます)
speedtestコマンドで確認
以下の公式ページに、各OS向けのCLIツールのインストール方法が記載されています。
https://www.speedtest.net/ja/apps/cli
macOS環境でのインストール例
brew tap teamookla/speedtest
brew update
brew install speedtest --force
制限なし(OFF)の状態でのテスト
まずは制限をかけない「OFF」の状態でテストしました。
MacBook-Pro-14:~ teruhiro$ speedtest
Speedtest by Ookla
Server: fdcservers.net - Tokyo (id: 28910)
ISP: NTT DOCOMO BUSINESS
Idle Latency: 8.80 ms (jitter: 4.15ms, low: 7.46ms, high: 14.84ms)
Download: 264.32 Mbps (data used: 119.5 MB)
14.76 ms (jitter: 9.24ms, low: 6.62ms, high: 56.63ms)
Upload: 231.83 Mbps (data used: 396.7 MB)
19.42 ms (jitter: 12.34ms, low: 5.97ms, high: 84.40ms)
Packet Loss: 0.0%
Result URL: https://www.speedtest.net/result/c/xxxxxx
プロファイル「3G」でのテスト
次に、プロファイル「3G」でテストしました。
MacBook-Pro-14:~ teruhiro$ speedtest
Speedtest by Ookla
Server: Nearoute Limited - Tokyo (id: 69575)
ISP: NTT DOCOMO BUSINESS
Idle Latency: 382.20 ms (jitter: 12.94ms, low: 357.66ms, high: 409.42ms)
Download: 0.58 Mbps (data used: 799.3 kB)
2690.27 ms (jitter: 136.86ms, low: 938.41ms, high: 4290.16ms)
Upload: 0.20 Mbps (data used: 340.2 kB)
984.08 ms (jitter: 117.19ms, low: 562.99ms, high: 1251.91ms)
Packet Loss: 1.8%
Result URL: https://www.speedtest.net/result/c/xxxxxx
Network Link Conditionerの設定
プロファイルのプリセット
デフォルトで用意されているプロファイルのプリセットは以下の通りです。
- 100% Loss
- 3G
- DSL
- Edge
- High Latency DNS
- LTE
- Very Bad Network
- Wi-Fi
- Wi-Fi 802.11ac
カスタムプロファイル
既存のプリセットだけでなく、帯域や遅延を細かく指定した独自のプロファイルを作成することも可能です。

