クラス A ネットワーク内の一連のノードでアプリケーションを実行していますが、そのネットワーク内でクラス B アドレスを持つ唯一のノードにログインした場合にのみ、自分のシステムからそれらにアクセスできます。
ただし、クライアント部分 (GUI などすべてを含む) は自分のシステムでしか実行できないため、クラス A ネットワークと通信する何らかの方法が必要です。クライアント (私のシステム) は、サーバーへの単純な TCP ソケットをセットアップしようとします (内部ネットワークの端で、ServerSocket を使用) が、接続タイムアウト例外が発生します。SSH ポート 22 のみが開いているため、SSH トンネリングを使用してシステムから内部ネットワークにパケットを送信することを勧められました。
少しググった後、次の方法でSSHトンネルを設定できることがわかりましたが、Java内からこれを使用してソケットを設定するにはどうすればよいでしょうか? ありがとう!
ssh -L 2222:10.10.10.10:22 174.174.174.174
編集: JSch を使用してシステムから内部ノードへのポート転送を設定しましたが、内部ノードごとに個別のトンネルを設定することなく双方向にする方法はありますか? (ノードは応答に同じ TCP 接続を使用していませんが、ラップトップのポート 2222 への新しい接続をセットアップしています。)