gpt4 book ai didi

java - 远程客户端收不到 UDP 数据包

转载 作者:行者123 更新时间:2023-11-29 08:59:25 26 4
gpt4 key购买 nike

我有一个简单的 UDP 服务器/客户端程序,我转发了我的端口,服务器通过互联网接收和发送数据包,但是远程机器上的客户端无法接收它们,所以我想知道如何在客户端不转发端口的情况下接收数据包(如果可能的话)?如果不可能,我应该怎么做才能让客户端通过互联网接收 UDP 数据包?

客户端接收线程如下所示:

public void run(){
DatagramSocket serverSocket = null;
while(true){
try {
serverSocket = new DatagramSocket(7000+clientNumber+100);
} catch (SocketException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
byte[] receiveData = new byte[1024];
DatagramPacket receiveX = new DatagramPacket(receiveData, receiveData.length);
try {
serverSocket.receive(receiveX);
} catch (IOException e) {
System.out.println("Nepagavau paketo");
}
String korX = new String( receiveX.getData());
Play.priesoX = Float.parseFloat(korX);
serverSocket.close();

}

最佳答案

您不需要为客户端做端口转发,NAT 会自动处理。 http://en.wikipedia.org/wiki/Network_address_translation由于各种原因(防火墙等),您的客户端可能无法访问。

关于java - 远程客户端收不到 UDP 数据包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18451099/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com