このページではインターネット理解の基本となる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とは?:②ルーティング
インターネットは一言で説明するとネットワークの集合体です。
世界中に存在する会社のネットワーク、携帯電話会社のネットワーク、大学・学術機関のネットワークなど、様々なネットワークが複雑に絡み合うことで成立しているのがインターネットです。
このインターネットの中でどのようにデータを送り届けるのか?どの経路をたどって目的のコンピュータにデータを送り届けるのか?を決めるのが経路制御(=ルーティング)です。
例えば、以下の図のコンピュータ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から学ぶネットワーク入門