Java:显示客户端IP和端口号

标签 java udp

你好,我写了一个小的 UDP 服务器程序。 我知道显示主机 IP 的代码很容易使用以下代码:

System.out.println("Listening Port: " + serverSocket.getLocalPort());
System.out.println("IP: " + myIp.getHostAddress());

有没有办法显示连接到服务器的Client的IP和端口号?

最佳答案

当您收到 UDP DatagramPacket 时,您可以通过 DatagramPacket.getAddress() 检索来自数据包的远程 IP

编辑 如果您希望获得 IP 地址的字符串表示形式,只需使用 DatagramPacket.getAddress().toString()

例子:

DatagramPacket p = new DatagramPacket(buffer, 
buffer.length); 
ds.receive(p);  // Receive data here... 
System.out.println("Received data packet from :"+p.getAddress().toString()); 

关于Java:显示客户端IP和端口号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11370024/

相关文章:

java - 我有一个UDP服务器和客户端,现在如何让它们不断发送/接收?

tcp - 进行 TCP 和 UDP 数据包欺骗和注入(inject)的最佳方法是什么?

java - 保存附件、数据库或本地存储的最佳方式是什么?

C - 从 UDP 套接字缓冲区读取字节 (Linux)

java - 如何将 HttpServletRequest 对象传递给测试用例?

java - 在 AsyncTask 到 MainActivity 的变量中存储并使用 HttpResponse

c++ - 如何区分DTLS数据包和TCP、UDP数据包

c - 如何处理UDP协议(protocol)的多个重传定时器?

Java映射序列

java - Apache JMeter : Add random data in body for request