Fragensteller
Ping an IPv6 Multicast Adresse ff02::1

Frage
-
Ich suche eine Möglichkeit, um im LAN alle Geräte zu ermitteln, die eine Link-Local IPv6-Adresse besitzen. Auf einen Ping an die Multicast-Adresse ff02::1 antworten normalerweise alle Geräte. Ein Aufruf von
Ping.Send("ff02::1")
liefer allerdings nur eine Antwort zurück. Wie komme ich an die Antworten aller Geräte?
Alle Antworten
-
Hallo Jan Post,
Wenn ich hier lese finde ich nichts über FF02 sondern über fe80:: à
http://ipv6friday.org/blog/2011/11/ipv6addresses/ „The first IPv6 address that starts with fe80:: is the link-local address that exists on all systems that has IPv6 enabled – regardless if there’s any outside connectivity or not.“
FF02::1 ist (link-local scope all-nodes address) : Multicast IPv6 addresses
Schau Dir auch folgendes an. Vielleicht kann es Dir weiterhelfen:
Broadcast pings: do they work? à „Multicast pings would be the only feasible option to scan a subnet. Note that I say multicast, as IPv6 has no concept of broadcast.“ …“But the test results are similar to IPv4: a ping to FF02::1 (‘all nodes’ multicast) does not give a single reply, but a ping to FF02::2 (‘all routers’ multicast) gives a reply from the Vyatta, which is indeed configured for IPv6 routing. So with limited testing I can conclude for now that it’s also just network devices that respond to ping in IPv6.“
„To return to the original claim that a broadcast ping will reveal all devices in a given subnet: the conclusion is that this only goes for network devices, and not for end devices. It’s probably not an effective way to quickly map a subnet in everyday life.“
Grüße,
Robert
Robert Breitenhofer, MICROSOFT
Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „Entwickler helfen Entwickler“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.
- Als Antwort vorgeschlagen Robert BreitenhoferModerator Dienstag, 27. November 2012 16:03
- Nicht als Antwort vorgeschlagen Robert BreitenhoferModerator Mittwoch, 28. November 2012 12:21
-
Hallo Jan Post,
Hat Dir die Antwort geholfen?
Grüße,
RobertRobert Breitenhofer, MICROSOFT
Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „Entwickler helfen Entwickler“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.
-
Hallo Robert,
erstmal danke für deine Antwort! Entschuldige bitte, dass ich mich erst jetzt wieder melde. Ich glaube, ich habe mich missverständlich ausgedrückt. Wenn ich in der Eingabeaufforderung einen Ping an die Adresse ff02::1 schicke, erhalte ich das erwartete Ergebnis, nämlich eine Liste mehrerer IPv6-Hosts. Das Problem ist nun, dass die Methode Ping.Send() nur eine dieser Adressen zurückliefert, weil sie nur ein einziges Objekt vom Typ PingReply zurückgeben kann. Ich habe mich deshalb gefragt, ob es in C# eine Methode gibt, die einen Ping sendet und die Antworten mehrerer Hosts verarbeiten kann. Alternativ könnte man aus C# den Ping als Shell-Command aufrufen und die ausgegebene Liste parsen, aber das wäre natürlich aufwändiger und nicht besonders schön.
Grüße
Jan