我将简单的字符串值作为UDP数据从我的电脑发送到另一台电脑(我们都有正确的java环境和正确的代码),反之亦然,但要么我和他都不能收到udp。我的(和他的)端口永远waitng与我们的每个电脑的udp数据循环,当其他方发送我,它不能收到....所有相同的端口..
但是当我发送和接收本地电脑时,没问题......
这里有什么问题?
try {
int port = 7776;
byte[] msg = chattext.getText().getBytes();
// Get the internet address of the specified host
InetAddress address = InetAddress.getByName("124.126.176.80");//my pc`s ip adress
// Initialize a datagram packet with data and address
DatagramPacket packet = new DatagramPacket(msg, msg.length,
address, port);
packet.getPort();
// Create a datagram socket, send the packet through it, close it.
DatagramSocket dsocket = new DatagramSocket();
dsocket.send(packet);
dsocket.close();
} catch (Exception e) {
e.printStackTrace();
}
答案 0 :(得分:1)
好的,这几乎是猜测,但是......
问题可能在接收方。您正在侦听localhost而不是接口的IP地址或通配符IP地址,因此您不会收到来自外部世界的任何数据包。