Port am Router für Java-Socket geöffnet

915
dana.ba

Ich versuche, eine Peer-to-Peer-Anwendung zu erstellen, und ich möchte, dass ein Port Verbindungsinformationen austauscht, und ich möchte sicherstellen, dass dieser Port auf dem Weg zwischen den Peers nicht von der Firewall geschlossen wird und dieser Port nicht von einer anderen Anwendung verwendet wird

1
1. Versuchen Sie es mit UPNP zu öffnen. 2. Die Firewall schließt keine Ports, wenn sie nicht dazu aufgefordert wird. (Und wenn es dazu aufgefordert wird, sollte dies passieren, spielt es keine Rolle, ob Sie dies wünschen oder nicht. 3. Sie sollten nicht verhindern, dass Anwendungen den Port verwenden. Kimmax vor 9 Jahren 0
Es ist nicht klar, aber wenn Sie eine Anwendung entwickeln, erhalten Sie wahrscheinlich nützlichere Antworten, wenn Sie diese Frage unter http://stackoverflow.com lesen. rakslice vor 9 Jahren 0

1 Antwort auf die Frage

0
rakslice

Grundsätzlich gibt es mehrere Möglichkeiten, eine Verbindung zwischen Peers herzustellen, die eingehende Verbindungen nicht unter ihren scheinbaren Internetadressen akzeptieren können.

  • Stellen Sie fest, ob es eine Network Address Translation (NAT) gibt, und versuchen Sie gegebenenfalls, UPnP und / oder andere NAT-Anschlusszuordnungsprotokolle zu verwenden, um NAT-Router zu konfigurieren, die darauf reagieren, einen Port an der Internetadresse an die lokale Adresse weiterzuleiten
  • Wenn einer der Peers eingehende Verbindungen annehmen kann, koordinieren Sie ihn so, dass er auf eine Verbindung wartet, und der andere Peer stellt eine Verbindung her
  • Verwenden Sie NAT-Durchquerungstechniken, um zu versuchen, eine Verbindung herzustellen, https://en.wikipedia.org/wiki/NAT_traversal