まずは長めのタイトルで申し訳ありませんが、質問を考えると適切なタイトルが思いつきませんでした。
今問題に。私はピアツーピアチャットアプリケーションを作成しています。このアプリケーションは、ファイルを送受信すると同時に、個々の連絡先とチャットすることもできます。
サーバーに接続しているクライアントのIPをキャプチャして保存し、そのユーザーが別のユーザーとのチャットセッションを開始したときに取得できることを理解しています。その保存されたIPを使用して、ServerSocketを使用して2つのクライアント間の接続を作成できます。
しかし、セキュリティ上の理由から、あるユーザーのIPを別のユーザーのコンピューターに渡したくないので、基本的に、各クライアントにIPを渡さずに2つのクライアントを接続する方法があります。
だから例えば
(all sockets have read / write buffers )
Client 1-- logs in --> Server ( a session ID 1 is created between the client 1 and server )
Client 2-- logs in --> Server ( a session ID 2 is created between the client 2 and server )
Client 1 --- Starts chat with client 2 ---> Server ( server connects session 1 and session 2)
Client 1 can then chat and send files to client two without passing it the ip.
これが不明確な質問または愚かな質問である場合は申し訳ありませんが、私はこの質問をグーグルでさえする方法を考えることができませんでした。