ネットワーク通信の流れを把握する

【図解】初心者にも分かるインターネットの仕組み 〜ISPとIPネットワークとルーティングについて〜

インターネットとは

インターネットとは、世界中のコンピュータと情報をやり取りする、巨大なネットワーク網のことです。

もともとは、冷戦時代の 1969 年に作られたアメリカ国防総省の軍事研究用ネットワークである ARPAnet (アーパネット)が起源であると言われています。

それが次第に学術・一般研究用のネットワークと相互接続し始め、発展し、1990 年代に商用開始され、爆発的に普及しました。

以降、インターネットは世界中の ISP 事業者 (プロバイダ) と呼ばれる業者が、IANA の管理のもと、協力してお互いを接続し合うことにより成立しています。

インターネットの形成

インターネットは、大手 ISP 事業者同士が互いに無償で協力しあって、また、中小 ISP 事業者が大手 ISP 事業者にお金を払って、互いのネットワークを相互接続しています。

特に、アメリカの大手 ISP 事業者が相互接続したネットワークを Tier1 ネットワークと呼び、Tier1 ネットワークを形成するプロバイダのことを Tier1 ISP 事業者と呼びます。

この Tier1 ネットワークを頂点に、各国、およびその各地域に広がっています。

日本では NTT コミュニケーションズ (NTT アメリカ) がアメリカ ISP 事業者のベリオを買収し、Tier1 になりました。ソフトバンクもスプリントの買収が完了すれば Tier1 の仲間入りです。

インターネット通信を支えるIP

インターネット上で通信する端末は必ず IP アドレスというインターネット上の住所を示すものを持ち、 インターネットで使われているネットワーク機器は、その IP アドレスを手がかりに、 目的の IP アドレスを持つ端末までデータを届けます。

例えば、PC-A (IP アドレス=1.1.1.1) がサーバ B (IP アドレス=2.2.2.2) に通信するときは、PC-A が、送りたいデータの先頭に「送信元 IP アドレス=1.1.1.1」「宛先 IP アドレス=2.2.2.2」という情報を付けます。

間の NW 機器は宛先の 2.2.2.2 という IP アドレスがどこに存在するかを知っている (人間が設計した上で手動で各 NW 機器に設定を投入しているため) ので、適した NW 機器に転送します。

次のNW機器でも同様の所作を行います。

これをルーティングと言います。

このルーティングにより、最終的にはサーバ B に届きますが、サーバ B は送信元を見て、IP アドレス=1.1.1.1 から来たことを知りますので、今度は返信するデータの先頭に「送信元 IP アドレス=2.2.2.2」「宛先 IP アドレス=1.1.1.1」という情報を付けて返信します。

IPアドレスとは

IP アドレス32 bit で表現され、8 bit (0~255) 毎にドットで 4 箇所に区切られ、端末やルータは 0.0.0.0 ~ 255.255.255.255 の間のどれか適した値を IP アドレスとして割り振ることができます。

適した、と表現したのは、この中でも一般的には使えないものが混じっているためです。

まずは概要理解のため、この範囲が IP アドレスとして存在することを理解してください

IP アドレスには大きく 2 種類あります。

1 つがグローバル IP アドレス、もう 1 つがプライベート IP アドレスです。

IP が誕生したときはこのような区分は無く、全てがグローバル IP アドレスの位置づけでした。

しかしインターネット利用者が予想を超えて莫大に増えたことにより、IP アドレスが枯渇してきたため、このような区分が出来ました。

グローバルIPアドレス

グローバル IP アドレスは、インターネットに接続するために必須のもので、好き勝手に設定してしまっても通信ができません。

このグローバル IP アドレスが重複しないように管理をしているのが IANA という組織で、その下位組織としてアジア圏であれば APNIC、そのさらに下位組織として日本であれば JPNICがいます。

日本の ISP 事業者は JPNIC から IP アドレスを割り当ててもらい、それを再販する形でインターネットサービスを運営しています。

IANA の IP アドレスの払い出し状況は下記ページで確認できます。

IANA IPv4 Address Space Registry

例えば表の 2 行目には「001/8  APNIC」と書かれていますが、これは『1.0.0.0~1.255.255.255 までは APNIC に払い出しをしている』という意味です。

APNIC への払い出しはこの行以外にもたくさんあることが分かると思います。

このグローバル IP アドレスのルート情報は、それを保有している ISP 事業者が、相互接続している周りの ISP 事業者に対して「BGP」というプロトコルなどを使って配信します。

すると、他の事業者は、その IP アドレスの通信が来たら、その ISP 事業者に向けてルーティングするのです。

プライベートIPアドレス

一方、インターネットを使わないような NW、例えば会社内だけで使う NW であれば、自分たちの好きな IP アドレスを付与してしまって問題ありません。

そのための IP アドレスが、プライベート IP アドレスです。プライベート IP アドレスは以下の 3 つの範囲が使えます。

  • 192.168.0.0 ~ 192.168.255.255
  • 172.16.0.0 ~ 172.31.255.255
  • 10.0.0.0 ~ 10.255.255.255

