GA4(Googleアナリティクス)の内部トラフィックにIPv4とIPv6を両方登録
“自分のアクセスがGA4で集計されてしまっている…”と思って調べてみたら、内部トラフィックの対象として扱うIPアドレスとして、IPv4アドレスだけでなくIPv6アドレスの登録も必要でした。
先日、自宅のインターネット接続をようやくIPv6対応させたためでした。
本記事では、GA4の内部トラフィックへのIPv6アドレスの登録についてまとめておきます。
対象は、GoogleアナリティクスのGA4(現行)です。UAも基本的に同様のはずです。また、GTM(Google Tag Manager)経由でGA4の計測を行っている場合であっても仕組みは同様です。
本記事の目的
- GA4の内部トラフィックへのIPv4アドレスとIPv6アドレスの両方を登録する必要性について理解する
仕組み
GA4における内部トラフィック
GA4では、”内部トラフィック”の設定として、特定のIPアドレスからの通信をアクセス解析の対象から除外することができます。
つまり、自分が測定対象のWebサイトにアクセスする際に使用するソースIPアドレスを”内部トラフィック”に設定することで、そのアクセスに関する情報は、解析のための集計から除外されます。
Webサイト編集時に自己チェックする際等のアクセスは集計したくない場合には、この”内部トラフィック”の設定が必要です。
集計されるのはGA4にアクセスする際のソースIPアドレス
“内部トラフィック”では、内部トラフィックとして扱うアクセス元のIPアドレスをルール内に定義しますが、以下のような注意点があります。
- アクセス時、そのルールにマッチするかどうかの判定は、あくまでGA4に対するアクセスに使用されるソースIPアドレスに対して行われる
具体的には、ブラウザがGA4による測定対象のWebサイトにアクセスした際、そのWebページ内に埋め込まれたタグ内容に基づいて、GA4(Google)に対してアクセスします。そのGA4に対するアクセス時の情報が、GA4における解析対象データになるということです。
すると、以下のようなケースが生じる場合があります。
- 測定対象のWebサイトがIPv4アドレスでのみ通信可能なWebサーバであっても、端末側の環境がIPv6通信可能であれば、GA4に対してIPv6でアクセスすることがある
具体的には、その結果、GA4に対してアクセスした際にIPv6のソースIPアドレスが使用されていれば、そのIPv6アドレスが解析のための集計対象データとなります。※Windowsを含む主要なOSは、IPv4よりIPv6を優先して使用します。
よって、ブラウザを動作させる端末側の環境を確認し、IPv6アドレスによる通信有無を把握することで、正しくアクセス解析の除外設定が可能になります。
クライアントがデュアルスタック(IPv4アドレスとIPv6アドレスの両方を持っている)場合には、上記のようなことを把握しておく必要性があるという訳です。
GA4(Google)側は、IPv4アドレスとIPv6アドレスのどちらでもアクセス可
アクセス先となるGA4(Google)側は、IPv4アドレスとIPv6アドレスのどちらでもアクセス可能です。
以下は、アクセス先となるGA4(Google)側(www.googletagmanager.comとwww.google-analytics.com)をnslookup
で名前解決した結果です。
(www.googletagmanager.com) Addresses: 2404:6800:400a:805::2008 142.250.207.104
(www.google-analytics.com) Addresses: 2404:6800:400a:80e::200e 142.250.207.110
IPv4アドレスとIPv6アドレスの両方を解決できています。どちらのアドレスでもGA4による測定が可能です。
ちなみに、測定に使用されているのはwww.google-analytics.comの方かと推察していますが、詳細は未確認です(たぶん以下)。
GTM(Google Tag Manager)経由であっても同様
上記の注意点は、GTM(Google Tag Manager)経由でGA4の測定を行う構成であっても、同様です。
※確認したところ、GTMを使っていても、使っていなくても、www.googletagmanager.com宛にアクセスするという点は同じようです(2023年4月時点)。
設定
以下から設定できます(2023年4月時点)。
Googleアナリティクス管理画面で、管理
→ データストリーム
→ (対象のストリーム(測定対象のWebサイト)を選択)
→ タグ設定を行う
(Google タグ
内のメニュー)
→ (すべて表示
を選択後)内部トラフィックの定義
設定メニューが深いですね…。
上記で、ルールを作成もしくは編集し、自分がブラウザを使用する端末がインターネットに接続する際に(ソースIPアドレスとして)使用されるグローバルIPアドレスを登録します。
私の場合、IPv4アドレスは単一のアドレスを指定、IPv6アドレスは割り当てられているプレフィックスをそのまま範囲指定(CIDR表記)しています。
ルールを初回作成した際には、Googleアナリティクス管理画面で、管理
→ データ設定
→ データフィルタ
→ Internal Traffic
(traffic_type
パラメタの値が “internal” になっているフィルタ)
で、 フィルタの状態
を”有効”にする必要性があります。
データフィルタの設定
内部トラフィック設定に関するヘルプページは、[GA4] 内部トラフィックの除外 – アナリティクス ヘルプにあります。
上記のルールに登録すべき自分のIPアドレスを確認する方法は、次に説明します。
自分のIPアドレスの確認方法
一般家庭からプロバイダ経由でインターネット接続するような場合について、いくつかの確認方法を記載します。
IPv6接続が有効なデュアルスタック接続を想定しますが、詳細はお使いのインターネット接続環境に応じて適宜読み替えてください。
また、Webサイト閲覧時にプロキシサーバやVPNを経由している場合には、同じくその環境に応じて適宜読み替えてください。
確認用サイトによる簡易的な確認方法
IPアドレスの確認(IPv4アドレス・IPv6アドレス) | みんなのネット回線速度(みんそく)等のサイトで、自分がインターネットにアクセスする際に(ソースIPアドレスとして)使用しているグローバルIPアドレスを確認できます。
注意点1:IPアドレスは変わるかも
確認用サイトによる確認に限らず、一般的な注意点です。
これらのグローバルIPアドレスは、IPv4アドレス、IPv6アドレスともにプロバイダのDHCP経由で取得しているケース(IPv6ならRA経由の場合も)が多いため、変わる可能性があります。
実動作としては、私の環境(家庭用ルーターによる常時接続、MAP-E)では、IPv4アドレスについては、ルーターの長時間の停止や機器の交換をしない限り変わることはありません。
IPv6アドレスの方は、後述の確認方法(プレフィックスの確認)があるので実動作は細かく確認していません。
注意点2:IPv4アドレスは共有されているかも
確認用サイトによる確認に限らず、一般的な注意点です。
さらに細かい話になりますが、使用しているプロバイダのIPv4 over IPv6の仕様として、IPv4アドレス共有技術が用いられている場合には、他の契約者とIPv4アドレスが共有されている可能性があります(MAP-EとかDS-Liteとか)。
この場合、同じIPv4アドレスを共有する自分以外の人によるIPv4アクセスもGA4で除外されてしまう可能性が生じることにはなりますが、IPアドレス空間全体に対してごくごく局所的な話なので、影響が無いものとみなして良いレベルでしょう。
IPv4アドレス共有技術についての詳細は、以下の動画が参考になります。
端末(PC)のIPアドレスの確認
Windowsであれば、ターミナルやコマンドプロンプトでの> ipconfig
の結果や、ネットワークのプロパティ画面にて、インタフェースに割り当てられているIPv4アドレスと、IPv6アドレスを確認できます。
IPv4アドレスに関する補足
IPv4接続時には、端末からインターネット上の宛先に到達するまでの間にNATされているケースが多いです。
よって、端末に割り当てられているIPv4アドレスは、プライベートアドレスであり、前述のみんそく等の確認用サイトで表示されたIPv4アドレスとは異なるはずです。
IPv6アドレスに関する補足
IPv6接続時には、通常はNATされません。
よって、端末に割り当てられているIPv4アドレスは、前述のみんそく等の確認用サイトで表示されたIPv6アドレスと同じはずです。
家庭用ルーターの管理画面による確認
Buffaloの家庭用ルーターの管理画面です。
家庭用ルーターの管理画面
家庭用ルーターのWAN側インタフェースに割り当てられているIPv4アドレスと、IPv6アドレスを確認できます。
IPv4アドレスに関する補足
IPv4接続時には、端末からインターネット上の宛先に到達するまでの間にNATされているケースが多いです。
家庭用ルーターでのみNATされている場合には、家庭用ルーターのWAN側インタフェースに割り当てられているIPv4アドレスは、前述のみんそく等の確認用サイトで表示されたIPv4アドレスと同じはずです。
IPv4の接続方式によっては、ルーターより先のプロバイダ側のネットワーク機器で(も)NATされる場合があります。
その場合には、家庭用ルーターの管理画面では、自分がインターネットにアクセスする際に(ソースIPアドレスとして)使用しているグローバルIPアドレスを確認することはできません。
IPv6アドレスに関する補足
IPv6接続時には、通常はNATされません。
よって、家庭用ルーターのWAN側インタフェースに割り当てられているIPv6アドレスは、前述のみんそく等の確認用サイトで表示されたIPv6アドレスとは異なるはずです。
割り当てられているIPv6プレフィックス(範囲)の確認
プロバイダの会員用メニュー等で、プロバイダ(もしくはVNE)から割り当てられているIPv6プレフィックスが表示されます。
プロバイダの会員用メニューでIPv6プレフィックスの確認
IPv6接続時、自分がインターネットにアクセスする際に(ソースIPアドレスとして)使用するグローバルIPアドレスは、このIPv6プレフィックスの範囲内のIPv6アドレスが使用されます。
よって、前述のGA4の内部トラフィックの定義では、このIPv6プレフィックスを登録してしまえば良い訳です。(通常プレフィックス長は64bitです)
詳細は、お使いのプロバイダが提供するIPv6接続サービスの仕様によります。
IPv6アドレスでGA4にアクセスしていることが分かるキャプチャ
参考までに、ブラウザにてキャプチャを取得してみたので、以下の記事にまとめてあります。
まとめ
本記事では、GA4の内部トラフィックへのIPv6アドレスの登録についてまとめてみました。
ちなみに、本記事を書くきっかけになった理由は、先日、自宅のインターネット接続をようやくIPv6対応させたためでした。
あと余談ですが、GA4の除外設定は、IPアドレス指定以外に良い方法が無いものかと思ったりもします。