このページではインターネット理解の基本となるIP (Internet Protocol) とは何か?をネットワーク初心者向けにわかりやすく解説します。
IP (Internet Protocol)は、インターネット上でのデータ通信の基盤となるプロトコル。IPアドレスを用いて、デバイス間でのデータのやり取りが行われ、これにより我々はWebサイトの閲覧やメールの送受信など、多岐にわたるオンライン活動を楽しむことができます。
IP (Internet Protocol) はOSI参照モデルの第3層:ネットワーク層で動作する通信プロトコルです。

このページでは「そもそもIPって何?」「IPはなぜ必要なの?」という疑問にお答えしつつ、IP (Internet Protocol) とは何か?を理解できるよう分かりやすく解説します。
ネットワークエンジニアを目指す方であれば知らないと恥ずかしい超・基本知識です。是非最後までご覧ください。
参考 ネットワークとは?
IPとは? (Internet Protocolとは?)
IP (Internet Protocol) はインターネット通信に関する約束事を定義したプロトコルです。
少し嚙み砕いて説明するとインターネットを利用してデータを目的のコンピュータに届ける方法を定義したプロトコルがIPです。
さらに分かりやすく言えば「インターネット上でコンピュータ同士が通信する際の住所やルールを決定する役割を果たすもの」とも言えます。

IPというプロトコルがなければ、我々はインターネットを使ってデータ通信を行うことができない(=電子メールを使えない/=Webサイトを閲覧できない・・・etc)ということになります。
IPの役割:わかりやすく
IP (Internet Protocol) は、インターネット通信を行いたいコンピュータにデータを送り届けるためのルールを定めています。

例えば、どのように宛先のコンピュータを特定するか?どのようにデータを送るのか?などです。
どちらも簡単なことのように思えるかもしれませんが、世界中には数えきれないほどのコンピュータが存在しており、かつそのコンピュータがどこの誰が管理しているかもわからないので、コンピュータの特定だけでも非常に複雑な仕組みが必要となります。
IP (Internet Protocol) ではインターネット通信を円滑に行うために必要なルールを大きく以下の3点を定めています。

IP(Internet Protocol)とは何か?をより本質的に理解できるよう1つ1つのポイントを詳しく解説していきます。
IPとは?:①IPアドレス
IP(Internet Protocol)では、インターネット上でコンピュータを一意に特定するルールを定めています。その仕組みがIPアドレスです。
IPアドレス(Internet Protocol Address)とは、インターネットの世界における住所のようなものです。

現実世界では、今住んでいる場所に応じて全員がそれぞれの「住所」を持っています。これと同じように、インターネットに接続する全てのコンピュータ(実はあなたのスマートフォンにも)はIPアドレスが割り当てられています。

例えば誰かに手紙を送りたいときは、その人の住んでいる「住所」を調べて手紙を郵便局に配達しますよね。
これと同じようにインターネットの世界でも「IPアドレス」を基に、メールをどこに送れば良いか?、動画データを誰のスマートフォンに送れば良いか?などを判断します。
IPアドレスは現実の住所と同じように階層性を保持しており、どこのネットワークのどのコンピュータ(ホスト)か?を一意に特定することが可能。

仮に「住所」に当てはめて考えてみると以下のようなイメージ。

この仕組みを用いてIP(Internet Protocol)ではインターネット通信を円滑に行うことを可能にしています。

IPアドレスの仕組みをしっかり理解すればIP(Internet Protocol)への理解も深まります。
さらに詳しく知りたい方は以下の記事をご覧ください。
IPとは?:②ルーティング
インターネットは一言で説明するとネットワークの集合体です。

世界中に存在する会社のネットワーク、携帯電話会社のネットワーク、大学・学術機関のネットワークなど、様々なネットワークが複雑に絡み合うことで成立しているのがインターネットです。

このインターネットの中でどのようにデータを送り届けるのか?どの経路をたどって目的のコンピュータにデータを送り届けるのか?を決めるのが経路制御(=ルーティング)です。
例えば、以下の図のコンピュータBからサーバCにデータを届けようとする場合を考えます。

