このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

インターネットの仕組み

この記事はインターネットの仕組みとどのように動いているかを説明します。

前提条件: ありませんが、まずプロジェクトの目標設定に関する記事を読むことをおすすめします。
目標: ウェブの技術インフラストラクチャの基礎と、インターネットとウェブの違いについて学びます。

概要

インターネットはウェブのバックボーンであり、ウェブを可能にする技術基盤です。インターネットは、最も簡単に言うと、コンピューター同士が相互に通信する大規模なネットワークです。

インターネットの歴史は、やや不明瞭です。1960 年代に米軍の資金援助を受けた研究プロジェクトとして始まり、多くの公立大学と民間企業の支援を受けて 1980 年代に公共インフラへと発展しました。インターネットを支える様々なテクノロジーは時間の経過とともに進化してきましたが、その仕組みは大きく変わっていません。インターネットは、コンピューター同士をすべて接続し、何が起きても接続を維持できるようにするものです。

インターネットに関する動画

より深く掘り下げる

単純なネットワーク

2 つのコンピューターが通信するには、物理的に(通常はイーサネットケーブル、またはWi-Fi や Bluetooth などで無線で)接続する必要があります。現在のコンピューターはどれも、これらの接続を維持できます。

メモ: 残りの記事では物理ケーブルのみ説明を行いますが、無線ネットワークでも同じように動きます。

2 台のコンピューターの相互リンク

このようなネットワークでは 2 つのコンピューターという制限はありません。好きなだけ多くのコンピューターに接続することができます。しかしすぐに複雑になります。例えば 10 台のコンピューターに接続しようとした場合、 45 本のケーブルとそれぞれのコンピューターに 9 つの端子が必要になります。

10 台のコンピューターを一斉に

この問題を解決するために、ネットワーク上の各コンピューターを「ネットワークスイッチ」(略して「スイッチ」)と呼ばれる特別な小型コンピューターに接続します。このスイッチの役割は、鉄道駅の信号係のように、メッセージを宛先に向けて転送することだけです。コンピューター B にメッセージを送信するには、コンピューター A がスイッチにメッセージを送り、スイッチがコンピューター B に転送します。

一度スイッチをシステムに追加すると、ネットワークに繋がる 10 個のコンピューターは 10 個のケーブルが必要です。またそれぞれのコンピューターに一つの端子が必要でスイッチには 10 個の端子が必要です。

コンピューター 10 台とスイッチ

コンピューターを区別するために、スイッチは MAC アドレスを使用します。MAC アドレスは、ローカルネットワーク内でデータを届けるためにネットワークインターフェイスを識別するものです。MAC アドレスは指紋のようなもので、通常は製造元が割り当てますが、ソフトウェアで割り当てたり変更したりすることもできます(現在ではプライバシー保護のためによく行われます)。各メッセージには送信元と宛先の MAC アドレスが含まれます。スイッチは送信元のアドレスを読み取り、メッセージがどの接続から届いたかを記憶します。これにより、その送信元宛ての次のメッセージをどこへ転送するかが分かります。宛先の場所をまだ学習していない場合、スイッチは他のすべての接続を通じてメッセージを転送します。宛先が返信すると、スイッチはその場所も学習します。

ネットワークのネットワーク

ここまでは順調ですね。しかし何百、何千、何十億ものコンピューターを接続する場合はどうですか?もちろん、 1 台のスイッチではそれほど規模を拡大することはできませんが、注意深く読んだ場合、スイッチは他のコンピューターと同じようにコンピューターと呼ばれており、 2 台のスイッチを接続するのに問題はないのでしょうか?何も問題はありません。では、繋いでみましょう。

互いにリンクした 2 台のスイッチ

スイッチを無限に接続して、次のようなネットワークを形成できると想像できるでしょう。

互いに接続されたスイッチ

このようにスイッチを接続すると、1 つのローカルネットワークが広がります。各スイッチは、そのローカルネットワーク内の MAC アドレスごとに、どの接続を使うかを示す詳細な対応表を持っています。このネットワークに 100 億台のコンピューターを接続した場合、各スイッチは最大 100 億個の MAC アドレスを記憶する必要があります。宛先のアドレスが分からない場合(または通信がないために情報が削除された場合)、スイッチはメッセージをローカルネットワーク上のすべてのコンピューターにブロードキャストしなければなりません。ネットワークが大きくなるほど、個々の機器を追跡し、不明な宛先を見つけるコストも増加します。

