从java http服务器获取全局IP地址

时间:2014-01-26 14:43:14

标签: java httpserver

我使用以下代码启动本地http服务器:

    HttpServer server = HttpServer.create(new InetSocketAddress(8000), 0);
    server.createContext("/intro", new MyHandler());
    server.setExecutor(null);
    server.start();

现在我想从其他服务器点击网址/intro。问题是我不知道ip地址要点击。要server.getAddress()0.0.0.0:8000。我想要找到全局IP地址。

2 个答案:

答案 0 :(得分:0)

您必须知道什么是您的IP(cmd和ipconfig)并获取IPv4地址。但请记住,只有本地网络中可见的本地IP,因此只有同一网络中的用户才能看到它。在全球网络中,您可以通过互联网提供商IP识别。

答案 1 :(得分:0)

  

InetSocketAddress(int port)

创建一个套接字地址,其中IP地址是通配符地址,端口号是指定值。

  

InetSocketAddress(InetAddress addr,int port)

根据IP地址和端口号创建套接字地址。

  

通配符是一个特殊的本地IP地址。它通常表示“任意”,只能用于绑定操作。此IP地址的值为0.0.0.0。

所以当你可以放置主机名

时,请使用InetSocketAddress的另一个构造函数
  

new InetSocketAddress(String hostname,int port)调用InetAddress.getByName(hostname)。

现在,当您查询server.getAddress()

时,您将获得本地IP地址