あなたの質問を注意深く読んだ後、何かが目立ちました:
そして、3Gでの膨大な量に加えて、この電話はWifiの外でほとんど時間を費やしませんでした。
お使いのiPhoneは、スリープモードになると、WiFiラジオをオフにしてバッテリーの電力を節約します。そのため、携帯電話がスリープ/ロックされているときにバックグラウンドで処理を実行しているデータを大量に消費するアプリがある場合、3Gで実行しています。WiFiオフスリープモードの動作には多少の一貫性がないことに注意してください。ただし、携帯電話データをシャットオフすることで、これらのテストを実行している間、携帯電話で3Gが使用されないようにすることができます。そうすれば、スリープ状態になると、データ用に3GではなくWiFiを使用し続け、監視ネット内のすべてのトラフィックを確実にキャプチャします。
犯人を突き止めるのに役立つかもしれないいくつかの技術を一緒にまとめることができます。
最初の手っ取り早い方法として、mitmproxyを使用してWi-Fiネットワーク上にある電話を監視してみてください。この優れたmclov.inブログ投稿から、Macで電話のプロキシを設定し、それを介してすべてのhttp / sトラフィックをフィルター処理できます。
- mitmproxyツールをダウンロードして、mitmproxyのフォルダーに移動し、sudo python setup.py installを実行してセットアップします。すべてがうまくいけば、$ PATHでmitmproxyが利用可能でなければなりません。
- mitmproxyを実行してmitmproxyを起動します。
- ifconfig en1(または使用しているインターフェイス)を実行して、コンピューターのIPアドレスを取得します。
- ワイヤレス設定に移動し、プロキシを「手動」に設定し、IPをコンピューターのIPに設定し、ポートを8080に設定して、iPhoneでプロキシを設定します。
ファイルへのhttp / s呼び出しを記録するようにmitmproxyを設定すると、一定期間後にファイルを分析して傾向を調べることができます。また、http / s呼び出しのペイロードを検査できるため、この方法で異常に大きなリクエストを見つけることができます。
もちろん、このアプローチは、犯人が通信にhttp / sを使用していることを前提としています。そうでない場合は、mitmproxyを介して問題が表示されないため、低レベルのソリューションに頼らなければなりません。
制御するWiFiネットワーク上のすべてのトラフィックを監視して、少なくともデータ転送のエンドポイントを探し出す必要があります。帯域幅の監視を設定するのは難しくありませんが、大量のデータになる可能性があるため、IPごと、エンドポイントごとのログを保持することは、消費者グレードのハードウェアでは非常に困難です。すべてのパケットは、発信元、宛先をチェックし、時間とサイズをログに記録する必要があります-すぐに追加されます。
ただし、ある程度の数値を取得して検索スペースを絞り込むと、人間が解析できる可能性があります。
まず、IPレベルごとに帯域幅を監視するネットワークをセットアップする必要があります。そのためには、Tomatoを実行するLinksys WRT54GLコンシューマーグレードWiFiルーターと、IPレベルの帯域幅追跡用のTeamanIPTrafficアドオンをお勧めします。
2番目:OpenDNSを使用するようにルーターでDNSを設定します。OpenDNSアカウントでDNSルックアップを追跡するには:
これで、ネットワークで実行されたDNSルックアップがすべて記録されます。
追跡しやすくするために、このネットワークで電話機に静的IPを割り当てます。
そして...待って見て。
ルーターのIPアクティビティテーブルごとに、電話機に割り当てられたIPアドレスのアクティビティを監視します。このIPアドレスのデータアクティビティが急増すると、OpenDNSコンソールに移動して、電話機のデータ移動が多い期間のDNSルックアップの統計とログを確認します。
これにより、その時点で解決されていたホスト名の短いリストが表示されるはずです。そして、そのリストを使用して、アプリケーションに絞り込むことができる場合があります。