IP あいぴー
IPInternet ProtocolIPv4IPv6パケットルーティング
IPについて教えて
簡単に言うとこんな感じ!
インターネットの「住所システム+配送ルール」だよ。IPアドレスという住所をデータに付けて、世界中のルーターがリレーしながら届けてくれるんだ。「インターネット」という名前の元にもなってるくらい中心的な存在だよ!
IPとは
IP(Internet Protocol)は、TCP/IPモデルのインターネット層で動作する中核プロトコルです。異なるネットワーク間でデータを転送する「ルーティング」機能と、送受信先を識別する「IPアドレス」体系を提供します。現在広く使われているのはIPv4(1981年標準化)と、次世代のIPv6(1998年標準化)です。
IPの重要な特性として「ベストエフォート型」が挙げられます。IPはデータを届けるための「最善の努力」はしますが、到達保証・順序保証・重複排除は行いません。これらの信頼性保証は上位のTCPが担当します。IPが単純な設計を保つことで、あらゆるネットワーク機器が柔軟に対応できる設計思想(エンドツーエンド原則)が実現されています。
IPにはフラグメンテーション(パケット分割)機能もあります。経路上のネットワークが扱える最大パケットサイズ(MTU)より大きなデータが来たとき、IPが自動的に分割して送り、受信側で再組み立てします。
IPv4ヘッダの主要フィールド
| フィールド | サイズ | 役割 |
|---|---|---|
| バージョン | 4bit | IPv4=4, IPv6=6 |
| ヘッダ長 | 4bit | ヘッダのサイズ(32bit単位) |
| ToS/DSCP | 8bit | サービス品質(QoS)の優先度 |
| 全長 | 16bit | パケット全体のバイト数 |
| TTL | 8bit | 通過できるルーター数の上限(Time To Live) |
| プロトコル | 8bit | 上位プロトコル番号(TCP=6, UDP=17) |
| 送信元IPアドレス | 32bit | 送信元のIPアドレス |
| 宛先IPアドレス | 32bit | 宛先のIPアドレス |
TTL(Time To Live)は特に重要で、パケットがルーターを通過するたびに1減り、0になると破棄されます。これにより、誤ったルーティングで永遠にループするパケットを防ぎます。
歴史と背景
- 1974年:Vint CerfとBob KahnがTCP/IPの概念を発表
- 1981年:RFC 791でIPv4が標準化
- 1992年:IPアドレス枯渇問題が顕在化し始める
- 1996年:RFC 1883でIPv6の仕様が公開
- 1998年:RFC 2460でIPv6が正式標準化
- 2011年:IANAがIPv4アドレスの中央在庫を枯渇させる
- 現在:IPv4とIPv6が共存する過渡期が続いている
IPv4とIPv6の比較
| 項目 | IPv4 | IPv6 |
|---|---|---|
| アドレス長 | 32bit(約43億個) | 128bit(約340澗個) |
| 表記例 | 192.168.1.1 | 2001:db8::1 |
| ヘッダサイズ | 20〜60バイト | 40バイト固定 |
| フラグメンテーション | ルーターが行う | 送信端末のみ行う |
| NAT | 必要(アドレス不足のため) | 不要(十分なアドレス数) |
| セキュリティ | オプション(IPsec) | 標準仕様(IPsec) |
関連する規格・RFC
| 規格・RFC番号 | 内容 |
|---|---|
| RFC 791 | IPv4 の基本仕様 |
| RFC 8200 | IPv6 の基本仕様(最新統合版) |
| RFC 792 | ICMP(IPと組み合わせて使うエラー通知) |
| RFC 4632 | CIDR(クラスレスドメイン間ルーティング) |
関連用語
- IPアドレス — IPが使う送受信先の識別子
- ICMP — IPと組み合わせて使うエラー通知プロトコル
- ルーティングテーブル — IPパケットの経路を決める仕組み
- フラグメンテーション — パケット分割の詳細
- NAT・NAPT — IPアドレスを変換する技術