Q&A
解決済み

テザリングの通信を区別する仕組み

キャリアがどのようにテザリング通信を判別しているかの技術的な仕様を知りたいです。

テザリングって、単にスマホがルータ機能を使ってWiFiやUSBなどでネットワークを共有する仕組みだと思っていたのですが、テザリングオプションがOFFだとできないようです。
また、auデータMAXプランなどはデータ通信無制限といってもテザリングは2GBまでに制限されているようです。

ということは、キャリア網側でテザリングかどうかを区別して、通信を許可したり通信量をカウントしていると思われるのですが、技術的にはどのような仕組みで区別しているのでしょうか?

OSがアプリからの通信かテザリングでの通信かでなにか区別をするIPヘッダなどをつけているのでしょうか?
Androidなどは昔、本体にテザリング機能がない機種でもテザリングができるようなアプリがありましたが、この場合アプリが通信しているのでテザリングオプションがなくてもテザリングができてしまうとかはないでしょうか?

もしなにか知っている人がいたらよろしくおねがいします。

ベルりん
マスター

ベルりんさんのコメント
ベルりん
ベルりんさん・質問者
マスター

Galaxy S9 SC-02K docomo(docomo) medal ベストアンサー獲得数 16 件

GIGAGINEの参照元の記事をちょっと読んでみましたが、

https://android.stackexchange.com/questions/47819/how-can-phone-companies-detect-tethering-incl-wifi-hotspot


・端末に搭載された特定のアプリのみ許可する
・端末がテザリングが許可しているかどうか尋ねる。
たとえば、Nokia E51であれば携帯組み込みのブラウザのみインターネットが使えたという例がありました。
キャリアの端末のテザリングアプリのみ(なにか特別な識別子/証明書などを付与して)通信を許可するという方法はあるかもしれませんね。
例では、PDANetなどのテザリングアプリだとテザリングできないという説明がありました。
ただ、これだと、SIMフリー端末など利用できる端末のすべてのテザリングアプリを区別する必要があるので、対応していない端末だとテザリングできない、などの現象が発生しそう。

・TTLを調べる
TCP/IPのTTLはルータを通ると-1されるので、端末が付与するTTLと異なるTTLをもっていたらテザリングされているというもの。
これも送信元がTTLを変えて送信すれば区別できないし抜け道がありそうですね。

・MACアドレス検査
----
TCP / IPネットワーク上のデバイスはすべて、ネットワークインターフェイスに一意のMAC IDが設定されています。
----
これはよくわからない。。。特定の端末の特定の条件下ではくべつできるだろうけど...(元投稿のコメントにもわからないとの意見が)

・TCP/IP Stack Fingerprinting
・Looking at the Destination IP/URL
WIndowsがMSのサーバーにつなぐとか、特定のOSの接続を見て区別しているなど。
でも、スマホからスマホでテザリングしたら、OSや端末の違いはないからテザリングでも使えるってこと?

結局はいろいろな方法を組み合わせて泥臭く区別しているってことかな。
だとしたらテザリングができてしまう抜け道とかもありそう。

#この質問は抜け道が知りたいという意図ではありません。
  • 16