前へ 1 2 次へ

Webサイト管理者のための2020年版“IPv6対応入門”第6回

“IPv4 over IPv6”環境下で通信ができない条件とはどんなものか

「IPv4/IPv6共存環境」の増加でWeb管理者/開発者が注意すべきこと

文●大塚昭彦/TECH.ASCII.jp 監修● 久保田 聡/日本ネットワークイネイブラー

  • この記事をはてなブックマークに追加
  • 本文印刷

 前回記事ではIPv6ネットワークを経由して、IPv4インターネットで公開されているWebサービス(IPv4コンテンツ)へのアクセスを可能にする“IPv4 over IPv6”の技術がなぜ必要となっているのか、その背景と仕組みの概要(主にJPNE「v6プラス」が採用するMAP-E方式)を説明した。そのまとめで述べたとおり、IPv4 over IPv6環境からのアクセスには、旧来のIPv4ネットワーク(IPv4ネイティブ環境)からのアクセスとは少し違う部分がある。

 それではこうした特性が、Webサービスやアプリの開発や運用にどんな影響を与えるのだろうか。今回もMAP-E方式を例にとり、IPv4ネイティブ環境との違いを具体的に確認したうえで、注意すべき点をまとめてみたい。

TCP/UDPポート番号の扱いにおける注意点

 IPv4ネイティブ環境とMAP-E環境は実用上でどう違うのか。まずはその“ヒント”から見てみよう。

 v6プラスサービスを提供するISPのWebサイトを見ると、「v6プラスでは一部利用できないサービスがある」という注意書きが掲載されている。たとえばGMOインターネット「とくとくBB」のWebページにある注意書きは、次のようなものだ。

「v6プラスで利用できないサービス」の注意書き(出典:GMOインターネット「とくとくBB」

 順不同で書かれているので少しわかりにくいが、これらはそれぞれに「利用できない」理由が異なる。

 まずは、IPv4アドレスを共有しているという理由だ。前回も説明したとおり、MAP-EはグローバルIPv4アドレスの枯渇状況に対応し、複数のユーザーで効率的に「1つのIPv4アドレスを共有する」ための仕組みである。そのため固定IPサービスや、IPv4アドレスを1ユーザーが専有しなければならないようなサービスは利用できない(そもそも固定IPサービスは、ISPが別のサービスメニューとして提供していることが多い)。

 もうひとつ、MAP-Eでは個々のユーザーに対し、グローバルIPv4アドレスと共に一定のTCP/UDPポート番号範囲を割り当て、ユーザー宅のルーター(MAP CEルーター)がそれを使ってNAPT処理を行う。上述した「グローバルIPv4アドレスの共有」を実現するためだ。

 そのため、通常のWebアクセスのようにユーザー側からアウトバウンド方向の通信を始める場合は問題ないが、インターネット側から通信を始めたい場合には影響が出ることがある。前述した注意書きの残りの項目は、こうしたポートの扱いに関する制約から生じるものと言える。

 たとえば、特定のポート番号を使ってインターネット側からの通信を待ち受ける、公開サーバーのような使い方の場合だ。IPv4ネイティブ環境のように、HTTP=80番、HTTPS=443番といったポート番号の“決め打ち”では、MAP-E配下のサーバーにはアクセスできない※注

※注:MAP-Eにおいても、ISPから割り当てられるポート番号範囲がわかっていれば、そのポートを使ってインターネット側からのアクセスを待ち受けること(サーバーを公開する、いわゆる“ポート開放”)自体は可能だ。ただしv6プラスでは、ポート番号範囲の固定は保証されておらず、時間が経つと変動する可能性がある。

MAP-E環境におけるアウトバウンド/インバウンド通信の例。IPv4ネイティブ環境と同じように考えてしまうと、インターネット側からの通信ができない

 これはサーバーに限らず、ユーザーアプリケーションでも同じだ。外部からのアクセスを待ち受けるポート番号を、変更できない“決め打ち”の形でアプリケーション開発をしてしまうと問題が生じる。この点は、アプリケーション開発者に注意しておいてほしいポイントだ。

前へ 1 2 次へ

過去記事アーカイブ

2020年
03月
04月
05月
06月
07月
08月
09月
10月
11月
2012年
02月
2011年
05月
07月
2010年
08月
09月