Автор оригинала: Pankaj Kumar.
IP – адрес-это 32-разрядное или 128-разрядное число без знака, используемое IP, протоколом более низкого уровня, на котором построены такие протоколы, как UDP и TCP. В Java класс InetAddress
представляет адрес интернет-протокола (IP).
Здесь мы узнаем, как получить IP-адрес локального хоста и IP-адреса веб-сайта на java с помощью InetAddress.
package com.journaldev.util; import java.net.UnknownHostException; import java.net.InetAddress; public class JavaIPAddress { /** * @param args * @throws UnknownHostException */ public static void main(String[] args) throws UnknownHostException { //print localhost ip address System.out.println(InetAddress.getLocalHost().getHostAddress()); //print website ip address System.out.println(InetAddress.getByName("www.journaldev.com")); //print all ip addresses for a website InetAddress[] inetAddresses = InetAddress.getAllByName("www.google.com"); for(InetAddress inet : inetAddresses){ System.out.println(inet); } } }
Результатом работы вышеуказанной программы является:
192.168.3.1 www.journaldev.com/50.116.65.160 www.google.com/74.125.224.82 www.google.com/74.125.224.81 www.google.com/74.125.224.80 www.google.com/74.125.224.83 www.google.com/74.125.224.84 www.google.com/2001:4860:4001:803:0:0:0:1010
Когда мы используем InetAddress.getByName(строковый хост)
он возвращает текущий IPv4-адрес имени хоста, когда мы используем InetAddress.getAllByName(строковый хост)
он возвращает все IP-адреса, связанные с именем хоста. Последний вывод google.com IP-это IP-адрес в формате IPv6.
Эти методы вызывают исключение UnknownHostException
, если с именем хоста не связаны IP-адреса. Обратите внимание, что мы не должны использовать какой-либо протокол, такой как HTTP, для ввода имени хоста.