ブログに戻る
·10分で読める·productdevbook

macOSで通信量の上限を設定する方法【実践ガイド】

macOSにグローバルな通信量上限はありませんが、自前で構築できます。スロットリング、アラート、アプリ別制限の組み合わせ方を解説します。

  • macOS
  • Bandwidth
  • Tutorial
  • Productivity

長いフライト用にMacを電話にテザリングし、MacがiCloud同期、Time Machine、これまでに出荷されたすべての絵文字のSlackダウンロードを動かして30GBのセルラーデータを静かに食らわないようにしたい。「macOSで通信量上限を設定する方法」を検索すると、フラストレーションの中、macOSにそれがないことを発見します。実は。macOSの通信量上限の問いは単一のスイッチがない層状の問題と判明します。

本稿は実際に可能なこと——低データモード、アプリ別スロットル、スケジュールされた一時停止、能動的監視を組み合わせて本物の上限に近い何かを構築することをカバーします。これらのいずれも単独では厳格な制限ではない。一緒に道の90%を行きます。

なぜmacOSは組み込みのmacOS通信量上限トグルを出荷しないか

macOSはネットワークアクセスをアプリごとのバイナリ機能として扱います——アプリがネットワークと話せるかどうか。「このMacは今日5GB以上使えない」のカーネルレベル設定はありません。macOSが最も近づくのは低データモードで、これはバックグラウンドサービスに大きなアップロードとダウンロードを延期すべきというネットワーク別のヒントです。

本物のグローバル上限は、トラフィックを計測し制限に達するとパケットをドロップするカーネルネットワークフィルタ(ネットワーク拡張)のようなものを必要とします。Little SnitchやMurusのようなツールは似たアーキテクチャでアプリ別フィルタリングができますが、それらはファイアウォール——遮断する、絞らない。

だから現実的な答え: ワンクリック通信量上限はない。層状制御から等価物を構築します。

「上限」の実用的意味

技法をリストする前に、欲しいものを具体化。3つの異なる目標:

  1. セルラーまたはホットスポット上限の下に留まる。 「電話の5GBプランを焼くな」。
  2. 通信量競合を避ける。 「ビデオ通話をバックアップアップロードで台無しにするな」。
  3. 期間ごとにデータを厳格に制限。 「今月50GB以上はだめ、ピリオド」。

最初の2つは組み込みツールとモニターで非常に達成可能。3つ目は難しい——macOSにはネイティブで何もなく、サードパーティツールでさえ通常警告と手動アクションでそれを近似します。

層1: 低データモード(最大の単一レバー)

低データモードはmacOSが組み込み上限に最も近づくもの。ネットワーク別——特定のWi-Fi SSIDでオンにし、macOSはそのネットワークでトラフィックを延期または縮小します。

低データモードが実際にすること

ネットワークで低データモードが有効なとき:

  • ソフトウェアアップデートはバックグラウンドダウンロードを停止。通知を得るがダウンロードは待つ。
  • App Storeの自動更新を一時停止。
  • iCloud写真はオリジナルのアップロードを停止。最適化されたサムネイルは依然同期。
  • iCloud Driveは大きなアップロードを延期。
  • Mailは添付の自動取得を停止。
  • バックグラウンドアプリリフレッシュを抑制。
  • Apple Musicと他のAppleメディアストリームは低ビットレートに格下げ。
  • 多くのサードパーティアプリは標準URLSession API経由で低データモードフラグを尊重。

厳格な上限ではありません。アクティブなフォアグラウンドアプリは依然欲しいだけのデータを使う。ただ、静かなバックグラウンドトラフィックを劇的に削減——典型的なMacの合計データの半分以上のことが多い。

有効化する方法

システム設定 → Wi-Fi → ネットワーク隣の小さな「i」/「詳細」ボタンをクリック → 低データモードをトグル。

これをします:

  • 電話のホットスポットSSID
  • 繰り返し使うホテルWi-Fiネットワーク
  • カフェWi-Fi
  • バックグラウンド同期を動かしたくないゲストネットワーク

層2: アプリ別の一時停止と無効化

低データモード後、次に大きなレバーは制約付きネットワークに接続する前に重いアプリを個別に一時停止すること。

テザリングや上限付きWi-Fi用のプリフライトチェックリスト:

  1. Time Machine: システム設定 → 一般 → Time Machine → 「自動的にバックアップ」をオフにトグル、または「このバックアップをスキップ」をクリック。
  2. iCloud写真: 写真を開き、下までスクロール、アップロード状態の一時停止をクリック。
  3. iCloud Drive: システム設定 → Apple ID → iCloud → iCloud Drive — 大きなフォルダ(デスクトップ、書類)を同期するアプリをオフ、またはFinderサイドバー状態経由で一時停止。
  4. Dropbox / Google Drive / OneDrive: 各メニューバーアイコンをクリックし「同期を一時停止」を選択。
  5. Backblaze / Arq / Carbonite: メニューバーから一時停止。
  6. ブラウザ: クラウドIDEタブ、ビデオチャットタブ、ストリーミングしている何でも閉じる。
  7. Slack / Discord / Teams: 通知が必要ないなら終了。

5分のクリックがギガバイトを節約します。各一時停止コントロールがどこに住むかメモして、チェックリストを素早く実行できるように。

層3: 警告付き能動的監視

ソフト上限は可視性を必要とします。アプリ別通信量ビューなしには、プリフライトチェックリストが実際に動いたか分かりません。1時間後にまだ軌道上か分かりません。