これらの範囲であっても、インターネット接続するルータ等で PAT (NAPT) という機能でグローバル IP アドレスに変換すれば、インターネット通信が可能になります。

実は勝手にグローバル IP アドレスを割り振ってしまっても、この NAPT を使えばほぼ問題なく使えるのですが、例えば間違って "172.168.0.0~172.168.255.255" を使ってしまうと、この範囲のインターネット上のコンピュータとはインターネット通信ができなくなります。

自分のIPアドレスを確認する方法

もしあなたが自身の PC に設定されている (ほぼ間違いなくプライベート) IP アドレスを知りたい場合は、以下の手順で確認できます。

Windowsキー + R
⇒ 『ファイル名を指定して実行』の入力欄に "cmd"と入力し、Enter
⇒ ポップアップした黒い画面(MS-DOSプロンプト) に "ipconfig" と入力し、Enter
例えば以下のように表示されたら、IP アドレスは 192.168.179.6 です。

また、もしインターネットに出ていくときのグローバル IP アドレスを知りたいときは、以下サイトで確認できます。

確認くん

『あなたのIPアドレス(IPv4)』の右側の欄が、あなたが今使っているグローバル IP アドレスです。

IP アドレスについての詳細は下記ページをご参照下さい。

【初心者向け】IPアドレスとは ~クラス、グローバルとプライベートについて~
IP アドレスとは IP アドレスとは、ネットワーク通信する上での住所のことで...

IP通信の実用例

IP 通信はどのように実現されるのでしょうか。

一番身近な例で言うと、インターネットの Web 閲覧が挙げられます。

例えば、自分のパソコンから Yahoo のホームページを見るとき、ブラウザを立ち上げて、下図のようにアドレスバーに Yahoo の IP アドレス (182.22.70.250) を打ち込みます。

インターネット上のサーバは基本的には IP アドレスを持っています。

Yahoo の Web サーバは "182.22.70.250" という IP アドレスを持っているので、ブラウザからこの IP アドレスを指定することで、Yahoo の Web サーバと IP 通信を行うことができるのです。

また、ブラウザで IP アドレスを指定するときは通常 "http://"と入れますが、これは http というプロトコルで IP アドレス 182.22.70.250 と通信する、という意味になります。

インターネットのホームページの IP アドレスを知るには DNS という仕組みが使われます。

【図解】初心者に分かりやすいDNSの仕組み〜GoogleのIP確認, 逆引きの必要性, レコードの種類等〜
DNSとは DNS とは、文字列を IP アドレスに変換(およびその逆変換)を...

ただし、普段インターネットを見ているときは、おそらくアドレスバーは下図のようになっているでしょう。

これは、DNS という仕組みを利用しているためです。

簡単に言うと、IP ネットワーク上の DNS サーバが、www.yahoo.co.jp という文字列 (FQDN: Fully Qualified Domain Nameと呼びます) を  182.22.70.250 という IP アドレスに変換させているからです。

IPv6について

IPv6登場の背景

現行の IP のバージョンは 4 です。IPv4 と表記します。IPv4 アドレスの個数としては 2 の 32乗 ≒ 43 億個ありますが、前述の通り、世界中の端末を繋げるには数が足りていません。

もともと現在の IPv4 は世界中の端末を繋げるという想定がなかった、というのが大きな要因です。

そのため、IP バージョン6 (IPv6) という新しいプロトコルが出来ました。

IPv6 では枯渇の問題だけでなく、IPv4 での課題が色々と解決されています。

IPv4とIPv6の違い

例えば、セキュリティの問題をクリアするために、IPv6 が動作する機器では必ず IPsec 機能が使えます

必ず使われるわけではなく、好きなときに使えるという意味です。

IPv4 では IPsec 対応機器同士でないと使えなかったのが、IPv6 では好きなときに好きな相手といつでもセキュリティを保つ通信が可能となるのです。

その他、バラバラだった IP 通信の管理機能が統合され、ARP の機能や IGMP の機能が ICMPv6 に組み込まれたり、通信効率化 (ルータ上でのIP フラグメンテーションの禁止、Path MTU Discovery の利用) の実装が為されています。

IPv6は何故なかなか普及しないのか

IP アドレスの枯渇が叫ばれ、IPv6 が誕生してからもう 20 年くらい経過しています。しかし普及率は低迷しています。

個人的に思う一番のネックは、アドレスの見にくさです。

今まで 10 進数の 3 桁の数字が 4 つ並んでいただけなのが、『16 進数の数が 32 個並ぶ』という、長くて覚えにくく管理し辛い表記になってしまったのです。

例えば以下のようなアドレス表記になるのです。

0123:4567:89ab:cdef:0123:4567:89ab:cdef

そして現状 IPv4 の数はプライベート IP や NAPT 等に助けられ、なんとか間に合ってしまっている。特に変えるモチベーションが無いのです。

今後、徐々に IPv4 から移行していくことが予想されますが、完全に切り替わるまでにはまだ時間がかかりそうです。

コメント

タイトルとURLをコピーしました