IPv6-Ping ist nur möglich, wenn der Zielcomputer zurückpingt

663
Niko

Ich habe ein typisches "a can ping b", aber b kann kein "ping" - Problem. Ich verwende IPv6 für den Ping. Was in meinem Fall besonders ist, ist, dass "b" sofort nach "b" ping "a" ein "ping" kann. Nach einigen Versuchen stellte ich fest, dass alles einwandfrei funktioniert, wenn ich die Netzwerkschnittstelle spezifiziere, die mit "-I eth0" verwendet werden soll (ja, zwei Schnittstellen auf der Linux-Maschine befinden sich im selben Subnetz). Ich würde immer noch gerne wissen, was sich ändert, wenn Machine "b" zurück pingt, und würde mich über Fachwissen freuen. Ping mit IPv4 funktioniert in beide Richtungen gut. Wenn ich den Ping von "b" stoppe, kann "a" immer noch "b" pingen, bis ich ihn mit Ctrl-C stoppe. Ein erneuter Versuch schlägt fehl, auch wenn ich es sofort versuche. Daher glaube ich, dass es sich nicht um ein Upcache-Problem handelt. Einige Infos:

Maschine "a"

Betriebssystem: Windows (in Ausnahmen für Firewall wurde "ICMPv6" hinzugefügt)

IPv6-Adresse: fe80 :: 21c: 1cff: fe00: 3de3

Maschine "b":

OS: Linux Busybox

IPv6-Adresse: fe80 :: 21c: 1cff: fe00: 3de4

Versuchte sowohl "Ping" als auch "Ping6" binär

0
Können Sie versuchen, die Adresse mit angefügtem Zonen- / Schnittstellenindex zu pingen? Das Format ist "address% zone", z. B. "fe80 :: 21c: 1cff: fe00: 3de4% eth0" unter Linux. Die richtige Anzahl finden Sie in einer Tabelle von "route print" unter Windows grawity vor 5 Jahren 0

1 Antwort auf die Frage

0
harrymc

Bei linklokalen IPv6-Adressen müssen Sie immer die Schnittstelle angeben. Der Grund ist, dass in jedem Netzwerk der gleiche Adressblock (Präfix) verwendet wird: Die Adresse fe80::21c:1cff:fe00:3de3ist nur für eine bestimmte Verbindung (Schnittstelle) eindeutig. Auf einem anderen Link kann dieselbe Adresse für ein völlig anderes Gerät verwendet werden.

Aus diesem Grund sind linklokale Adressen für die manuelle Verwendung normalerweise nicht sehr nützlich, da Sie die Schnittstelle jedes Mal angeben müssen. Auf dem anderen Computer kann der Schnittstellenname anders sein, sodass Sie nicht einfach einen Link mit einer Adresse senden können, da Sie nicht wissen, wie der Schnittstellenname für diesen Link auf seiner Seite ist.

Um zu vermeiden, dass die Schnittstelle angegeben wird, benötigen Sie "echte" IPv6-Adressen mit einem globalen Bereich, den Sie weiterleiten können.

Sie können beispielsweise https://cd34.com/rfc4193/ verwenden, wo Sie eine MAC-Adresse eingeben. Die Berechnungen werden ausgeführt und ein Block von IPv6-Adressen wird zurückgegeben.

In Ihrem Fall waren die IPv6-Adresse und die Schnittstelle des Zielcomputers bekannt, nachdem ein Computer den anderen anpingte, sodass er zurückkehren konnte.