Macでネットワークに帯域制限をかけたい

公開日: 更新日:

Macを使用して、ネットワーク帯域が制限された「通信環境の悪い状態」をシミュレートしてテストを行う必要があったため、手順をメモとして残しておきます。

手順はシンプルです。Apple公式のツール「Network Link Conditioner」をインストールし、設定を「ON」にするだけで実現できます。(厳密には単体のアプリではなく、システム設定に追加される .prefPane 形式のツールです)

Preference Panes | Apple Developer Documentation

Network Link Conditioner の設定パネル
Network Link Conditioner の設定パネル

注意点として、このツールはMac App Storeでは配布されていません。Apple Developer Programのサイトから直接ダウンロードする必要があるため、少し場所が分かりにくいかもしれません。

作業内容

簡単に手順をまとめておきます。

Apple Developer Programにアクセス

以下の、Apple Developer ProgramのURLにアクセスします。

https://developer.apple.com/account

初めてのアクセスの際に、規約の同意画面などが表示されますので、適宜進みます。
その後、以下のアカウント画面が表示されます。

Apple Developer Program のアカウント画面
Apple Developer Program のアカウント画面

ダウンロードページへアクセス

続いて、以下のダウンロードページへアクセスします。

https://developer.apple.com/download/all/

検索窓に「network」と入力して検索すると「Additional Tools for Xcode」がヒットします。ご自身のXcodeのバージョンに合ったもの(基本的には最新版)のdmgファイルをダウンロードしてください。

Additional Tools for Xcode のダウンロード
Additional Tools for Xcode のダウンロード

Network Link Conditioner.prefPane のインストール

ダウンロードしたdmgファイルを開きます。

「Hardware」フォルダを開き、「Network Link Conditioner.prefPane」をダブルクリックしてインストールします。

Hardwareフォルダ内の .prefPane ファイル
Hardwareフォルダ内の .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
Speedtest CLI のインストールコマンド

制限なし(OFF)の状態でのテスト

まずは制限をかけない「OFF」の状態でテストしました。

制限なし(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
制限なし(OFF)状態での実行結果

プロファイル「3G」でのテスト

次に、プロファイル「3G」でテストしました。

プロファイルを「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
プロファイル「3G」適用後の実行結果

Network Link Conditionerの設定

プロファイルのプリセット

プロファイルのプリセット選択画面
プロファイルのプリセット選択画面

デフォルトで用意されているプロファイルのプリセットは以下の通りです。

  • 100% Loss
  • 3G
  • DSL
  • Edge
  • High Latency DNS
  • LTE
  • Very Bad Network
  • Wi-Fi
  • Wi-Fi 802.11ac

カスタムプロファイル

既存のプリセットだけでなく、帯域や遅延を細かく指定した独自のプロファイルを作成することも可能です。

カスタムプロファイルの作成画面
カスタムプロファイルの作成画面

参考

小巻旭洋のプロフィール写真

小巻 旭洋

2014年からフリーランスとして活動し、2016年に株式会社フルーデンスを設立する。FileMaker開発歴は約10年。多数の企業システム構築を手がけ、特にデータベース設計と、JavaScript連携、Web連携、パフォーマンス最適化を専門としています。2025年から、Web業務システム・アプリ開発をメインに開発をしています。