テザリングとデータ
Macにネットワークを従量制として扱わせる
macOSは、iPhoneのインターネット共有など一部の接続を高コストとして扱います。他のスマートフォンのテザリングは、Macからは通常のWi-Fiに見えることがあります。
症状
- Androidのテザリングでも、アプリが自宅のWi-Fiと同じように動作する。
- MacをUSBでスマートフォンにテザリングしている間に、アップデートや同期が実行される。
- 1ギガバイトごとに料金がかかるネットワークで、省データモードがオフになっている。
考えられる原因
- macOSが把握しているのは一部の接続だけ。Appleのドキュメントでは、高コストのインターフェイスとしてモバイル通信とインターネット共有が挙げられています。他のスマートフォンのテザリングは挙げられていません。
- テザリングがEthernetに見えることがある。ケーブルで接続したスマートフォンは、有線またはUSBのネットワークサービスとして表示されることがあります。
- macOSにはネットワークを高コストに設定するスイッチがない。システム設定には、Wi-Fiネットワーク用の省データモードはありますが、従量制のスイッチはありません。
確認方法
高コストのインターフェイスを使っているプロセスを表示します。アプリがネットワークを使っているのに何も表示されない場合、macOSはそのネットワークを高コストとして扱っていません。
nettop -P -l 1 -t expensiveアップルメニュー >「システム設定」>「Wi-Fi」を選択します。ネットワークの横にある「詳細」をクリックします。
このネットワークの「省データモード」のスイッチを確認します。
解決方法
Wi-Fiのテザリングでは、Wi-Fiの「詳細」で「省データモード」をオンにし、「OK」をクリックします。
iPhoneでは、できるだけインターネット共有を使います。macOSはこれを高コストとして扱います。
その接続を使っている間は、同期、バックアップ、アップデートを手動で一時停止します。Macがバックグラウンドでインターネット共有のデータを使うを参照してください。
macOSの自動ダウンロードをオフにします。テザリング中のソフトウェアアップデートのダウンロードを止めるを参照してください。
Kilobatを使う場合
Kilobatは、ネットワークごとにデータコストを「自動」「従量制」「定額」から設定します。「自動」はmacOSの判断に従います。
現在のネットワークを従量制に設定します。AndroidのテザリングやUSB/Ethernetテザリングでも使えます。
kilobat networks cost meteredWi-Fiメニュー、予算メニュー、「ヘルス」タブ、「設定」でも設定できます。
Kilobatが何に基づいて動作し、macOSが何を報告しているかを確認します。
kilobat conditions --json出力
metered、osMetered、meteredSource(macOSまたはyou)。従量制ネットワークでは、Kilobatは「旅行」に切り替わり、予定された速度テストをスキップします。ブロックにはProとネットワークフィルタが必要です。
Wi-Fiでネットワークを区別するために、Kilobatには位置情報へのアクセスが必要です。従量制ネットワークでアプリをブロックするを参照してください。
よくある質問
システム設定でネットワークを従量制に設定できますか?
いいえ。システム設定にあるのは、Wi-Fiネットワークごとの省データモードです。省データモードと高コストは別々のフラグです。
接続が高コストかどうかを、アプリはどうやって知るのですか?
AppleのNetworkフレームワークを使うアプリは、現在のパスのisExpensiveとisConstrainedを読み取れます。
出典
- Apple Developer:NWPath isExpensive
- Apple Developer:NWPath isConstrained
- Appleサポート:MacのWi-Fi設定
- nettop(1)、macOS 27.2に付属のmanページ
- Kilobatドキュメント:テザリングとデータコスト
出典は2026年10月29日に確認しました。manページはmacOSに付属のものです。「ターミナル」でman <name>を実行すると開けます。