Beschreibung der verschiedenen ICMP Packet Typen

Es gibt insgesammt 15 verschiedene ICMP Packet Typen.

Typ

ICMP Messages

0

Echo Reply

3

Destination Unreachable

4

Source Quench

5

Redirect

8

Echo Request

9

Router Advertisement

10

Router Solicitation

11

Time exceeded for a Datagram

12

Parameter Problem on a Datagram

13

Timestamp Request

14

Timestamp Reply

15

Information Request

16

Information Reply

17

Address Mask Request

18

Adress Mask Reply

Echo Reply und Echo Request

Das Datenpacket ist 16 Bit breit.

Type (0 oder 8)

Code (0)

Checksumme über komplette Datenblock

Identifikator

Sequenznummer

Zusätzliche Daten

. . .

Anwendung: Das Kommando Ping ist eine Anwendung des Echo Reply und Request.

Destination unreachable

Type (3)

Code (0-5)

Checksumme über komplette Datenblock

unbenutzt

IP-Header und 64 Bit Datagram-Prefix

. . .

Code

0

Netzwerk nicht erreichbar

1

Host nicht erreichbar

2

Protokoll nicht verfügbar

3

UDP-Port nicht verfügbar

4

Fragmentierung erforderlich, aber
das "don´t-fragment" Bit ist gesetzt

5

Source Routing war nicht erfolgreich

Anwendung: z.B.: falls ein Router ein Datenpaket verwirft, da es nicht zu fragmentieren ist, so schickt der Router dem Sender ein "Destination unreachable" um ihm die neue kleinere MTU mitzuteilen.

Source Quench

Type (4)

Code (0)

Checksumme über komplette Datenblock

unbenutzt

IP-Header und 64 Bit Datagram-Prefix

. . .

Anwendung: Sollte ein Router Datenpakete verwerfen, da er zu schnell Daten bekommt, so sendet er ein Source Quench und der Empfänger senkt seine Übertragungsrate.

Change Route

Type (5)

Code (0-3)

Checksumme über komplette Datenblock

Adresse des besseren Routers

IP-Header und 64 Bit Datagram-Prefix

. . .

Code

0

Neue Route für ein Netz

1

Neue Route für einen Host

2

Neue Route für einen Service und ein Netz

Anwendung: Bekommt ein Router ein Datenpacket für ein Netz, bzw. einen Host der über einen anderen Router im selben Netz erreichbar ist, so leitet er das Datenpaket weiter und sendet zusätzlich ein "Change Route" an den Sender, um ihm den besseren Router mitzuteilen.

Time Exceeded

Type (11)

Code (0-1)

Checksumme über komplette Datenblock

unbenutzt

IP-Header und 64 Bit Datagram-Prefix

. . .

Code

0

Time-to-Live wurde Null (Hopcounter)

1

Fragment-Reassembly Zeit wurde überschritten

Anwendung: Der Befehl Traceroute sendet einen Ping zu einem Host mit dem Time-to-Live Zähler gleich eins. Nach einem Schritt ist der Zähler Null und es wird ein Time Exceeded Code(0) zurückgesendet. Jetzt wird ein Ping abgesendet dessen Time-to-Live Zähler zwei ist, usw. Man bekommt von jedem Host auf dem Weg zum Ziel eine Antwort, und damit die IP-Adresse.

IP Datagramm Problem

Type (12)

Code (0)

Checksumme über komplette Datenblock

Pointer

unbenutzt

IP-Header und 64 Bit Datagram-Prefix

. . .

Der Pointer zeigt auf die Stelle im IP-Header die das Problem verursacht hat.

Time Stamp

Type (13-14)

Code (0)

Checksumme über komplette Datenblock

Identifikation

Sequenz-Nummer

Zeitstempel unmittelbar vor dem Senden des Requests

Zeitstempel unmittelbar nach dem Empfang des Requests

Zeitstempel unmittelbar vor dem Senden des Reply

Anwendung: Zur Ermittelung von Laufzeiten. Zeitstempel in Millisekunden seit Mitternacht.

IP Netznummer

Type (15-16)

Code (0)

Checksumme über komplette Datenblock

Identifikator

Sequenz-Nummer

Adressmaske

Type (17-18)

Code (0)

Checksumme über komplette Datenblock

Identifikator

Sequenz-Nummer

Netzwerkmaske

Anwendung: Die Requests können als IP-Broadcasts oder an ein Gateway geschickt werden.

Homepage

TCP/IP

Kontakt