IPアドレスとは
世の中はどんどん進化していきます。今はIoTをキーワードにインターネット経由で様々なサービスを受けることができます。今までは知らないで済まされたインターネットの事も知らないといけない時代になりました。
PCや家電や車など、IoT化により今後インターネットに接続できる機器は増え続けるでしょう。また、進化に伴い悪用する人も増えました。インターネットを安全に使い続けるためや、子供のインターネットブラウジングを管理する為にもそれらの知識が必要です。
そこでインターネット通信の基本であるIPアドレスについて説明したいと思います。読んでいただければ、きっと「ネットに繋がらない」で悩むことが減るはずです。
IPアドレスって何?
IPアドレスを簡単に説明すると、ネットワークにある機器を識別するための通し番号です。書き方のルールが違うだけで、マイナンバーや学籍番号、社員番号などと同じです。
学籍番号や社員番号は偶然にほかの学校や会社の人と重なることがあります。しかしマイナンバーは重なることがありません。
それと同じルールがIPアドレスにもあります。管理単位内だけで重複がないようになっているローカルアドレスと、世界を通じて重複がないグローバルアドレスです。
IPアドレスは今変わり目
世界を通じて重複がないと聞いた時、おそらくとても大きな数値を想像したと思います。今まで使われてきたIPv4(バージョン4)では約43億個のアドレスがあります。これは現在でも使われているのですが足りなくなりました。そこでIPv6(バージョン6)が導入されました。これは2の128乗という最大で39桁になる、事実上無限といってもいいほどのサイズになっています。
現在は変わり目にいるのでIPv4とIPv6が混在する状況になっています。日本では2011年からIPv6サービスが提供され始めていますがいまだに完全移行の気配はありません。
普及が進まない理由のひとつとしてユーザ側にはメリットがほとんどないということがあげられます。プロバイダ側はIPv4アドレスが枯渇してIPv6への移行を迫られていますが、家庭でで使う分なら従来のIPv4でことが足ります。
また、ルーター、回線契約、プロバイダ契約、使用機器すべてがIPv6に対応していないといけないという条件もユーザーがIPv6へ移行するための足かせとなっています。
混在の状況はしばらく続くと思いますので、どちらも理解しておく必要があると思いますが、IPv6はまだ改変の可能性を秘めていますので、自分で使うようになってからでもいいかもしれません。ただし、IPv4で通信しているつもりがIPv6だったということは起こりえますので予備知識として持っていた方がトラブル解決力は高まると思います。
ローカルアドレス
まずローカルアドレスの説明をします。これは家の中のみで有効なIPアドレスです。IPv6ではユニークローカルアドレスいう名前でそれに相当するものがあります(DHCP+IPv4の場合はリンクローカルアドレスの方が近いかもしれません)。
ルーター等にIPを自動管理するDHCPサーバを設けるか、端末に手動で割り当てるかして設定します。当然重複がないように設定する必要があります。
IPv4においてIPアドレスは0~255までの4つの数字で表され、ピリオド(.)で区切る表記になります。IPv6は8セットの4桁の16進数で表され、境界にはコロン(:)で使われます。
家(ネットワーク管理単位)で自由に使用していいIPv4のアドレスは次の範囲です。
- 10.0.0.0~10.255.255.255
- 172.16.0.0~172.31.255.255
- 192.168.0.0~192.168.255.255
IPv6(ユニークローカルアドレス)ではfd00:から始まる全アドレスとなっています。(fdxx:xxxx:xxxx:yyyy:zzzz:zzzz:zzzz:zzzz)
サブネットマスク
サブネットマスクは、どこまでがネットワークアドレスかを決めるものです。ネットワークアドレスとは住所で例えると〇〇町12-3の〇〇町の部分にあたります。〇〇町までは共通でそれ以下は個人別に分かれているという範囲をサブネットマスクで示しています。
住所においても□□県までを共通とみなし、以下の「〇〇町12-3」で個人を示すという考え方があると思います。それと同じようにサブネットを伸び縮みさせることでネットワークの範囲を変えられます。
IPv4ではローカルアドレスのサブネットマスクを自由に決められますが、家庭の場合24(255.255.255.0)となっていることが多いです。これはIPアドレスをすべて0と1の2進数化した際に、ネットワークのアドレスが先頭から何ビットまでかをしめします。/24は24ビット(=24字)を意味します。255.255.255.0は先頭24個に1以降0の入った32字の2進数を、IPアドレス表記と同じ書き方をしたものです。
次に多いものは16(255.255.0.0)です。
IPv6(ユニークローカルアドレス)では、サブネットマスクに相当するプリフィックス長は(上位)64bitですが、fdxx:xxxx:xxxx:yyyyのxの部分は40ビットのランダムな値と定められているので、実質サブネットに使えるのはyの部分の16ビットとなります。
IPv6(リンクローカルアドレス)もプリフィックス長さは64です。個を示すアドレスまですべて自動で決められるものですが、プリフィックスはfe80:0:0:0と指定されています。
ちなみに実際にリンクローカルアドレスを確認してみると、プリフィックス部分はfe80::という表記で0の表記がない上にコロン(:)の数が少ないことに気づくと思います。これは、つながった:0は1か所だけ::という表記で省略できるというルールがありそれが利用されているためです。
IPv4と、IPv6のアドレスを確認したのでここで一度使っているPCでそれを確認してみましょう。「スタートメニュー」→「Windowsシステムツール」→「コマンドプロンプト」をたちあげ「ipconfig」と入力してください。
見てみるとIPv6アドレスの後ろに%がついていると思います。これは複数LANインターフェイスが存在した時にどれかを示すものです。%の後はWindowsだとインターフェースインデックス。ちなみにLinuxだとeth0等のインターフェース名になります。
このようなルールに基づいて、家のネットワーク機器すべてに他と重なることがないIPアドレスが割り当てられています。
グローバルアドレス
グローバルアドレスは全世界で重ならないように設定されているもので、通常はインターネットプロバイダより割り当てられます。
IPv4の場合は、次の範囲がグローバルアドレスに使われています。
- 1.0.0.0~9.255.255.255
- 11.0.0.0~126.255.255.255
- 128.0.0.0~172.15.255.255
- 172.32.0.0~191.255.255.255
- 192.0.0.0~192.167.255.255
- 192.169.0.0~223.255.255.255
管理はICANNをトップにした組織によって行われています。日本のトップはJPNICとなっています。
IPv4の場合は、家庭用インターネット接続の場合はたいていひとつ契約に対してひとつのIPアドレスが割り当てられます。家の中の端末はこのひとつのアドレスをうまく共用してインターネットに接続します。ルーターが共用するために働いてくれています。
IPv6は2001から始まるものがグローバルユニキャストアドレスとして指定されています。
IPv6の場合は、ひとつのネットワークにIPアドレスではなくグローバルなネットワークアドレスが割り当てられます。(2001:xxxx:xxxx:xxxx)これにはネットワークアドレスに紐づけることのできるIPアドレスが十分にあり、ルールに基づいて各機器にひとつグローバルなIPアドレスが付けられます。
一聞すると、ひとつの端末にひとつのグローバルアドレスが割り当てられるというのはいいことですが、セキュリティ面ではデメリットでもあります。
今まではルーターの「共用」の仕組みにより外部からは通信できないようになっていた端末が、グローバルアドレスを持つことにより外部に公開されてしまいます。
今まで気にしなくてもさほど問題にはならなかった、セキュリティホールが修正されないままになっている古いネットワークプリンタや子供のゲーム機にまで気をくばらないといけなくなります。
近年IPoEという名前で家庭のIPv6化が進められていますが、導入する場合はこのようなリスクを承知したうえで契約しましょう。ちなみにルータから内側を隠すIPv6の技術にND Proxyというものがあります。ルータにより対応の可否が違いますが、IPoE化する場合は合わせて検討してみてください。