我正在构建一个客户端服务器程序,我想模拟让客户端发送到可以在同一个ipv4中的彼此连接的服务器" 255.255.255.255"我有特定的端口可以工作:端口30381必须有服务器,如果可能的话。什么是最好的解决方案,因为我想多次运行相同的程序?
我在代码中有这个但是它工作得不好它连接相同的程序客户端 - 服务器但不连接到其他程序:
客户:
datagramSocket = new DatagramSocket(30382);
datagramSocket.setBroadcast(true);
this.ipDest = InetAddress.getByName("255.255.255.255");
byte[] data = new byte[512];
DatagramPacket request = new DatagramPacket(data, data.length,ipDest, 30381);
datagramSocket.send(request);
DatagramPacket reply = new DatagramPacket(data, data.length);
datagramSocket.receive(reply);
this.ipDest = reply.getAddress();
// do something with the reply
服务器:
this.datagramSocket = new DatagramSocket(null);
this.datagramSocket.bind(new InetSocketAddress(30381));
while (true) {
DatagramPacket request= new DatagramPacket(data, data.length);
this.datagramSocket.receive(request);
clientIP = pedido.getAddress();
clientPort = pedido.getPort();
System.out.println(clientPort);
//write list
DatagramPacket reply= new DatagramPacket(list.getBytes(),list.length(), clientIP, clientPort);
this.datagramSocket.send(reply);
}
对不起,如果这个问题不是很好,我是这个页面的新手。