IPアドレスとは(2) ~ 枯渇するIPv4と次世代IPv6 ~

ンターネットに接続しているコンピュータやルータなどの通信機器には、必ずIPアドレスという固有の識別番号が割り当てられていることを前項で学習しました。

IPアドレスは32桁の2進数から成り立っており、それを10進数に変換し、さらにドメインに変換することで、難解な数値の羅列から私たちは解放されています。

この32ビットのIPアドレスのことを、

IPv4(インターネット プロトコル バージョン フォー)

と言います。

前項でも少し触れましたが「v4」は「Version 4」の略で、IPのバージョンを表しています。「Version 4」は現在もっとも利用されているバージョンになります。

2の32乗で、約43億通りのIPアドレスを割り当てることができますが、はたしてこの数は適正なのでしょうか?

じつは本項タイトルにもあるように、

IPv4が枯渇(不足)している

のです。

なぜなら、言うまでもなくインターネットに接続する機器すべてに重複しないIPアドレスが必要だからです。

世界中の通信機器に固有の番号が必要とはいえ、43億通りあれば十分なような気もします。43億台以上の通信機器がインターネットに接続されているのでしょうか?

答えは、イエスでもありノーでもあります。この問題にはいくつかの要因があるからです。

まず、43億通りのアドレスのすべてを使用できるわけではなく、一般の使用が認められていないアドレスもあります。例えば、前項で学習したホストアドレスがすべて「1」や「0」などのIPアドレスは使用できません。

次に、パソコン以外にもインターネットを利用する機器、デジタル家電やスマートフォンの普及が大きな要因となっています。エアコン、冷蔵庫、電子レンジなどの製品にIPアドレスを持たせることで、インターネットと融合した様々なサービスを生み出すネット家電が普及しています。

例えば、スマートフォンからインターネット経由で家庭内にあるレコーダーにアクセスして録画予約をしたり、お風呂やエアコンの温度調整、製造元による遠隔故障診断といった、家庭内の家電にリアルタイムでアクセスすることが可能になっています。

またスマートフォンに代表されるモバイル機器は、日本国民の8割以上が持つ時代になっており、インターネット接続はすでに標準機能となっています。世界の人口増加を考えると、43億ではとても足らないのが実情なのです。

つまり、IPアドレスが不足することは何年も前からわかっていたことで、後述するNATNAPTなどの技術によって「アドレスの節約」をしながらやりくりしているのです。

一方で、IPアドレスの割り当てを始めた初期に、アメリカに代表されるネット先進国や大学、研究機関にIPアドレスをかなり大きなブロック(例えば「1~100まで」といった具合)で配分したため、膨大なアドレスが未使用だったことも要因となっています。

このような要因で、IPv4は2010年から2013年には枯渇すると言われていました。そしてついに、2011年4月15日、日本ネットワークインフォメーションセンター(JPNIC)は、国内向けIPv4アドレスの在庫が枯渇したことを正式に発表しました。

枯渇ということは、新規で割り当てるアドレスがもうないということです。

そうなると、これから新たにスマートフォンやパソコンを購入してもインターネットに接続できないのかというと、そういうわけではありません。基本的には、世界唯一のアドレスを必要とする通信事業者等に影響する話であって、我々一般ユーザーに特別な影響があるわけではありません。

その仕組みを理解しておきましょう。

まず、これまで学習してきた世界唯一のIPアドレスを、

グローバルアドレス

と言います。

インターネットに接続するすべての機器には、重複しない世界唯一のアドレスを割り当てる必要があると学習してきました。まさにこのグローバルアドレスのことです。

しかし、これまでの学習とかなり矛盾するようですが、

インターネットに接続するすべての機器がグローバルアドレスである必要はない

のです。

例えば、1台のパソコンをインターネットに接続する場合、プロバイダを介さないと仮定すると、そのパソコンはグローバルアドレスが必要になります。

しかし、複数台のパソコンがネットワーク化されたLANをインターネットに接続する場合はどうでしょうか?

