Destination Unreachable Message (宛先到達不能メッセージ)
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Code | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| unused |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Internet Header + 64 bits of Original Data Datagram |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
IPフィールド
Destination Address (宛先アドレス)
元のデータグラムのデータからの送信元ネットワークとアドレス。
ICMPフィールド
Type (タイプ)
3
Code (コード)
- 0 = net unreachable (ネットワーク到達不能);
- 1 = host unreachable (ホスト到達不能);
- 2 = protocol unreachable (プロトコル到達不能);
- 3 = port unreachable (ポート到達不能);
- 4 = fragmentation needed and DF set (フラグメンテーションが必要だがDFが設定されている);
- 5 = source route failed (送信元ルート失敗).
Checksum (チェックサム)
チェックサムは、ICMPタイプから始まるICMPメッセージの1の補数和の16ビット1の補数です。チェックサムを計算する場合、チェックサムフィールドはゼロであるべきです (SHOULD)。このチェックサムは将来置き換えられる可能性があります (MAY)。
Internet Header + 64 bits of Data Datagram (インターネットヘッダー + 64ビットのデータデータグラム)
インターネットヘッダーと元のデータグラムのデータの最初の64ビット。このデータは、メッセージを適切なプロセスと一致させるためにホストによって使用されます。上位層プロトコルがポート番号を使用する場合、それらは元のデータグラムのデータの最初の64データビットにあると想定されます。
説明 (Description)
ゲートウェイのルーティングテーブルの情報によれば、データグラムのインターネット宛先フィールドに指定されたネットワークが到達不能である場合(例えば、そのネットワークへの距離が無限大である場合)、ゲートウェイはデータグラムのインターネット送信元ホストに宛先到達不能メッセージを送信してもよい (MAY)。さらに、一部のネットワークでは、ゲートウェイがインターネット宛先ホストが到達不能かどうかを判断できる場合があります。これらのネットワークのゲートウェイは、宛先ホストが到達不能な場合に送信元ホストに宛先到達不能メッセージを送信してもよい (MAY)。
宛先ホストにおいて、IPモジュールが指定されたプロトコルモジュールまたはプロセスポートがアクティブでないためデータグラムを配信できない場合、宛先ホストは送信元ホストに宛先到達不能メッセージを送信してもよい (MAY)。
別のケースは、データグラムを転送するためにフラグメント化しなければならない (MUST) が、Don't Fragment (DF) フラグがオンになっているためフラグメント化できない場合です。この場合、ゲートウェイはそのデータグラムを破棄しなければならず (MUST)、宛先到達不能メッセージを返してもよい (MAY)。
コード0, 1, 4, 5はゲートウェイから受信される可能性があります (MAY)。コード2と3はホストから受信される可能性があります (MAY)。