ovaのようなモニターが与えるもの:

  • ライブ合計スループットで、何かが静かにアップロード中か一目で見られる
  • アプリ別内訳で、意外なスパイクが数秒で名前を持つ
  • 過去のタイムラインで、推測ではなく「直近1時間で200MB使った」を確認できる
  • ヘルパープロセスの折りたたみで、Chromeの7ヘルパーが1行として表示

それなしには盲目飛行。それらと、「このホットスポットで5GB以下に留まる」が実際答えられる問いになります。

一目で分かる合計+アプリ別
合計スループットの小さなメニューバー読み出し+アプリ別レートのクリック。ディスク約3MB、アイドルCPU 0.3%未満。

ovaを動かしてみる

一目で分かるメニューバー通信量モニター——ローカル、署名済み、約3MB。

macOS用ダウンロード

シンプルな手動上限手順

層を組み合わせる:

  1. 制約付きネットワークに接続。
  2. そのSSIDで低データモードをオン(ネットワーク別に1度)。
  3. 低データモードでカバーされていないアプリの一時停止チェックリストを実行。
  4. メニューバーでovaを開き、開始合計を記録。
  5. 15〜30分ごとに一目見る。合計が予想より速く登っているなら、タイムラインをスクラブし犯人を見つける。
  6. ソフト上限に達したら、切断するかより積極的に一時停止。

これは自動化されていないが動き、サードパーティツールなしで可能なものの現実的な天井です。

層4: TripModeでのアプリ別スロットリング

従量制ネットワークで本物のアプリ別ファイアウォールに近い何かが欲しいユーザには、TripModeが知る価値あり。有料macOSツールで:

  • ホットスポットや「従量制」ネットワークに接続したときを検出
  • 既定ですべてのアプリをネットワークアクセスから遮断
  • ワンクリックで特定のアプリを許可
  • セッション中にアプリ別データ使用量を表示

ovaとは異なる形のツール——TripModeはファイアウォール(遮断)、ovaはモニター(観察)。多くの人が両方動かす: アプリをオフラインに保つTripMode、許可されたアプリが何をしているか正確に見るova。

層5: ルーターレベル上限(厳格な上限)

通信量に厳格な上限を実際に強制できる唯一の場所はルーターです。多くのモダンルーター——eero、Unifi、ASUS、OpenWrt、pfSense——はデバイス別QoSルールと通信量制限をサポート。「このMacは月100GB以上使えない」の本物のルールが欲しいなら、そこで設定。

例:

  • Unifi: ネットワーク → 設定 → プロファイル → ユーザグループ → 通信量制限を設定、それからクライアント割当
  • OpenWrt / pfSense: LAN IPごとのトラフィックシェイピングまたはQoSルール
  • ASUS Merlin: QoS → デバイス別制限付きアダプティブQoS

ほとんどのユーザにオーバーキルですが、真の上限を強制する信頼できる方法。どれだけ近いか分かるようモニターと組み合わせて。

動かないこと(なぜ)

検索に出るが問題を解決しないアプローチ:

pfctldummynet

macOSはdummynet(FreeBSDトラフィックシェイピングフレームワーク)とipfwを出荷していました。両方最近のmacOSバージョンで削除または非推奨。pfctl(OpenBSDパケットフィルタ)はまだ存在しますが、その通信量シェイピング機能はmacOSで取り除かれました。遮断には依然使えますが、きれいなレート制限には使えません。

「ネットワークリンクコンディショナ」

遅いネットワークをシミュレートするためのApple開発者ツール。テスト用に接続全体を特定のkbpsまでシェイプできます。ただグローバルでオン/オフ——アプリ別や期間別の上限ではない。デバッグに有用、日々の上限ではない。

システムプロキシ経由のスロットリング

レート制限機能のあるHTTPプロキシ(mitmproxy、Charles)を設定するのは、プロキシを通るトラフィックのみシェイプ——多くのアプリが迂回します。

「上限が欲しい」の完全レシピ

すべて合わせて。数字の下に留まることに真剣なら、最も現実的なレシピ:

  1. 従量制Wi-Fiネットワーク用: SSIDごとに低データモードを有効化。
  2. 既知の従量制ネットワークに接続前: 一時停止チェックリストを実行(Time Machine、iCloud写真、同期クライアント、バックアップ)。
  3. ホットスポットセッション用: 既定で遮断しアプリ別に許可するTripModeを追加。
  4. 継続的気づき用: メニューバーでovaを動かし、何が動いているか常に分かるように。
  5. 真の厳格な上限用: ルーターでデバイス別QoS制限を設定。

それが5層、それぞれが異なる失敗モードに対処。1つも「上限」ではない。一緒には上限です。

次に何をするか

1つの層を選び今日追加。ほとんどの人は電話のホットスポットで低データモードを有効にしておらず、その単一のトグルがこのリストの何よりも多くの通信量を節約します。

10分のスタータ:

  1. システム設定 → Wi-Fi → ホットスポットやゲストネットワークとして定期的に使うすべてのネットワークの「詳細」をクリック → 低データモードをトグル。
  2. トップ3同期アプリ(写真、Dropbox、Time Machine)の一時停止コントロールをブックマーク。
  3. ovaをインストールしメニューバーに1週間置き、通常パターンがどう見えるか分かるように。
  4. 次回テザリングするとき、ゼロから始めるよりはるかに良い形になります。

本物のmacOS通信量上限ソリューションは単一の設定ではない——規律と正しいビュー。最も重要な部分をし、存在しないオールインワントグルを追うのを止めましょう。