Wie sende ich ein UDP-Paket an einen bestimmten Computer, wenn alle Computer im Netzwerk dieselbe öffentliche IP-Adresse haben? [geschlossen]
Hier ist das Problem, es ist sehr einfach (zu verstehen ..):
Ich habe zu Hause zwei Computer, die beide dieselbe öffentliche IP-Adresse haben (z. B. 1.2.3.4).
Ich habe 1 Computer an einem Kaffeestandort (anderes Netzwerk), daher hat er eine andere öffentliche IP-Adresse.
Ich möchte eine Nachricht (z. B. "Hallo") vom Computer an EINE der Computer senden, die ich zu Hause habe.
Ich benutze Java und denke an das folgende sehr einfache Programm für den Absender (der Einfachheit halber habe ich die Ausnahmebehandlung deaktiviert):
Hauptsächlich mache ich:
<code>sendPacket("hi"); </code>
und ich habe
<code>void sendPacket(String message){ DatagramSocket myServerSocket = new DatagramSocket(9000); // server socket byte[] sendData = new byte[message.length()]; // build msg sendData = message.getBytes(); InetSocketAddress destSocketAddr = new InetSocketAddress("1.2.3.4", 9000); // destination socket addr DatagramPacket sendPacket = new DatagramPacket(sendData, sendData.length, destSocketAddr); // make packet myServerSocket.send(sendPacket); // send packet } </code>
Wenn mein Hörer (Empfänger) auf beiden Computern zu Hause ausgeführt wird (beide mit derselben öffentlichen IP-Adresse 1.2.3.4), wie kann ich angeben, an wen ich diese Nachricht senden möchte?