0


同じネットワーク上にない2台のコンピューター間で通信したいので、ソケットを使用しようとしましたが、同じネットワークで通信するためのチュートリアルと例しか見つかりませんでした。
stackoverflowで検索しようとしましたが、何を検索すればよいか明確にわかりませんでした。
テキストを双方向(チャット)で送信したい。

-編集-問題は、私が何を使用または何をしなければならないかが曖昧であるため、チャットアプリに双方向のテキスト(おそらく日付)を送信したいと言うことはあまり明確ではありません。 。-編集-

4

2 に答える 2

1

2台のマシン間で通信するには、それらが同じ拡張ネットワーク上にある必要があります。他の唯一のオプションは、データを外部ドライブ(USBドライブなど)に保存することです。2台目のマシンに接続してロードすることができます。

ファイアウォールがあり、接続を許可するように構成されていれば、ソケットを使用してインターネット接続で他のマシンと通信できます。ファイアウォールの要点は、不正アクセスを防ぐことです。これがあなたの本当の問題だと思います。ファイアウォールがアクセスを妨げている場合、Javaを使用してこれを回避することはできないはずです(代替手段のためのグーグルネットワークハッキング;)

もう1つのオプションは、2台のコンピューターが互いに直接通信できない場合(同じネットワークに接続する必要がある場合)に電子メールなどのサービスを使用することです。これは、直接接続を使用するよりもはるかに複雑ですが、実行できます。

代わりに、ファイアウォールを正しく構成すると、プレーンソケットを使用できるようになることをお勧めします。

于 2012-01-02T10:53:09.747 に答える
0

外部IPを取得する必要があり(訪問中にこのIPを提供するサイトがあります)、ファイアウォールが通信を許可することを期待します。通常、1000を超えるポートを使用する必要があります。ピアツーピアライブラリが必要です。

もう1つの方法は、1台のコンピューターでSSHを使用することです(JSchはSSH用の1つのJavaライブラリです)。

最も簡単な方法はメール交換です。javax.mailAPIはコンパクトですが、最も簡単ではありません。(特に、私がかつて行ったように、すべてのメールを簡単に削除できます。)

于 2012-01-02T10:55:17.170 に答える