TCP服务器获取当前连接的IP
时间: 2023-08-12 22:55:20 浏览: 81
获取TCP的连接信息
在TCP服务器中,可以通过以下方法获取当前连接的IP:
1. 获取客户端的Socket对象,可以通过accept()方法获得。accept()方法会返回一个Socket对象,表示与客户端建立的连接。
2. 通过Socket对象的getInetAddress()方法获取客户端的InetAddress对象,表示客户端的IP地址。
3. 通过InetAddress对象的getHostAddress()方法获取客户端的IP地址字符串。
下面是一个简单的Java示例代码:
```java
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
public class TCPServer {
public static void main(String[] args) {
try {
// 创建服务器Socket对象,绑定端口
ServerSocket serverSocket = new ServerSocket(8888);
System.out.println("服务器已启动,等待客户端连接...");
// 监听客户端连接
Socket socket = serverSocket.accept();
System.out.println("客户端已连接,IP地址:" + socket.getInetAddress().getHostAddress());
// 处理客户端请求...
// 关闭连接
socket.close();
serverSocket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
请注意,以上代码仅展示了获取单个连接的客户端IP地址的方式。在实际应用中,可能需要使用多线程或异步处理来支持同时处理多个客户端连接。
阅读全文