インターネットプロトコル(IP)とは:仕組み・役割・TCPとの関係

インターネットプロトコル(IP)の仕組み・役割とTCPとの関係を図解で解説。ネットワークの基礎を短時間で理解。

著者: Leandro Alegsa

インターネットプロトコルIP)は、ネットワークの境界を越えてデータを中継するための、インターネットプロトコルスイートの中で最も重要な通信プロトコルです。基本的にはインターネットを構築するものである。従来、IPは接続性を提供するものではなく、パケットをどのように生成するかを指定するだけでした。この機能は、TCP(Transmission Control Protocol)によって実現されていました。どちらか一方が欠けてもその役割を果たせないため、お互いに依存していることを示すためにTCP/IPと呼ばれるようになりました。

IPは、郵便システムのようなものだと思ってください。荷物に宛名を書いてシステムに投函することはできますが、あなたと受取人の間には実際の直接的なつながりはありません。その代わりに、相互に接続されたリンクの「ウェブ」があります。ここで登場するのがIPとTCPです。IPはパケットの宛先とそこへの行き方を伝え、TCPはパケットのエラーをチェックし、エラーを検出したら「再送」を要求することで、信頼できる接続を確保します。



IPの基本的な性質

  • コネクションレス(Connectionless):IP自体は接続を確立しない。各パケットは独立して送られ、経路や到着順はそれぞれ異なることがある。
  • ベストエフォート(Best-effort):IPはパケット配送を保証しない。パケットの遅延・損失・重複・順序の入れ替わりが起こる可能性があり、それらの補償は上位のプロトコル(例:TCP)が行う。
  • 階層構造:IPは「ネットワーク層」に位置し、下位のリンク層(イーサネットなど)と上位のトランスポート層(TCP/UDPなど)をつなぐ役割を持つ。

IPアドレスとアドレス体系

  • IPv4:従来の形式で、32ビットのアドレスを用いる。一般に「192.0.2.1」のようなドット区切りの10進表記(dotted decimal)で表される。アドレス枯渇を受け、CIDR(クラスレスドメイン間ルーティング)による柔軟なサブネット指定が広く使われている。
  • IPv6:128ビットのアドレスを用い、16進のコロン区切り(例:2001:db8::1)で表される。アドレス空間が大幅に拡張され、オートコンフィギュレーションや拡張ヘッダなどIPv4と異なる設計がある。
  • プライベートアドレスとNAT:IPv4の枯渇に対応して、社内ネットワーク向けのプライベートアドレス(例:192.168.x.x)が使われる。これらをインターネットに接続する際はNAT(Network Address Translation)で外部アドレスに変換することが多い。

パケット(IPパケット)とヘッダの構造(概略)

IPパケットは「ヘッダ」と「ペイロード(上位プロトコルのデータ)」から成る。ヘッダにはルーティングや制御に必要な情報が含まれる。代表的なフィールド(IPv4を例に簡略化):

  • バージョン(Version)
  • ヘッダ長(IHL)
  • サービス種別 / DSCP(QoS関連)
  • 全長(Total Length)
  • 識別 / フラグ / 断片化オフセット(フラグメンテーション関連)
  • TTL(Time To Live):ルータを通過するごとに減少し、0になると廃棄される(ループ防止)
  • プロトコル:上位に渡すプロトコルを示す(例:6=TCP、17=UDP)
  • ヘッダチェックサム(IPv4のみ)
  • 送信元/宛先IPアドレス

IPv6ではヘッダが簡素化され、チェックサムが廃止されるなどの違いがあり、拡張ヘッダでオプション機能を付加する方式を採る。

ルーティングと転送の仕組み

  • ネットワーク上の各ルータは「ルーティングテーブル」を持ち、宛先IPに基づいてどの外向きインターフェイスへ転送するかを決める。
  • 最適経路は静的ルート/動的ルーティングプロトコル(OSPF、BGP、RIPなど)により決定される。インターネットのバックボーンでは主にBGPが用いられる。
  • パケットは経路途中で分割(フラグメンテーション)されることがある。MTU(Maximum Transmission Unit)より大きいパケットは分割され、受信側で再構成される。

TCPとの関係(TCP/IP)および他のトランスポート層プロトコル

  • TCP(Transmission Control Protocol):信頼性のあるコネクション指向のプロトコル。順序制御、再送、フロー制御、コングestion制御を行い、HTTPやSMTPなど多くのアプリケーションで使われる。
  • UDP(User Datagram Protocol):簡易で遅延が小さいコネクションレスのプロトコル。DNS、音声・映像ストリーミング、DHCPなど遅延やオーバーヘッドの少なさが優先される用途で使われる。
  • IPはこれらトランスポート層のデータを「ペイロード」として運搬する役割を担うため、TCPとIPはセットで利用されることが多く、まとめて「TCP/IP」と呼ばれる。

