他のピアを検出することのみを目的として、ピアがWIFILAN経由でDatagramPacketsを送信できるようにしたいと思います。したがって、各ピアはクライアント(パケットの送信)とサーバー(パケットのリッスン)で構成されています。
これを機能させるには、各マシンでIPConfigを使用してそれぞれのIPv4アドレスを取得し、それをDatagramPacketを作成するためのパラメーターとして使用する必要があります。-
InetAddress server = InetAddress.getByName("THE IPv4 ADDRESS OF THE PEER'S SERVER
RUNNING ON THE OTHER MACHINE");
DatagramPacket sendPacket = new DatagramPacket(outBuffer, outBuffer.length,
server, serverPort);
ここでは、ブロードキャスト(ピア検出用)を正しい方法で使用していますか?私は、machineA上のクライアントがLANの深淵にパケットを送信し、machineBで実行されているサーバーがLAN全体をリッスンしてパケットを検出できると想定していました。現時点では、サーバーを実行しているマシンでIPConfigを手動で使用し、クライアントを実行しているマシンのDatagramPacketにそのアドレスを入力するだけですが、これは無意味に思えます。
マルチキャストは問題なく使用できますが、ピア検出に必要なのはブロードキャストの方が多いと思います。
感謝します。