Webサイト管理者のための2020年版“IPv6対応入門”第6回
“IPv4 over IPv6”環境下で通信ができない条件とはどんなものか
「IPv4/IPv6共存環境」の増加でWeb管理者/開発者が注意すべきこと
ユーザー識別における注意点
前回記事のまとめでは「ユーザーの識別は送信元の共有IPv4アドレス+ポート番号により行わなければならない」と書いた。この点も、Webサイト管理者やアプリ開発者には理解してほしいポイントだ。
たとえばこれは、アクセスログ解析に影響を及ぼす。IPv4ネイティブ環境ならば、同じIPv4アドレスからのアクセスは同じユーザー(同じISP契約者)のものと見なすことができた。だが、MAP-Eを始めとするIPv4 over IPv6技術によりIPv4アドレスを共有する環境からのアクセスの場合は、複数のユーザーが同じグローバルIPv4アドレスを共有しているため、そう断定することはできない。
Webサイトにアクセスしたユーザー数を調べる程度であれば、ユーザーが識別できなくても、解析結果に誤差が生じる程度で大きな問題にはならないだろう。だが、たとえばサイバー攻撃や不正アクセスの調査をする場合には、同一のアクセス元からのアクセスを正確に断定できなければならない。
そのためには、サーバーのアクセスログに記録される書式設定を、アクセス元のIPv4アドレスのみから“IPv4アドレス+ポート番号”に変更しておく必要がある※注。ログ解析ツールの改修、解析ルールの変更なども必要になるかもしれない。
※注:RFC 6302「Logging Recommendations for Internet-Facing Servers」でも、複数ユーザーがグローバルIPv4アドレスを共有する環境の増加に対応して、インターネット公開されているサーバーではIPv4アドレスとポート番号、正確なタイムスタンプを記録しておくよう推奨している。
また、アクセス元のIPv4アドレスに基づいてアクセス制限/許可を行っているようなWebサイト、アクセス元のIPv4アドレスに基づいて同一ユーザーかどうかを識別するアプリケーションといったものがあれば、それらも仕組みを再検討、改修する必要があるだろう。
ベストな解決策はやはり「IPv6対応」である
以上で紹介した注意点は、数あるIPv4 over IPv6手法の中でもMAP-Eをはじめとする共有IPv4アドレスを利用する方式に限った話だ。ほかの主要な方式がどのような仕組みでIPv4 over IPv6を実現しており、IPv4ネイティブ環境とはどこに違いがあるのか、Webサイト運営やアプリ開発にはどう影響するのかは、大まかであっても構わないので理解しておきたい。
――と、こう書くと「IPv4 over IPv6の手法は多すぎて、とても対応しきれない」といった反応もあるだろう。筆者もそのとおりだと思う。ただしインターネット環境の変化、とくにIPv4 over IPv6利用者の増加に伴って、従来のやり方そのままでIPv4コンテンツを維持することが次第に難しくなってきているのが現状だ。この動きは今後も継続し、さらに加速するのは間違いない。
ここまで説明してきたような課題は、従来の“IPv4 Only”な仕組みでサービスやアプリケーションを維持するからこそ生じるものだ。IPv4アクセスとIPv6アクセスに両対応するデュアルスタックのサービス、つまり本連載で説明している「IPv6対応」サービスにしてしまえば、こうした悩みからも解放されるはずだ。
IPv6アプリケーション開発の詳細までは本稿の手に余るため割愛するが、以下に基礎的な参考資料へのリンクを紹介しておく。これらを参照して、まずは注意すべきポイントを確認してほしい。