根本的な問題は、アドレスに階層構造がなく、ネットワークの構造とも対応していないことです。これは、各人の指紋を比べて郵便物の配達先を探すようなものです。この問題を解決するため、コンピューターを別々のローカルネットワークに分け、ルーターと呼ばれる機器を使ってそれらのネットワークを接続します。ルーターは IP アドレスという別の種類のアドレスを使用します。これは 142.250.190.78 のような 4 つの数字の並びです。指紋のような MAC アドレスとは異なり、IP アドレスは「住所」のようなもので、コンピューターがネットワークに接続したときに割り当てられます。また、共有されるプレフィックスによって、IP アドレスから所属するネットワークを識別できます。そのためルーターは、グループ内のすべてのコンピューターの場所を学習することなく、「IP アドレスが 142.250 で始まる場合はこのルーターに転送する」のように、アドレスのグループ全体に対する転送指示を保存できます。

メモ: IP アドレスとルーターで端から端までネットワーク接続できるなら、なぜ MAC アドレスとスイッチも必要なのか疑問に思うかもしれません。スイッチには実用上の利点がいくつもあります。たとえば、スイッチを使ったローカルネットワークでは、ある機器が同じネットワーク内の接続先(2 つの Wi-Fi アクセスポイント間など)を移動しても、同じ IP アドレスを使い続けられます。スイッチがその機器の MAC アドレスにつながる接続先を学習し直すため、IP アドレスと、それを使っている既存の接続がそのまま機能します。また、ルーター自身にも MAC アドレスが必要です。次のルーターにパケットを渡すには、共有ネットワーク上でどの機器に届けるかを識別しなければならないためです。

このようなネットワークは、私たちがインターネットと呼ぶものにとても近いものです。必要なのは、これらのルーターをすべて接続するための物理的な媒体(ケーブル)だけです。幸い、このようなインフラはインターネットよりも前から存在していました。それは電話網です。ネットワークと電話網につなぐには、モデムと呼ばれる特別な装置が必要です。このモデムは、私たちのネットワークからの情報を、電話網が管理できる情報に変換し、その逆もまた可能です。

モデムに接続されたルーター

ご家庭の市販ルーターは、スイッチ、ルーター、モデムが 1 台の端末に組み合わされたものである可能性が高いことにご注意ください。

電話網に接続します。次のステップは、私たちのネットワークから接続できるネットワークにメッセージを送信することです。そのために、ネットワークをインターネットサービスプロバイダー(Internet Service Provider、以下 ISP)に接続します。 ISP は、すべてをリンクする特別なルーターを管理する会社で、他の ISP のルーターにもアクセスできます。 したがって、私たちのネットワークからのメッセージは、ISP ネットワークのネットワークを通して宛先のネットワークに運ばれます。インターネットは、このネットワーク全体のインフラで構成されています。

完全なインターネットスタック

ドメイン名

IP アドレスはコンピューターにとっては問題ありませんが、人間が覚えるのは大変です。そこで、IP アドレスの別名として、ドメイン名と呼ばれる人間に分かりやすい名前を使うことができます。たとえば、IP アドレスは変わることがありますが、この記事の執筆時点では、google.com は IP アドレス 142.250.190.78 に対応するドメイン名です。ドメイン名を使うのが、インターネット経由でコンピューターにアクセスする最も簡単な方法です。

ドメイン名が IP アドレスの別名になっている様子

インターネットとウェブ

ご存知のとおり、ウェブブラウザーでウェブを閲覧する場合、通常はドメイン名を使用してウェブサイトにアクセスします。これはインターネットとウェブが同じであることを意味するのでしょうか?実はそれほど単純な話ではありません。これまで見てきたように、インターネットは何十億ものコンピューターをすべて接続できる技術インフラです。このうち、ウェブサーバーと呼ばれるコンピューターは、ウェブブラウザーが理解できるメッセージを送信できます。インターネットはインフラですが、ウェブはそのインフラ上に構築されたサービスです。電子メールや IRC など、インターネット上に構築されたサービスはほかにもあります。

イントラネットとエクストラネット

イントラネットは、特定の組織のメンバーに限定されたプライベートなネットワークです。 一般的には、メンバーが共有リソースに安全にアクセスし、コラボレーションやコミュニケーションを行うためのポータルを提供するために使用されます。 例えば、ある組織のイントラネットでは、部門やチームの情報を共有するためのウェブページ、重要文書やファイルを管理するための共有ドライブ、ビジネス管理タスクを実行するためのポータル、Wiki、ディスカッションボード、メッセージングシステムなどのコラボレーションツールをホストする場合があります。

エクストラネットはイントラネットとよく似ていますが、プライベートネットワークの全部または一部を開放して、他の組織との共有やコラボレーションを可能にするものです。 これは、通常、ビジネスと密接に協力している顧客や関係者と安全かつセキュアに情報を共有するために使用されます。 多くの場合、イントラネットと同様の機能(情報やファイルの共有、コラボレーションツール、ディスカッションボードなど)を提供します。

イントラネットもエクストラネットも、インターネットと同じ種類のインフラストラクチャ上で動作し、同じプロトコルを使用します。 そのため、権限のあるメンバーであれば、物理的に異なる場所にいてもアクセスすることができます。

エクストラネットとインターネットの動きの図示

次のステップ