자바(Java)/JAVA 2SE

java.net.InetAddress - IP주소

본클라쓰 2009. 1. 23. 13:37

 

 InetAddress 클래스는 IP(Internet Protocol) 주소를 나타내는 클래스이다. IP주소는 IP로 사용되는 32비트 또는 128비트의 부호 없는 수치이다. IP는 UDP나 TCP 등의 프로토콜의 구축 기반이 되는 하위 레벨의 프로토콜이다.

   

 

InetAddress 클래스 생성자

 

static getByName(String host) : InetAddress   throws UnknownHostException

문자열 IP 주소를 가지고 InetAddress 객체 생성

 

static getLocalHost() : InetAddress   throws UnknownHostException

자신의 로컬 컴퓨터의 호스트 주소를 나타내는 InetAddress 객체 생성

 

 

InetAddress 클래스 메소드

 

getCanonicalHostName() : String

IP 주소에 대응하는 완전 수식 도메인명을 반환

 

getHostAddress() : String

텍스트 표현의 IP 주소 문자열을 반환

 

getHostName() : String

IP 주소에 대응하는 호스트명을 반환

 

 

호스트 정보 검색 프로그램

import java.net.InetAddress;
import java.net.UnknownHostException;

import javax.swing.JOptionPane;


public class DetectHost {
 
    private InetAddress address;
    private InetAddress[] arrayAddress;
 
    private String hostValue;
    private StringBuffer stringBuffer = new StringBuffer("[  호스트 정보 검색 결과  ]\n\n");
  
    public DetectHost() {
  
        try {
            hostValue = JOptionPane.showInputDialog("검색할 호스트 값 입력 :");
            address = InetAddress.getByName(hostValue);
            arrayAddress = InetAddress.getAllByName(hostValue);
   
            for(int i = 0; i < arrayAddress.length; i ++ ) {
                stringBuffer.append("DNS :   " + arrayAddress[i].getHostName() +"   /   " );
                stringBuffer.append("IP :   " + arrayAddress[i].getHostAddress() + "\n" );
            }
            stringBuffer.append("PC Name :   " + address.getCanonicalHostName() + "\n" );
   
       
} catch(UnknownHostException e) {
            stringBuffer.append("입력한 주소나 IP 값을 검색할 수 없습니다!\n(Error: 주소값 오류)");
        } finally {
            JOptionPane.showMessageDialog(null, stringBuffer);
        }
  
    }
 
    public static void main(String[] args) {
        new DetectHost();
    }
 
}

 

[ 위 코드의 실행파일 ]

DetectHost.jar

 

DetectHost.jar
0.0MB