1

ServerSocket および Socket クラスを利用する Java でいくつかのプログラムを作成する予定です。コードは正しくビルドされており、適切に接続できます。ただし、接続とサーバーの作成に関しては、ユーザーにとってできるだけ簡単にしたいと考えています。したがって、プログラムがクライアント マシン上にサーバーを構築し、インターネットを介して他のマシンと通信できるように、Java 内からポート転送する方法が必要ですが、プログラムのユーザーは余分な労力を費やす必要はありません。ダウンロードが必要な外部プログラムにアクセスせずにこれを実行する効果的な方法はありますか?

4

3 に答える 3

1

この小さなプロジェクトを使用できます。

注: クライアント マシンは通常、NAT ゲートウェイの背後にあるため、インターネット上の他のマシンはそれらに直接アクセスできません。

于 2010-11-12T21:14:47.487 に答える
0

着信接続を出力接続にパイプするだけではどうですか?

両方のソケットを取得するInputStreamと、 aと aを使用して 2 つの異なるソケットを接続し、接続を転送できます。こちらこちらのドキュメントを参照してください。OutputStreamPipedInputStreamPipedOutputStream

于 2010-11-12T21:14:41.820 に答える
0

サーバーが NAT またはファイアウォールの背後にあり、接続を容易にするために中間者を使用したくない場合は、かなり困難になります。NATホールパンチング、特にRodiのようなオープンソースのJava実装を調べることをお勧めします。

于 2010-11-12T21:16:22.500 に答える