본문 바로가기
IT/Java

[Java] - 자바에서 InetAddress 클래스를 사용해서 IP주소를 가져오는 방법

by 차이나는 개발자 2023. 1. 15.
728x90
반응형

#자바에서 InetAddress 클래스를 사용해서 IP주소를 가져오는 방법

-Java에서 ip주소를 다루기 위한 클래스로 InetAddress 클래스가 있습니다.

-InetAddress 사용해서 ip 이름, 주소등을 얻을 수 있습니다.

 

 

#InetAddress 실습 예제

-getByName() : 도메인명을 통해서 ip주소를 반환합니다.

-getAllByName() : 도메인명에 지정된 모든 ip주소를 배열에 담아서 반환합니다.

-getHostName() : 호스트의 이름을 반환합니다.

-getHostAddress() : 호스트의 ip주소를 반환합니다.

-getLocalHost() : 로컬호스트의 ip주소를 반환합니다.

-getAddress() : ip주소를 byte배열로 반환합니다.

public class InetAddressEx {
	public static void main(String[] args) {

		InetAddress ip = null;
		InetAddress[] ipArr = null;

		try {

			// 도메인명(host)을 통해서 IP주소를 반환합니다.
			ip = InetAddress.getByName("www.google.com");
			// 호스트의 이름을 반환합니다.
			// www.google.com
			System.out.println(ip.getHostName());
			// 호스트의 IP주소를 반환합니다.
			// 142.250.76.132
			System.out.println(ip.getHostAddress());
			// 호스트의 이름과 IP주소를 반환합니다.
			// www.google.com/142.250.76.132
			System.out.println(ip.toString());

			// IP주소를 byte 배열로 반환합니다.
			byte[] ipAddr = ip.getAddress();
			// [-114, -6, 76, -124]
			System.out.println(Arrays.toString(ipAddr));

		} catch (Exception e) {
			e.printStackTrace();
		}

		try {
			// 로컬 host의 IP주소를 반환합니다.
			ip = InetAddress.getLocalHost();
			// DESKTOP-V07AGN1
			System.out.println(ip.getHostName());
			// 192.168.1.164
			System.out.println(ip.getHostAddress());
			System.out.println();
		} catch (Exception e) {
			e.printStackTrace();
		}

		try {
			// 도메인명(host)에 지정된 모든 호스트의 IP주소를 배열에 담아서 반환합니다.
			ipArr = InetAddress.getAllByName("www.naver.com");

			// ipArr[0] :www.naver.com/223.130.200.104
			// ipArr[1] :www.naver.com/223.130.200.107
			for (int i = 0; i < ipArr.length; i++) {
				System.out.println("ipArr[" + i + "] :" + ipArr[i]);
			}
		} catch (Exception e) {
			e.printStackTrace();
		}

	}
}

 

 

 

728x90
반응형

댓글