1つの IPアドレスに複数のユーザーが紐づいているか検出する Cloudflare のサービス

投稿: 2021年10月18日
タグ: 
  クラウド  ニュースネタ

Cloudflare Blog で面白いサービスの記事が投稿されていました。

Multi-User IP Address Detection
https://blog.cloudflare.com/multi-user-ip-address-detection/open_in_new

IPv4 のアドレスの裏に複数のユーザーがいるかどうか検出する機能をサービスに組み込んで提供しているそうです。 これは言い換えると NATされた IPアドレスかどうか検出できる機能、と言えると思います。

  • IPv4 のアドレスにどれだけのユーザーが紐づいているか推計できる
  • WAF やセキュリティサービスに組み込み、不用意なブロックを回避する
  • インターネット トラフィックの 77% が IPv4

    Cloudflare は Cloudflare Radar で HTTP/HTTPS の利用比率や モバイル/デスクトップのトラフィック比率などを公開していますが、 その中に IPv4/IPv6 の比率もあり、今(10/18) 見てみたら全トラフィックの 73% が IPv4、人以外(ロボット) のトラフィックを除くと 77% が IPv4 になっていました。

    まだまだこれだけ IPv4 が多いのだから、多くの IPアドレスは NAT変換されたもので 1つのIPアドレスは多数のユーザーに紐づいていることになります。

    同一 /24 IPプリフィックス レンジ内の 35%に 100以上のクライアントが存在

    当該ブログによると最初の24ビットのアドレスが一致している IPアドレスの裏に 100以上のブラウザクライアントがいるトラフィックが全体の 35% に上ったそうです。 /24 (クラスC) が一致してれば、同じ組織の IPアドレスでしょうから、この値で少数のパブリックIPアドレスにどれだけのユーザーがいるか推計できる、という話です。

    この実績値を基に、どのIPv4 アドレスが NATされたものか検出する機能を開発し、IPアドレスベースでの対応が必要なサービスに組み込んでいるそうです。 Cloudflare のブログによると現時点で約 50万の IPアドレスを識別できるとのことです。

    WAF や DDos Protection などのサービスに組み込み

    DDos 等の攻撃があったら IPアドレスで拒否するのは一般的な対応で、IPアドレスに紐づく他のクライアントもアクセス拒否されますが この機能があれば、「どの程度のクライアントに影響があるか推計できる」ということになるようです。 記事によると、クライアント数に応じてしきい値を変更することで不幸なブロックを減らせる、としています。

    大量のアクセスデータを持っている会社ならではの機能といえそうです。同じことは Google/Microsoft/Akamai なんかでもできそうですし、やってそうです。
    この分野のサービスは深くは関わったことがないので、今度時間があるときに調べてみたい、と思います。