Eine art p2p funktion im virutellen netzwerk wie?

mrno

Erfahrenes Mitglied
Hi,
ich benutze hamachi für ein Virtuelles Netzmerk. Mein Problem ist es jetzt herauszufinden welche rechner sich in dem selben Netz befinden? Kann ich irgendwie ein Broadcast befehl an das Netz senden so das alle host im Netzwerk angesprochen werde? Ich habe mir schon die udp beispiele angesehen. Dafür muss aber mindestens ein rechner bekannt sein. Wie schaffe ich es wenn kein rechner bekannt ist? Wie kann ich das mit dem Broadcast machen? Gibt es andere möglichkeiten?
 
Hi tom,
Ich habe es versucht aber wie mache ich das mit Multicast Sockets wenn nur die eigene ip bekannt ist?
 
Moin!
mrno hat gesagt.:
Hi,
Mein Problem ist es jetzt herauszufinden welche rechner sich in dem selben Netz befinden? Kann ich irgendwie ein Broadcast befehl an das Netz senden so das alle host im Netzwerk angesprochen werde? Ich habe mir schon die udp beispiele angesehen. Dafür muss aber mindestens ein rechner bekannt sein. Wie schaffe ich es wenn kein rechner bekannt ist?

Moin!
Ich nehme hier mal an, dass du Multicast meinst. Dann musst du aber nicht die IP eines Rechners in dem Netz kennen, sondern die Multicast Gruppenaddresse derer die einzelen PCs beigetreten sind. Ums nochmal anders auszudrücken, du kannst mit Multicast nur diejenigen PCs erreichen, die zu einer bestimmen Multicast Adresse gehören. Sollte sowas nicht existieren, wird es wohl nicht funktionieren.
Aber vielleicht gibt es ne andere Möglichkeit:
Sind die PC's alle in einer Subnetgroup? Falls ja, sollte es vielleicht möglich sein, diese mit der Adresse "224.0.0.1" per MulticastSocket zu erreichen. Diese wird nämlich verwendet, um alle Systeme eines Subnetgroup zu erreichen.

Und mal was offizielleres:
Wenn du einen Thread eröffnest, wäre es schön, wenn du diesen dann auch mal wieder schliessen würdest, wenn er nicht mehr gebraucht wird. Von dir kursieren hier im Forum nämlich ne Menge "Leichen" herum. Als erledigt markierte Threads sind hilfreich, für die Leute die dir geholfen haben, weil sie wissen, dass das Problem nun erledigt ist, und sind hilfreich für Leute die ähnliche Probleme haben, weil sie wissen, dass sie dort eine vollständige Lösung erwartet...

*grüssle*
MeinerEiner
 
Zuletzt bearbeitet von einem Moderator:
Ein echter Broadcast findet nicht über das anpingen jeder beliebigen Adresse statt. Es gibt für jedes Netz eine Broadcastadresse, über die man alle Gegenstellen im (Sub)netz erreichen kann.

DatagramSocket YourSock = new DatagramSocket();
YourSock.connect(new InetAddress("255.255.255.255"), port);
DatagramPacket YourPacket = new DatagramPacket($INSERTDATA);
YourSock.send(YourPack);

damit erreichst Du *alle* Gegenenstellen in Deiner Reichweite. Anpassungen sind erforderlich (255.255.255.0 für das Standardlan, kann natürlich auch 255.255.255.128 sein)
 
Zurück