Метод getByName
Метод getByName класса InetAddress возвращает объект InetAddress, который содержит IP-адрес указанного хоста. В первый параметр мы передаем строку с именем хоста (например, "abcde.com") или его текстовым IP-адресом (например, "192.168.1.1"). Метод выполняет DNS-запрос, если передано доменное имя, и может выбрасывать исключение UnknownHostException, если узел не найден.
Синтаксис
InetAddress.getByName(String host)
Пример
Давайте получим IP-адрес для локального хоста "localhost" и выведем его в консоль:
import java.net.InetAddress;
import java.net.UnknownHostException;
public class Main
{
public static void main(String[] args)
{
try
{
InetAddress address = InetAddress.getByName("localhost");
System.out.println(address.getHostAddress());
}
catch (UnknownHostException e)
{
System.out.println("Host not found");
}
}
}
Результат выполнения кода:
"127.0.0.1"
Пример
Давайте получим объект InetAddress для публичного DNS-сервера и выведем его каноническое имя хоста:
import java.net.InetAddress;
import java.net.UnknownHostException;
public class Main
{
public static void main(String[] args)
{
try
{
InetAddress address = InetAddress.getByName("8.8.8.8");
System.out.println(address.getCanonicalHostName());
}
catch (UnknownHostException e)
{
System.out.println("Host not found");
}
}
}
Результат выполнения кода:
"dns.google"
Смотрите также
-
класс
InetAddress,
который представляет IP-адрес -
метод
getLocalHost,
который возвращает адрес локального хоста -
метод
getHostAddress,
который возвращает IP-адрес в виде строки -
класс
URL,
который представляет унифицированный указатель ресурса