Netzwerkanalyse

ICMP bei der Fehlersuche nutzen

abgelegt unter: Protokolle

Das Protkoll ICMP kommt hauptsächlich beim Kommando Ping zum Einsatz. ICMP wurde allerdings entworfen, um Statusmeldungen im Netzwerk zu versenden. IP-Hosts können auf bestimmte Fehlersituationen mit einer ICMP-Message reagieren. Dieses Verhalten, kann bei der Fehlersuche im Netzwerk genutzt werden.

Wenn Sie einen Trace mit Ethereal erstellen, können Sie leicht auf das Protokoll ICMP filtern. Der Filterausdruck lautet icmp. Allerdings werden jetzt auch alle "pings" mit angezeigt. Um diese auszublenden, nutzen Sie folgende Filterregel icmp.type != 0 and icmp.type != 8.

Type und Code

Für die Fehlersuche sind besonders die folgenden Type- und Code-Werte von Bedeutung:

Type  3

Code  0 = net unreachable
      1 = host unreachable
      2 = protocol unreachable
      3 = port unreachable
      4 = fragmentation needed and DF set
      5 = source route failed


Type  4

Code  0 = Source Quench Message


Type  5

Code  0 = Redirect datagrams for the Network
      1 = Redirect datagrams for the Host
      2 = Redirect datagrams for the Type of 
          Service and Network
      3 = Redirect datagrams for the Type of 
          Service and Host


Type 11

Code  0 = time to live exceeded in transit
      1 = fragment reassembly time exceeded


Type 12

Code  0 = parameter problem

Es lohnt sich, einen Überblick über den ICMP-Verkehr im eigenen Netz zu haben. Die so gewonnenen Daten lassen sich im Fehlerfall zu Vergleichen nutzen (Stichwort Baselining).

Farben im Ethereal

Im Ethereal besteht auch die Möglichkeit, Frames auf Basis von Filterregeln einzufärben. Im Menü View können unter der Auswahl Coloring Rules die Farben festgelegt werden. Der Vorteil dieser Methode ist, dass auch die anderen Frames im View erhalten bleiben. Beim reinen Filter, sind ja nur die eigentlichen Treffer zu sehen.

ICMP am PC

Die ICMP-Counter eines PCs können Sie sich mit dem Kommando netstat ansehen.

mk@think:~$ netstat -s
Icmp:
    5899 ICMP messages received
    49 input ICMP message failed.
    ICMP Eingabehistogramm:
        destination unreachable: 212
        timeout in transit: 35
        echo requests: 6
        echo replies: 5646
    198 ICMP messages sent
    0 ICMP messages failed
    ICMP Ausgabehistogramm:
        destination unreachable: 192
        echo replies: 6

Alle Details zu ICMP finden Sie im RFC 792.

geschrieben am 11.04.2006 von Mirko Kulpa

footer