Как мне получить локальное имя хоста, если оно не разрешается через DNS в Java?

Это звучит как то, о чем следовало спросить раньше, и это вроде как есть, но я хочу получить локальное имя хоста и IP-адреса машины, даже если они не разрешаются через DNS (в Java).

I может получить локальные IP-адреса без разрешения путем итерации через NetworkInterfaces. getNetworkInterfaces () .

Любые ответы на этот вопрос, которые я нашел, указывают на использование getLocalHost ()

InetAddress localhost = java.net.InetAddress.getLocalHost();
hostName = localhost.getHostName();

, но это вызывает исключение UnknownHostException , если имя хоста не разрешается через DNS.

Невозможно получить имя локального хоста без скрытого поиска DNS?

редактировать: получен IP-адрес 10.4.168.23 Исключением является java.net.UnknownHostException: cms1.companyname.com: cms1.companyname.com (имя хоста изменено на псевдоанонимность), а файл hosts не содержит имени хоста. Но он знает свое имя хоста, поэтому я не уверен, почему я не могу его получить без генерации исключения.

15
задан Shawn D. 18 May 2011 в 20:17
поделиться