Java 查找试图连接到ServerSocket的程序的IP

Java 查找试图连接到ServerSocket的程序的IP,java,sockets,client,ip,inetaddress,Java,Sockets,Client,Ip,Inetaddress,虽然我搜索了一下,但还是找不到答案 假设我有以下Java代码: ServerSocket serve = null; try { server = new ServerSocket(5567); } catch (IOException e) { System.err.println("Problem with port 5567"); System.exit(1); } Socket clientSoc

虽然我搜索了一下,但还是找不到答案

假设我有以下Java代码:

    ServerSocket serve = null;

    try {
        server = new ServerSocket(5567);
    } catch (IOException e) {
        System.err.println("Problem with port 5567");
        System.exit(1);
    }

    Socket clientSocket = null;
    try {
        clientSocket = server.accept();
    } catch (IOException e) {
        System.exit(1);
    }
调用
server.accept()
时,程序将阻塞,直到有人连接到我的服务器。有没有办法找到连接到我的服务器的程序/用户的IP?

试试看

Socket clientSocket = null;
    try {
        clientSocket = server.accept();
        System.out.println("Connected from " + clientSocket .getInetAddress() + " on port "
             + clientSocket .getPort() + " to port " + clientSocket .getLocalPort() + " of "
             + clientSocket .getLocalAddress());
    } catch (IOException e) {
        System.exit(1);
    }

这似乎是背道而驰。“发件人”ip:端口由getInetAddress():getPort()提供。本地ip:port由getLocalAddress()提供:getLocalPort()。