| クラスA | 0 | ネットID(7bit) | ホストID(24bit) | ||||||
| クラスB | 1 | 0 | ネットID(14bit) | ホストID(16bit) | |||||
| クラスC | 1 | 1 | 0 | ネットID(21bit) | ホストID(8bit) | ||||
| クラスD | 1 | 1 | 1 | 0 | マルチキャストグループID(28bit) | ||||
| クラスE | 1 | 1 | 1 | 1 | 0 | 将来の拡張のために予約(27bit) | |||
| クラス | 範囲 |
|---|---|
| A | 0.0.0.0 〜 127.255.255.255 |
| B | 128.0.0.0 〜 191.255.255.255 |
| C | 192.0.0.0 〜 223.255.255.255 |
| D | 224.0,0,0 〜 239.255.255.255 |
| E | 240.0.0.0 〜 247.255.255.255 |
インターネットアドレスの割り当ては InterNIC (Internet Network Information Center) が一元的におこなう。日本(JPNIC)は、アジアパシフィック地域 (APNIC)の下に位置づけられる。
インターネット参加組織の増加によって、クラスCでは足りないがクラスBでは余る組織のために クラスレスなネットワークアドレスの交付が行われる。またプロバイダ毎にその複数のネットワークアドレスを 集約することがおこなわれている。
| 802.3 MAC | 802.2 LLC | 802.2 SNAP | ||||||||
| 宛先 アドレス | 発信元 アドレス | データ長 | DSAP AA | SSAP AA | Control 03 | Original Code 00 | タイプ | データ | CRC | |
| タイプ 0800 | IPデータグラム | |||||||||
| タイプ 0806 | ARP要求/応答 | PAD | ||||||||
| タイプ 0835 | RARP要求/応答 | PAD | ||||||||
| Ethernet | ||||||||||
| 宛先 アドレス | 発信元 アドレス | タイプ | データ | CRC | ||||||
| タイプ 0800 | IPデータグラム | |||||||||
| タイプ 0806 | ARP要求/応答 | PAD | ||||||||
| タイプ 0835 | RARP要求/応答 | PAD | ||||||||
特別な IP アドレス ... ループバックインターフェース 127.0.0.1 (localhost)
MTU ... Maximum Transfer Unit (RFC1191)
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Version| IHL |Type of Service| Total Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Identification |Flags| Fragment Offset |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Time to Live | Protocol | Header Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options | Padding |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Example Internet Datagram Header
| 0 | 1 | 2 | 3 | ||||||||||||||||||||||||||||
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 |
| Hardware Type (=1) | Protocol Type (=0x0800) | ||||||||||||||||||||||||||||||
| Hardware Size (=6) | Protocol Size (=4) | Operation (要求=1,応答=2) | |||||||||||||||||||||||||||||
| 送り手 Ethernet Address(1) | |||||||||||||||||||||||||||||||
| 送り手 Ethernet Address(2) | 送り手 IP Address (1) | ||||||||||||||||||||||||||||||
| 送り手 IP Address (2) | ターゲット Ethernet Address(1) | ||||||||||||||||||||||||||||||
| ターゲット Ethernet Address(2) | |||||||||||||||||||||||||||||||
| ターゲット IP Address | |||||||||||||||||||||||||||||||
| 0 | 1 | 2 | 3 | ||||||||||||||||||||||||||||
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 |
| Hardware Type (=1) | Protocol Type (=0x0800) | ||||||||||||||||||||||||||||||
| Hardware Size (=6) | Protocol Size (=4) | Operation (要求=3,応答=4) | |||||||||||||||||||||||||||||
| 送り手 Ethernet Address(1) | |||||||||||||||||||||||||||||||
| 送り手 Ethernet Address(2) | 送り手 IP Address (1) | ||||||||||||||||||||||||||||||
| 送り手 IP Address (2) | ターゲット Ethernet Address(1) | ||||||||||||||||||||||||||||||
| ターゲット Ethernet Address(2) | |||||||||||||||||||||||||||||||
| ターゲット IP Address | |||||||||||||||||||||||||||||||
IP データグラム IP ヘッダ ICMP メッセージ 20 byte
| 0 | 1 | 2 | 3 | ||||||||||||||||||||||||||||
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 |
| Message Type | Message Code | Check Sum (メッセージ全体) | |||||||||||||||||||||||||||||
| : | |||||||||||||||||||||||||||||||
| (内容はタイプとコードによる) | |||||||||||||||||||||||||||||||
| : | |||||||||||||||||||||||||||||||
| タイプ | コード | 説明 | 照会 | エラー |
|---|---|---|---|---|
| 0 | 0 | エコー応答 | ○ | |
| 3 | 宛先到達不可 | |||
| 0 | ネットワーク到達不可 | ○ | ||
| 1 | ホスト到達不可 | ○ | ||
| 2 | プロトコル到達不可 | ○ | ||
| 3 | ポート到達不可 | ○ | ||
| 4 | フラグメンテーションが必要だが、フラグメントしてはいけないことを示すビットが設定されている | ○ | ||
| 5 | ソースルートが失敗 | ○ | ||
| 6 | 宛先ネットワークが不明 | ○ | ||
| 7 | 宛先ホストが不明 | ○ | ||
| 8 | 発信元ホストが孤立(使用されていない) | ○ | ||
| 9 | 宛先ネットワークが管理的に禁止されている | ○ | ||
| 10 | 宛先ホストが管理的に禁止されている | ○ | ||
| 11 | サービスタイプにネットワーク到達不可 | ○ | ||
| 12 | サービスタイプにホスト到達不可 | ○ | ||
| 13 | フィルタリングで通信が管理的に禁止されている | ○ | ||
| 14 | ホスト優先違反 | ○ | ||
| 15 | 事実上、優先切断 | ○ | ||
| 4 | 0 | 発信元抑制 | ○ | |
| 5 | リダイレクト | |||
| 0 | ネットワークへのリダイレクト | ○ | ||
| 1 | ホストへのリダイレクト | ○ | ||
| 2 | TOS, ネットワークへのリダイレクト | ○ | ||
| 3 | TOS, ホストへのリダイレクト | ○ | ||
| 8 | 0 | エコー要求 | ○ | |
| 9 | 0 | ルータ広告(advertise) | ○ | |
| 10 | 0 | ルータ請願(request) | ○ | |
| 11 | 時間超過 | |||
| 0 | 転送中の生存時間=0 | ○ | ||
| 1 | リアセンブリ中の生存時間=0 | ○ | ||
| 12 | パラメタ問題 | |||
| 0 | IPヘッダに問題 | ○ | ||
| 1 | 必要なオプションの欠落 | ○ | ||
| 13 | 0 | タイムスタンプ要求 | ○ | |
| 14 | 0 | タイムスタンプ応答 | ○ | |
| 15 | 0 | インフォメーション要求(Obsolete) | ○ | |
| 16 | 0 | インフォメーション応答(Obsolete) | ○ | |
| 17 | 0 | アドレスマスク要求 | ○ | |
| 18 | 0 | アドレスマスク応答 | ○ |
| 0 | 1 | 2 | 3 | ||||||||||||||||||||||||||||
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 |
| Message Type = 0 または 8 | Message Code = 0 | Check Sum (メッセージ全体) | |||||||||||||||||||||||||||||
| 識別子 | シーケンス番号 | ||||||||||||||||||||||||||||||
| オプションのデータ | |||||||||||||||||||||||||||||||
| : | |||||||||||||||||||||||||||||||
RFC768 IP プロトコル番号 = 17
<---- IP データグラム ----> <---- UDP データグラム ----> IP
ヘッダUDP
ヘッダUDP データ 20 バイト 8 バイト
UDP はデータグラムが相手に到達することを保証しない。つまり、信頼性のあるプロトコルではない。 しかし、時と場合によってはこのようなプロトコルが有効な場合がある。
UDP ヘッダ
| 0 | 1 | 2 | 3 | ||||||||||||||||||||||||||||
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 |
| 16 bit 発信元ポート番号 | 16 bit 宛先ポート番号 | ||||||||||||||||||||||||||||||
| 16 bit UDP データ長 | 16 bit UDP チェックサム | ||||||||||||||||||||||||||||||
| データ | |||||||||||||||||||||||||||||||
| : | |||||||||||||||||||||||||||||||
TCP はコネクション指向の、信頼性のあるバイト・ストリーム・サービスを提供する。
TCP ヘッダ
<---- IP データグラム ----> <---- TCP セグメント ----> IP
ヘッダTCP
ヘッダTCP データ 20 バイト 20 バイト
| 0 | 1 | 2 | 3 | ||||||||||||||||||||||||||||
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 |
| 16 bit 発信元ポート番号 | 16 bit 宛先ポート番号 | ||||||||||||||||||||||||||||||
| 32 bit シーケンス番号 | |||||||||||||||||||||||||||||||
| 32 bit 確認応答番号 | |||||||||||||||||||||||||||||||
| 4 bit ヘッダ長 |
予約ずみ (6bit) |
U R G |
A C K |
P S H |
R S T |
S Y N |
F I N |
16 bit ウィンドウサイズ | |||||||||||||||||||||||
| 16 bit TCP チェックサム | 16 bit 緊急ポインタ | ||||||||||||||||||||||||||||||
| オプション(もしあれば) | |||||||||||||||||||||||||||||||
| : | |||||||||||||||||||||||||||||||
| データ | |||||||||||||||||||||||||||||||
| : | |||||||||||||||||||||||||||||||
フラグ・ビット
コネクションの確立