Genaue Bedeutung des ICMP-Protokolls 1 Port xxx, das bei einem Ping-Austausch nicht erreichbar ist

1153
Harald

Ein tcpdump einer Ping-Sitzung zeigt die folgenden zwei Zeilen:

IP gateway.comp.com > somehost.comp.com: ICMP redirect 10.8.0.10 to host othergateway.comp.com, length 68 IP gateway.comp.com > somehost.comp.com: ICMP 10.8.0.10 protocol 1 port 21475 unreachable, length 68 

Ich verstehe die erste Nachricht. Es besagt lediglich, dass somehostMain gatewaymit Paketen auf 10.8.0.10 nicht gestört wird, sondern sie direkt durchgeleitet werden müssen othergateway.

Aber was bedeutet die zweite Nachricht? Es kommt 17ms später und scheint verwandt zu sein. Was ist protocol 1 port XXXin diesem Zusammenhang ? Was ist eigentlich unerreichbar? ICMP (= Protokoll 1) hat keine Ports, afaik. Was bedeutet das?

1

1 Antwort auf die Frage

0
RedGrittyBrick

Dies ist wahrscheinlich die ICMP-Steuerungsnachricht Typ 3 (Ziel nicht erreichbar) Code 3 (Port nicht erreichbar)

Dies bedeutet, dass am Ziel kein Serverprozess mit diesem TCP- oder UDP-Port verbunden ist.

"Eine UDP-Regel lautet, wenn UDP ein UDP-Datagramm empfängt und der Zielport nicht mit einem Port übereinstimmt, den ein Prozess verwendet, reagiert UDP mit einem nicht erreichbaren ICMP-Port." - von TCP / IP Illustrated, Stevens .

Warum UDP? Der pingBefehl wird traditionell mit ICMP-Echoanforderungen implementiert. Auf einigen Plattformen können jedoch einige Tools andere Protokolle verwenden. Ein Beispiel wärenmap -sU

Hmm, nicht überzeugt von der UDP-Theorie. Das "Gateway" erhält definitiv ICMP-Pakete von "Somehost". Es weiß nicht, dass jemand "ping" für "somehost" verwendet. Es kennt nur die Pakete. Warum sollte es von ICMP zu UDP wechseln? Andererseits: Ich logge nur ICMP. Also bezieht sich das Unerreichbare tatsächlich auf ein UDP-Paket, das ich nicht protokollierte. Harald vor 7 Jahren 0