はじめに
Webサイトの閲覧やメールの送信では、データが家庭内LAN、プロバイダ、通信事業者など複数のネットワークを通って相手へ届きます。このネットワーク間の転送を支える中心的な仕組みがIP(Internet Protocol)です。
この記事では、IPがネットワーク層で担う役割を中心に、IPアドレスとルーティングの関係、データリンク層との違い、パケットがルーターを経由して届く流れを解説します。
この記事で分かること
- IPとネットワーク層の役割
- IPアドレスが必要な理由
- ルーティングテーブルと次ホップの関係
- IPとデータリンク層の役割分担
- IPが保証すること・保証しないこと
IPとは
IPは、宛先IPアドレスに基づいて、複数のネットワーク間でパケットを転送するネットワーク層のプロトコルです。送信元IPアドレスと宛先IPアドレスをIPヘッダーに持たせ、端末やルーターがルーティングテーブルを参照して、次ホップや送信インターフェースを選べるようにします。
IPの重要な点は、一つのLAN内だけでなく、ルーターで接続された複数のネットワークを越えて通信できることです。Ethernet、Wi-Fiなど下位のデータリンク方式が途中で変わっても、IPパケットとして共通の宛先情報を持つことで、異なるネットワークをつないで転送できます。
ネットワーク層を含むOSI参照モデル全体とTCP/IPモデルとの対応は、OSI参照モデルとは?TCP/IPモデルとの違いと7階層の役割で解説しています。
IPアドレスでネットワーク上の宛先を示す
IPアドレスは、IP通信に使うネットワークインターフェースを識別する論理アドレスです。一台の機器が複数のインターフェースを持つ場合は、複数のIPアドレスを持つことがあります。そのため、IPアドレスは人や機器そのものを常に一意に表す番号ではありません。
宛先IPアドレスがあることで、送信側と途中のルーターは、パケットをどのネットワークへ転送すべきかを判断できます。IPアドレスはネットワークを表すプレフィックスと、そのネットワーク内のインターフェースを識別する部分として扱われます。IPv4は32ビット、IPv6は128ビットで表し、サブネットマスクやプレフィックス長を使ってネットワークの範囲を区切ります。
IPアドレスの表記、ネットワーク部とホスト部、サブネットマスクの考え方は、「IPv4アドレスとは?ネットワーク部・ホスト部とサブネットマスクを解説」で詳しく解説しています。
ルーティングでネットワークを越える
送信端末は、宛先IPアドレスと自分のルーティングテーブルを照合します。宛先が同じネットワーク内にあれば直接送信し、別のネットワークにあればデフォルトゲートウェイなどの次ホップへパケットを渡します。
ルーターも宛先IPアドレスとルーティングテーブルを照合し、一致する経路情報から次ホップや送信インターフェースを選びます。一般には、複数の経路が一致する場合、より具体的なプレフィックスを持つ経路が優先されます。この判断を各ルーターが繰り返す方式を、ホップ・バイ・ホップ転送と呼びます。
ルーティングテーブルには、直接接続されたネットワーク、管理者が登録する静的経路、RIP・OSPF・BGPなどのルーティングプロトコルで学習した経路などが登録されます。IPはパケット転送の基本を定めますが、どの経路情報を採用するかはルーティング設定やプロトコルの役割です。詳しくは、ルーティングテーブル(経路制御表)とは?宛先IPから経路を選ぶ仕組みを解説を参照してください。
IPパケットは1ホップずつ運ばれる
IPは複数のネットワークを越える仕組みですが、実際の転送は一度に宛先まで届くのではありません。パケットは、送信端末からルーター、ルーターから次のルーターというように、データリンク層の通信を使って1ホップずつ運ばれます。
- 送信端末が宛先IPアドレスを確認する
- ルーティングテーブルから次ホップと送信インターフェースを決める
- Ethernet上のIPv4ではARP、IPv6ではNDPを使って次ホップのリンク層アドレスを調べる
- IPパケットをデータリンク層のフレームに格納して送る
- ルーターがフレームを外し、IPヘッダーを確認して次のリンク用のフレームを作る
例えば、端末「192.0.2.10」から別ネットワークのサーバー「203.0.113.10」へ送る場合、最初のリンクで使うフレームの宛先はデフォルトゲートウェイです。一方、IPパケットの宛先は最終的なサーバーを示します。ルーターを通過するたびにフレームの宛先は次ホップに合わせて変わり、TTLなど一部のIPヘッダー情報も更新されます。
このように、IPアドレスは最終的な宛先を判断するために使い、リンク層アドレスは現在のリンクで次に渡す相手を示します。Ethernet上のIPv4通信で、IPアドレスから次ホップのMACアドレスを調べる仕組みは、「ARPとは?IPv4でIPアドレスからMACアドレスを調べる仕組みを解説」で解説しています。
データリンク層との違い
IPを理解するには、ネットワーク層とデータリンク層の役割を分けて考えることが重要です。ネットワーク層は宛先IPアドレスに基づくネットワーク間転送を扱い、データリンク層は同一データリンク内でフレームを次の相手へ渡します。
| 比較項目 | ネットワーク層 | データリンク層 |
|---|---|---|
| 主な役割 | 宛先IPアドレスに基づいてネットワーク間でパケットを転送する | 同一データリンク内でフレームを転送する |
| 代表的なアドレス | IPアドレス | MACアドレス |
| データ単位 | パケット | フレーム |
| 通信範囲 | 複数のネットワーク間 | 同一データリンク内 |
| 代表的な機器 | ルーター | L2スイッチ |
ルーターを通過するたびにデータリンク層のフレームは作り直されます。ネットワーク層では、宛先IPアドレスとルーティングテーブルを基に転送を続けます。フレーム、MACアドレス、1ホップ転送の詳細は、データリンク層とは?MACアドレスやフレームの役割を分かりやすく解説を参照してください。
L2スイッチ、ルーター、L4・L7の負荷分散機器などの役割を横断して確認したい場合は、「ネットワーク機器の種類と違い|OSI階層と役割を分かりやすく解説」を参照してください。
IPが保証しないこと
IPは、パケットを宛先へ届けるための基本的な転送機能を提供しますが、必ず到着すること、到着順序が保たれること、重複しないことまでは保証しません。このような方式をベストエフォート型と呼びます。
配送できない、TTLが尽きたなどの状況は、ICMPによって送信元へ通知される場合があります。一方、再送や順序制御などの信頼性が必要な通信では、上位のトランスポート層でTCPを利用します。ICMPの役割は「ICMPとは?pingとエラー通知でIP通信を補助する仕組みを解説」、TCPとUDPの違いは「トランスポート層とは?役割とTCP・UDPの違いを分かりやすく解説」で解説しています。
まとめ
IPは、IPアドレスとルーティングを使って、複数のネットワークを越えてパケットを転送するネットワーク層のプロトコルです。
- IPアドレスで送信元と宛先のネットワークインターフェースを示す
- ルーティングテーブルを基に次ホップと送信インターフェースを選ぶ
- データリンク層のフレームを使って1ホップずつ転送する
- ルーターを通過するたびにフレームを作り直す
- 到着保証や再送はIPではなく上位層が担当する
「IPアドレスはネットワーク上の住所」と覚えるだけでなく、IPアドレスで宛先を示し、ルーティングで次ホップを選び、データリンク層で1区間ずつ運ぶ仕組みとして理解すると、ネットワーク層の役割を整理できます。