プロトコルとは で学習のとおり、同じセグメントのLANはL2通信で、異なるセグメントのLANを接続する場合は、ルータ等のL3機器で中継する必要がありました。

インターネットに接続する場合も同様です。インターネットへの接続は第3層のL3通信となり、ルータ等の機器がインターネットとLANを中継することになります。

つまり、ルータ等の代表的な機器だけがインターネットへ接続できれば良いのです。すなわち、LAN内のすべてのパソコンにグローバルアドレスは必要ありません。

この代表となる機器は、ルータであったり、プロキシサーバというコンピュータがその役割を担ったりします。

詳しい解説は割愛しますが、インターネットに接続しているのが代表的な機器だけでも、その他のパソコン(クライアントという)からインターネットを利用することができます。

プロキシサーバで接続する場合は、プロキシサーバが代理でウェブページなどのインターネット上のデータを取得し、他のクライアントは、インターネットからではなくプロキシサーバからデータを受け取ります。

クライアントはインターネットに直接アクセスするわけではなく、プロキシサーバにアクセスするのでグローバルアドレスは必要ないのです。したがって、プロキシサーバがグローバルアドレスを1つ取得するだけで済みます。

では、クライアントのアドレスはどうなるのかというと、これは任意で割り当てることができます。

このようなアドレスを、

プライベートアドレス

と言います。

プライベートアドレスは、プロキシサーバの場合、実際にはインターネットに接続しないクライアントに割り当てられるので、そのLAN内でのみ重複しなければどんなアドレスでも問題ありません。

こうした仕組みを利用することで、限りあるグローバルアドレスの有効利用につながります。

プライベートアドレスは自由に割り当てることができますが、多くの場合、下表の範囲で割り振ることが慣例なっています。

プライベートアドレスとクラス
クラスA 10.0.0.0 ~ 10.255.255.255
クラスB 172.16.0.0 ~ 172.31.255.255
クラスC 192.168.0.0 ~ 192.168.255.255

特にクラスC「192.168.~」のアドレスは「イチクニ イロハ~」と呼ばれ、馴染みのある方も多いと思います。

また、ルータでインターネットに接続した場合は、プロキシサーバとは異なる方法でアドレスの節約が行われます。

ルータの場合は、

NAT(ナット)またはNAPT(エヌ エー ピー ティー)

という機能でインターネットに接続します。

NATは「Network Address Translation」の略で、NAPTは「Network Address Port Translation」の略になります。NAPTは「IPマスカレード」とも呼ばれます。

どちらも簡単に言うと、

グローバルアドレスとプライベートアドレスを変換する機能

になります。

ネットワークの内(LAN)と外(インターネット)で自動的にアドレスを切り替える技術で、クライアントのプライベートアドレスを、ルータ自身のグローバルアドレスに書き換えて中継します。(ルータになりすまして通信するイメージです)

この場合は各クライアントがインターネットに接続しますが、同様にルータ1台がグローバルアドレスを取得するだけで、クライアントはプライベートアドレスのままインターネットを利用することができます。

こうした節約技術によって、我々一般ユーザーがグローバルアドレスを取得する必要はほとんどありません。じつはプロキシサーバもルータも、グローバルアドレスを取得する必要はないのです。

もうおわかりのとおり、プロバイダがインターネットへの接続を仲介しますが、一般ユーザーはプロバイダのプライべートアドレスを利用してインターネットに接続しているからです。

これは「キャリアグレードNAT」または「大規模NAT」と呼ばれる仕組みで、契約者と大規模なNATを行っています。プロバイダは少数のグローバルアドレスを取得し、契約者の膨大なパソコンなどの通信機器とのNATを行っています。

こうして限りあるIPアドレスの有効利用が行われていますが、いずれにせよIPv4は実質的に枯渇しているのです。

そこで、IPv4に替わる新しい次世代IP規格が開発されました。それが、

IPv6(インターネット プロトコル バージョン シックス)

です。

IPv4からの最大の変更点は、IPv4が32ビットなのに対し、

IPv6は4倍の128ビット

に拡大されたことです。

