这听起来像是以前应该问过的问题,但我希望获得机器的本地主机名和IP地址,即使它无法通过DNS (在Java中)解析。
我可以通过迭代NetworkInterfaces.getNetworkInterfaces()获得本地IP地址,而不需要解析。
我发现的对这个问题的任何回答都表明使用getLocalHost()
InetAddress localhost = java.net.InetAddress.getLocalHost();
hostName = localhost.getHostName();但是,如果主机名无法通过DNS解析,则会引发UnknownHostException。
如果没有在幕后进行DNS查找,就无法获得本地主机名吗?
编辑:检索到的IP地址为10.4.168.23,例外是java.net.UnknownHostException: cms1.companyname.com: cms1.companyname.com (主机名更改为伪匿名),主机文件不包含主机名。但是它知道它的主机名,所以我不知道为什么没有异常抛出就不能得到它。
https://stackoverflow.com/questions/6050011
复制相似问题