Java ServerSocket.为什么IP地址为0.0.0.0,但我仍然可以远程连接?

Nul*_*uli 2 java sockets networking

现在,我想远程连接,我只想知道为什么服务器告诉我它没有IP地址.

Server started: ServerSocket[addr=0.0.0.0/0.0.0.0,port=0,localport=13380]
Run Code Online (Sandbox Code Playgroud)

相关代码:

private ServerSocket        serverSocket    = null;
private Thread              thread          = null;
private int                 clientCount     = 0;

/**
 * Constructor
 * 
 */
public ControlListener(int port)
{
    try
    {
        System.out.println("Binding to port " + port + ", please wait  ...");
        this.serverSocket = new ServerSocket(port);
        System.out.println("Server started: " + this.serverSocket);
        start();
    }
    catch (IOException ioe)
    {
        System.out.println("Can not bind to port " + port + ": " + ioe.getMessage());
    }
}
Run Code Online (Sandbox Code Playgroud)

来自链接:http://pirate.shu.edu/~wachsmut/Teaching/CSAS2214/Virtual/Lectures/chat-c​​lient-server.html示例4是我所遵循的

Bri*_*ker 6

绑定到任何地址,这意味着您正在侦听所有接口.您可以接受来自服务器上任何已定义接口的连接,包括localhost和您在多宿主时定义的任何IP地址.

您只能绑定到127.0.0.1并且只接受来自localhost的连接.您可以绑定到特定的IP地址,只接受该接口上的连接.