補助プロトコルとセキュリティ

  • ARP(Address Resolution Protocol):IPv4アドレスをリンク層のMACアドレスに変換するための仕組み(同一ネットワーク内)。
  • NDP(Neighbor Discovery Protocol):IPv6でARPに相当する機能やアドレス自動設定を提供する。
  • ICMP(Internet Control Message Protocol):ネットワークのエラーメッセージや診断(pingやtracerouteに利用)を伝えるためのプロトコル。
  • IPsec:IP層での暗号化・認証を行い、VPNやセキュアな通信に用いられる。

実用例と注意点

  • ウェブ閲覧:アプリケーション(ブラウザ)→TCP(信頼と順序)→IP(ルーティング)→リンク層(Ethernet/Wi‑Fi)という流れでデータが送られる。
  • ストリーミングやVoIP:UDP+IPの組合せが多い。パケット損失を許容してでも遅延を抑える設計。
  • ネットワーク設計では、アドレス計画(サブネット割当)、MTU設定、NATやファイアウォールの挙動、ルーティングポリシーなどを総合的に考慮する必要がある。

まとめ

IPはインターネットの"道"を作るプロトコルであり、パケットを宛先まで運ぶためのルールと情報を提供する。一方で信頼性や順序保証を行わないため、その上で動作するTCPやUDPなどのトランスポート層プロトコルと組み合わされて初めて、さまざまな通信サービスが実現される。IPv4からIPv6への移行、NATやセキュリティ技術の適用など、実運用では多くの周辺技術と合わせて理解することが重要です。

機能

インターネットプロトコルは、送信元のコンピュータから送信先のコンピュータへ情報を取得します。その情報をパケットという形で送ります。

現在使用されているインターネット・プロトコルには、2つのバージョンがあります。現在、インターネットプロトコルには、IPv4IPv6の2つのバージョンがありIPv4が最も使用されています。また、IPは、一般的な物理的な住所のように、コンピュータがお互いを識別するためのIPアドレスを与えます。

IPは、7つの抽象層からなる通信プロトコル群であるインターネット・プロトコル・スイートのインターネット層の主要プロトコルである(OSIモデル参照)。

IPの主な目的と課題は、送信元ホスト(送信元コンピュータ)から送信先ホスト(受信元コンピュータ)へ、アドレスに基づいてデータグラムを配信することです。これを実現するために、IPにはデータグラム内にタグ(メタデータの一部であるアドレス情報)を付けるための方法や構造があります。このタグをデータグラムに付けることを「カプセル化」といいますが、これは郵便制度に似ています。IPは、送信者(送信元ホスト)が荷物(データグラム)の宛先を指定(カプセル化)してシステム(インターネット)に入れるという点で、米国の郵便制度に似ています。しかし、送信者と受信者の間には直接的なリンクはありません。 

パッケージ(データグラム)はほとんどの場合、断片に分かれていますが、各断片には受信者(宛先ホスト)のアドレスが含まれています。最終的には、それぞれのピースが受信者に届きますが、多くの場合、異なるルート、異なる時間で届きます。これらのルートや時間は、IPであるPostal Systemによっても決定されます。しかし、ポスタルシステム(トランスポート層とアプリケーション層)は、受信者(宛先ホスト)に届ける前に、すべてのピースを元に戻します。

注:IPは実際にはコネクションレス・プロトコルであり、(送信元ホストによる)送信前に受信者(宛先ホスト)への回線を設定する必要はない。例えて言えば、手紙やパッケージに記載されている物理的な返送先住所と、受信者の住所が、手紙やパッケージを送る前に直接接続されている必要はありません。

もともとIPは、1974年にヴィント・サーフとボブ・カーンが作成した伝送制御プログラムの中の、コネクションレスのデータグラムサービスだった。その後、接続を許可するフォーマットとルールが適用され、接続型の伝送制御プロトコルが誕生しました。この2つを合わせたものがインターネットプロトコルスイートであり、TCP/IPと呼ばれることが多い。

インターネットプロトコルバージョン4(IPv4)は、IPの最初のメジャーバージョン。これは、インターネットの主流のプロトコルです。しかし、iPv6は活発に使用されており、その展開は世界中で増加しています。

アドレス指定とルーティングは、IPの中でも最も複雑な要素です。しかし、ネットワークのインテリジェンスはノード(ネットワークの相互接続点)にあり、データグラムを最終目的地までのルート上にある次の既知のゲートウェイに転送するルーターの形をしています。ルーターは、内部ゲートウェイプロトコル(IGP)または外部ゲートウェイプロトコル(EGP)を使用して、転送ルートを決定します。ルートは、データグラム内のルーティングプレフィックスによって決定されます。そのため、ルーティング処理は複雑になりがちです。しかし、光の速さで(あるいはそれに近い速さで)ルーティング・インテリジェンスが最適なルートを決定し、データグラムの断片とデータグラムのすべてが最終的に目的地に到着します。

