获取特定主机的IP无法通过Java在网络上工作

时间:2019-03-08 09:35:54

标签: java networking ip-address

我无法通过网络获取主机名的IP。 我可以获得公共IP,但由于缺少协议,似乎无法通过网络工作:

public static void main(String[] args) throws UnknownHostException {

    String url = "host22.my.network";
    getIp(url);
}

public static void getIp(String url) throws UnknownHostException{

    try { 
        InetAddress ip = InetAddress.getByName(new URL(url).getHost()); 
        System.err.println(ip);
    } 
    catch (MalformedURLException e) { 
        System.err.println(e.getMessage());
    }
}

也许缺少协议前缀

1 个答案:

答案 0 :(得分:1)

由于@ejp不再想要真正回答问题,因此他的意思是:

new URL(url).getHost()是错误的。而是使用

InetAddress ip = InetAddress.getByName(url)

由于您实际上没有传递URL,因此将参数重命名为hostname