コンピュータBがサーバCと通信するには、赤色の線か緑色の線の2つの道順が存在することが分かります。もちろん、どちらを通っても目的のサーバCにデータを届けることが可能。
ここでザックリとルーティングについて説明してしまうと、赤と緑の線どちらの道を通って通信するのが適切であるか?を判断するのルーティングです。
このルーティングもIP(Internet Protocol)が定めるルールの1つです。

ルーティング処理について更に詳しく知りたい方は以下の記事をご覧ください。
IPとは?:③パケット交換方式(フラグメンテーション)
IP(Internet Protocol)では、データをいくつかの小包(=パケット)に分けてデータの送受信を行いましょう、というルールを定めています。

これは、パケット交換方式、もしくはより専門的にフラグメンテーションとも呼ばれます。
パケット交換方式(フラグメンテーション)の仕組みは以下の3点がポイントです。



パケット交換方式の対となるものとして回線交換方式という通信方式があります。

パケット交換方式のメリット・デメリット等以下の記事で詳しく解説しておりますので、この機会に合わせてご覧ください。
IPヘッダ

ここまでで、IP(Internet Protocol)とは何なのか?が理解できたと思います。ここからは、より具体的にIPヘッダ(=IPで送受信されるデータの中身)を解説します。
IPヘッダとは、IP(Internet Protocol)によってデータがネットワーク上で伝送される際に、データの先頭部分に追加される情報のこと。
このヘッダ情報には、送信元や送信先のIPアドレス、データの長さや種類など、データの送受信に関する重要なメタデータが含まれています。IPヘッダの存在によって、データは適切な宛先へと正確にルーティングされる仕組みです。

IPヘッダは、データ通信の制御やルーティング、エラーチェックなど、インターネット通信の基盤となる部分での役割を果たしています。各項目が持つ意味や役割を理解することで、ネットワークの動作をより実践的にイメージすることができるでしょう。
サンプル IPv4のヘッダのサンプル(16進数表記)
45 00 00 3c 1c 46 40 00 70 06 b9 e6 ac 10 0a 63 ac 10 0a c8
項目名 | サンプル値 | 説明 |
---|---|---|
Version | 4 | IPのバージョン。この場合、IPv4を示す。 |
Header Length | 5 | IPヘッダの長さ。この場合、5x32bit = 20bytes。 |
Type of Service | 00 | サービスのタイプを示す。通常はデフォルト値。 |
Total Length | 003c | IPパケット全体の長さ。この場合、60bytes。 |
Identification | 1c46 | パケットの一意の識別子。 |
Flags & Fragment Offset | 4000 | フラグメントのフラグとオフセット。 |
Time to Live | 70 | パケットが網内で生きていられる最大時間。 |
Protocol | 06 | 上位のプロトコルを示す。この場合、TCPを示す(06はTCPのプロトコル番号)。 |
Header Checksum | b9e6 | ヘッダのエラーチェック用の値。 |
Source IP Address | ac100a63 | 送信元のIPアドレス。この場合、172.16.10.99。 |
Destination IP Address | ac100ac8 | 宛先のIPアドレス。この場合、172.16.10.200。 |
上記の表は、IPヘッダの基本的なフィールドを示すもので、実際のネットワーク環境や設定によっては、他のオプションやフィールドが追加されることもあります。

すべてを暗記する必要はありません。が、IPヘッダにどのような情報が含まれるのか?を理解することで、IPの理解がより深まります(IPアドレスがあったり、上位のプロトコルの情報があったり・・・)。このページで解説した内容が徐々に理解できるかと思いますので、是非しみじみと眺めてみてください。

ネットワーク学習の決定版(ネットワークエンジニアを目指すなら必見!)
↑ページ数が多く誰でも手軽に読める内容ではありませんが、ネットワークエンジニアであれば、ほぼ全員が一度は読んだことがある超・有料書籍。是非一度読破しておきたい1冊のご紹介です。
読者特典> 0から学ぶネットワーク入門