128ビットということは、2の128乗となり、使える数字の組み合わせは「兆」や「京」を軽く超え「澗」という天文学的な数になります。枯渇の心配はまったくありません。さらに、暗号化通信を実現するプロトコルが実装されたセキュリティの高いIPとなっています。

IPv6のアドレス表記は、128ビットを16ビットずつ8ブロックに区切り、16ビットの各ブロックの数値を16進数で表記します。

また、IPv4ではピリオド「.」で区切りますが、IPv6ではコロン「:」で区切ります。(16進数の変換については、2進数と10進数と16進数 を参照してください)

128ビットの2進数からIPv6への変換イメージ

このように、IPv4と比べればかなりややこしい表記となります。IPアドレスでサーバを指定するのは困難となり、今後IPv6に移行すれば、DNSの役割はかなり重要となります。

では、IPv4からIPv6への移行はどのように行われているのでしょうか。じつは、IPv6はWindows Vistaから標準搭載されています。それから何年も経過していますが、IPv6が身近になった印象があるでしょうか?

やはり現状は、スムーズに移行しているとは言えません。いくつかの障害(問題)があるからです。

なかでも大問題なのが、

IPv4とIPv6の互換性がない

ということです。

つまり、同じIPであっても、IPv4の機器とIPv6の機器では通信ができないのです。

古い世代のOSIPv6に対応していないルータなどのネットワーク機器は、対応したソフトウェアをインストールするか対応機器に変更しなければ通信できません。

すでに全世界に普及しているIPv4のネットワークから新しいIPv6のネットワークにアクセスすることができないのです。逆に、IPv6からIPv4のネットワークへのアクセスにも取り決めや制限があり、フリーアクセスではありません。

そのため、IPv4とIPv6のネットワークがインターネットに共存することとなり、新たにIPv6でインターネットに接続してもIPv4環境のウェブサイト(IPv6に対応していないウェブサーバに保存されているウェブサイト)は見えない可能性があるのです。

企業やサイト運営者からすれば、どちらのユーザーにも対応しなければならず、IPv6とIPv4の併用は避けられません。結局のところIPv4が必要になるのです。

そのおかげで、

一般ユーザー側は不便を感じない

ということも切り替えが進まない大きな理由のひとつです。

ただし、IPv6通信には多くのメリットがあります。

先述のとおり、枯渇の心配がないためにNAT変換などの本来不要な処理をする必要がなく、理論的には通信速度も速くなります。

少し専門的になりますが、まずIPv4通信の話をすると、インターネットに接続するためにはユーザー認証が必要になります。

プロバイダと契約しているのですから、当然インターネット接続の際には認証を行う必要があります。契約したプロバイダからユーザーIDとパスワードが送付されていると思います。

IPv4では、この認証のために「PPP:ピーピーピー」というプロトコルが使われていました。PPPは「Point-to-Point Protocol」の略で、2地点間の通信を行うためプロトコルです。

概念としては、直接つながった機器同士の通信を規定した第2層のプロトコルで、遠隔地の機器と接続し、PPPフレームにパケットをカプセル化して送信します。(フレームとパケットについては、プロトコルとは を参照してください)

PPPには認証機能があり、インターネットへの接続はこの認証機能を利用しています。

本来インターネットへの接続は、第3層のIPとルータによるルーティングによって行われますが、IPには認証機能がありません。認証がなければインターネットへ誰でもアクセスできてしまいます。

これは簡単に接続できてしまうという意味ではなく、プロバイダが接続を代行しなければ個人でインターネットに接続することはまず不可能なためです。(許認可、設定、グローバルアドレスの取得など)契約さえすれば、その後に認証もなくフリーアクセスというわけにはいきません。接続の際にプロバイダとのユーザー認証がどうしても必要になります。

インターネットの初期には、電話回線を使ってダイヤルアップ接続によってPPP認証を行っていました。基本的にはパソコン1台で、PPPの想定である1対1の通信でした。

その後、LANが一般的になってくると、複数のクライアントからインターネットへの接続が必要になってきました。しかし、LANはイーサネット規格が主流であり、同じ第2層のPPPは1対1の通信を規定するプロトコルなのでLANに対応していません。