IPパケット

IPパケット(データグラム)には2つの部分があります。第1の部分はヘッダーで、封筒のラベルのようなものです。第2の部分はペイロードで、これは封筒の中の手紙のようなものです。ヘッダーには、送信元と送信先のIPアドレスのほか、いくつかの追加情報が含まれています。この情報はメタデータと呼ばれ、パケット自体に関する情報です。データをヘッダー付きのパケットに入れることがカプセル化です。

ルーティング

ネットワーク上のすべてのコンピュータは、何らかのルーティングを行っています。専用のコンピュータが相互に通信を行い、パケットの送信先を決定します。これらのコンピュータはルーターと呼ばれ、ルーティングプロトコルを使用して通信します。

パケットの各ホップで、コンピューターがヘッダーを読みます。宛先のIPアドレスを見て、そのパケットをどこに送ればいいかを考えます。



信頼性について

インターネットの初期の祖先であるARPANETは、核戦争に耐えられるように設計されていました。1台のコンピュータが破壊されても、他のすべてのコンピュータ間の通信は可能である。コンピュータ・ネットワークは今でもこの設計を踏襲している。

コンピューターネットワークをシンプルにするために、お互いに話し合うコンピューターが「スマート」な機能を担当します。エラーのチェックは中央機関ではなくエンドノードが行います。スマート」な機能をエンドコンピュータやノードに持たせることは、エンド・ツー・エンドの原則に従っている。

インターネットプロトコルでは、パケットが安全に届くことを確認せずに送り出す。これはベストエフォート型の配信であり、信頼性に欠けます。パケットが乱れたり、紛失したり、重複したり、順番に届かなかったりします。TCPTransmission Control Protocol)のような上位のプロトコルは、パケットが正しく配信されることを保証します。また、IPはコネクションレスなので、通信の記録を残しません。

インターネットプロトコルバージョン4(IPv4)では、チェックサムを使用してIPヘッダーのエラーをチェックします。すべてのチェックサムは、送信元と送信先の組み合わせに固有のものです。ルーティングノードは、パケットを取得すると、新しいチェックサムを生成します。新しいチェックサムが古いチェックサムと異なる場合、ルーティングノードはそのパケットが悪いものであることを知り、それを捨てます。IPv6では、別のプロトコルがエラーをチェックすることを想定し、チェックサムを省いています。これはパフォーマンスを向上させるためです。



歴史

1974年、米国電気電子学会から「A Protocol for Packet Network Intercommunication」という論文が発表された。この論文では、パケットスイッチングを使ってコンピューター同士が会話する方法が書かれていた。このアイデアの大きな部分を占めていたのが「伝送制御プログラム」だった。この「伝送制御プログラム」は大きすぎたため、TCPとIPに分かれた。このモデルは現在、「DoD Internet Model and Internet Protocol Suite」または「TCP/IP Model」と呼ばれています。

IPのバージョン0から3までは実験的なもので、1977年から1979年にかけて使用されました。

アドレスの数は有限であるため、IPv4アドレスは枯渇します。この問題を解決するために、IEEEはさらに多くのアドレスを持つIPv6を作りました。IPv4には43億個のアドレスがありますが、IPv6には3,400個のアドレスがあります。これは、IPv6のアドレスが枯渇することはないということです。IPv5は、実験的にしか使われていなかったインターネット・ストリーム・プロトコルのために確保されていました。



質問と回答

Q: インターネット・プロトコルとは何ですか?



A: インターネットプロトコル(IP)は、ネットワークの境界を越えてデータを伝送するためにインターネットプロトコルスイートで使用される主要な通信プロトコルです。

Q: IPはインターネットにおいてどのような役割を担っているのですか?



A: IPは、インターネットを確立するプロトコルです。

Q: IPは過去に接続性を提供していましたか?



A: いいえ、過去には、IPはパケットをどのように作成すべきかを規定していただけでした。

Q:伝送制御プロトコルとは何ですか?



A: TCP(Transmission Control Protocol)は、パケットをネットワーク上で伝送することにより、接続性を提供するプロトコルです。

Q: IPとTCPはどのように互いに依存しているのですか?



A: IPとTCPは、それぞれ単独でタスクを実行することができないため、互いに依存しています。TCPは接続性を提供し、IPはインターネットを確立しています。この2つを合わせて、TCP/IPと名付けました。

Q: IPは何か他のものと比較できますか?



A: はい、IPは郵便制度に例えることができます。宛名を書いて投函することはできますが、受取人との間に直接のつながりはありません。

Q:データ伝送におけるTCPの役割とは何ですか?



A: データ通信におけるTCPの役割は、信頼できる接続を確保することであり、パケットのエラーをチェックし、エラーを検出した場合は再送信を要求します。


百科事典を検索する
AlegsaOnline.com - 2020 / 2025 - License CC3