そこで考えられたのが、PPPをイーサネット上で使えるようにした、

PPPoE(ピーピーピーオーイー)

というプロトコルです。

PPPoEは「Point-to-Point Protocol over Ethernet」の略で、PPPをイーサネットで使うためのプロトコルです。PPPフレームをイーサネットフレームでカプセル化して通信します。(トンネリングと言う)

PPPoEによってLAN上からもユーザ認証が可能になり、古くからあるプロトコルですが、光ファイバーが全盛となった現在でも使われているプロトコルです。

ただし、カプセル化によるトンネリングを行うため、ルータなどの中継地点でカプセル化を解除する処理が必要となります。そのため、終端装置やルータなどの機器が必要になります。こうした機器の処理がボトルネックとなり、インターネットの通信速度が遅くなるケースがあります。

ところがIPv6での通信になると、PPPoEでの接続が不要となります。

なぜなら、IPv6通信では理論上すべてグローバルアドレスを付与することが可能であり、ルータ等の機器を介さずともそのままインターネットに接続することが可能になるからです。IPv6アドレスはMACアドレスをもとに付与されるようになっています。

ただ、実際にはルータ等の機器が必要になりますが、PPPoEの機器を経由する必要はなく、プロバイダを介するだけで、言わば混雑した道路を避けて空いている道を通るイメージでインターネットに接続することができます。

この仕組みから、

IPoE(アイ ピー オー イー)

という新しいプロトコルが開発され、高速のインターネット通信が可能となっています。

IPoEは「IP over Ethernet」の略で、IPをイーサネットで使うためのプロトコルです。イーサネットでの利用を前提に開発されたプロトコルで、イーサネットからシンプルにIPプロトコルを使ってインターネットに接続できます。

LAN内での通信がそのままインターネットに広がるイメージで、不要な仕組みが省かれた、言わば本来あるべきインターネットへの接続形態となっています。

そして、PPPの時代に重要だったユーザー認証については、その認証方法が大きく変わりました。IPoEでは、インターネットに接続する際のユーザー認証は行われなくなったのです。

どのようにユーザー認証しているのかというと、回線認証でユーザを特定するようになりました。具体的には、引き込んだ光回線そのものに割り当てられているCAF番号(キャフ番号)などをプロバイダとの契約時に紐づけます。

そのため、契約時に回線を認証していることになり、接続のたびに認証する必要はなくなったのです。

ただし、逆を言うとその回線でしか利用できないということです。PPPoEであれば、認証情報を設定したルータを持ち運べば、他の回線に接続してもインターネットを利用することができます。一方、IPoEではその回線でしかメリットを享受できません。

このように、IPv6を利用するメリットはいくつもあるのですが、なかなか置き換わらないのが現状です。

とは言うものの、IPv6に対応したサイトは増えてきていますし、IPv4 over IPv6 というカプセル化技術によってIPv6でIPv4ネットワークに接続することが可能になっています。

また、IPv4接続で接続しているのかIPv6で接続しているのか判定してくれるサイトも多数あります。興味のある方は、プロバイダとIPoEの契約をしてみてはいかがでしょうか。

更新履歴

2008年7月25日
ページを公開。
2009年5月14日
ページをXHTML1.0とCSS2.1で、Web標準化。レイアウト変更。
2018年1月30日
ページをSSL化によりHTTPSに対応。
2023年1月28日
内容修正。

参考文献・ウェブサイト

当ページの作成にあたり、以下の文献およびウェブサイトを参考にさせていただきました。

文献
図解入門 インターネットのしくみ
IoTで待ったなし、進む「IPv6移行」への動き
https://atmarkit.itmedia.co.jp/ait/articles/1602/22/news015_2.html
自宅のIPv6環境をチェックしてみよう!
https://internet.watch.impress.co.jp/docs/column/shimizu/1159272.html
IPv6ならネットから直接アクセスできる?試して確かめよう
https://internet.watch.impress.co.jp/docs/column/shimizu/1163817.html