¼Ò¼³°°Àº ÀÚ¹Ù 4ºÎ  Á¦16Àå ³×Æ®¿÷ÀÇ ±âº»  16.2 InetAddress Ŭ·¡½º  

 

16.2 InetAddress Ŭ·¡½º

 

InetAddress Ŭ·¡½º´Â Internet Protocol(IP) address¸¦ Ç¥ÇöÇϱâ À§ÇÑ Å¬·¡½ºÀÔ´Ï´Ù. ¸ÕÀú ÀÌ Å¬·¡½ºÀÇ ÁÖ¿ä ¸Þ¼­µå¸¦ »ìÆìº¸µµ·Ï ÇÏÁÒ.

 

n         public String getHostAddress()

n         public static InetAddress getLocalHost()

n         public static InetAddress getByName(String host)

n         public static InetAddress [] getAllByName(String host)

n         public byte [] getAddress() µîµî..

 

 ´ëÃæ º¸´Ï IP¿Í Domain Name¿¡ °ü·ÃµÈ ¸Þ¼­µåµéÀÔ´Ï´Ù. Ŭ·¡½º¶ó´Â ´À³¦Àº ¿©·¯ °¡ÁöÀÇ ´À³¦À¸·Î »ý°¢ÇØ º¼ ¼ö ÀÖ½À´Ï´Ù. °¡·É, StringŬ·¡½º´Â ¸îÀÚÀÇ ±ÛÀ» ³Ö¾îÁÖ¸é ±× ±Û·Î ¹º°¡¸¦ ÇÒ ¼ö ÀÖ´Â ¸Þ¼­µåµéÀ» Á¦°øÇÕ´Ï´Ù. ÀÌ ¸»Àº ÀÌ·± °ÅÁÒ! ÇÙ½ÉÀº ±ÛÀÌ°í ´É·ÂÀº ¸Þ¼­µåµé¿¡°Ô ÀÖ´Â °ÍÀÔ´Ï´Ù. ´Ù½Ã ¸»ÇÏ¸é ¸â¹öÇʵå·Î »ç¿ëÇÒ ¼ö ÀÖ´Â °ÍÀº ±Û ÀÚüÀÌ¸ç ±× ±ÛÀ» ¾î¶»°Ô ÇÏ·Á´Â °ÍÀº ¸Þ¼­µå¿¡ ÇØ´çÇÑ´Ù´Â ¸»ÀÔ´Ï´Ù. ÀÌ¿Í °°Àº ¸Æ¶ô¿¡¼­ º»´Ù¸é Host NameÀ» ³Ö¾î ÁÖ¸é ±×°ÍÀ¸·Î ¹º°¡¸¦ ÇÒ ¼ö ÀÖ´Â ¸Þ¼­µå¸¦ Á¦°øÇϴ Ŭ·¡½º°¡ ¹Ù·Î InetAddressŬ·¡½ºÀÔ´Ï´Ù.

 

 ¸¸¾à, ¿©·¯ºÐÀÌ À̰ÍÀ» Á÷Á¢ ¸¸µç´Ù°í °¡Á¤ÇØ º¸½Ê½Ã¿À. º¹ÀâÇÑ ³×Æ®¿÷ÀÇ Áö½Ä°ú Á¤º¸¸¦ ¾Ë°í ÀÖ¾î¾ß Çϸç, ½ÉÁö¾î´Â Çϵå¿þ¾î±îÁö ¾Ë¾Æ¾ß µÇ´Â »óȲÀÌ ¹ß»ýÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ Ãø¸éÀ» º¸¿ÏÇϰڴٴ ¾ð¾î°¡ C++¾ð¾îÀ̰í, ÀÌ C++ÀÇ º¹À⼺À» ´Ü¼øÈ­½ÃŰ°í ¸¹Àº ¶óÀ̺귯¸®¿Í Àç»ç¿ë¼ºÀ» Á¦°øÇÏ´Â ¾ð¾î°¡ ¹Ù·Î ÀÚ¹Ù¾ð¾î ¾Æ´Ï°Ú½À´Ï±î?

 

Çٽɿ¡¼­ ¸¹ÀÌ ¹þ¾î³µ±º¿ä. ¿©ÇÏÆ°, InetAddressŬ·¡½º´Â Host NameÀÚü¸¦ ÇÚµéÇϰí Address¿¡ °ü·ÃµÇ¾î ÀÖ´Â ±â´ÉÀ» ºÎ¿©ÇÑ Å¬·¡½ºÀÔ´Ï´Ù. ±×·³ InetAddressŬ·¡½ºÀÇ °´Ã¼¸¦ »ý¼ºÇÏ°í »ç¿ëÇÏ´Â ±âº»ÀûÀÎ ¹æ¹ýÀ» ´ÙÀ½ ¿¹¿¡¼­ ¾Ë¾Æº¸ÁÒ.

 

InetAddressTest.java(InetAddress ÀÌ¿ë¹æ¹ýÀ» À§ÇÑ ¿¹Á¦)

import java.net.*;

public class InetAddressTest{       

   public static void main(String[] args) {

   InetAddress myIp = null;

       try {

          myIp = InetAddress.getByName("www.jabook.org");

          System.out.println("getHostName : " + myIp.getHostName());

          System.out.println("getHostAddress : " + myIp.getHostAddress());

          System.out.println("toString : " + myIp.toString());

          System.out.println("getLocalHost : " + myIp.getLocalHost());

       }catch(UnknownHostException e) {System.out.println(e);}

   }

}

C:\JavaExample\16>javac InetAddressTest.java

C:\JavaExample\16>java InetAddressTest

getHostName : www.jabook.org

getHostAddress : 203.252.134.117

toString : www.jabook.org/203.252.134.117

getLocalHost : ja/210.221.120.117

 

 ¸ÕÀú InetAddressÀÇ static ¸â¹ö¸Þ¼­µåÀÎ getByName()¸Þ¼­µå¸¦ ÀÌ¿ëÇÏ¿© InetAddress°´Ã¼¸¦ ¾ò¾î ³À´Ï´Ù. ÀÌ ¶§ ¸Å°³º¯¼ö´Â È£½ºÆ® À̸§À» »ç¿ëÇÕ´Ï´Ù.

 

n        InetAddress  myIp = InetAddress.getByName("www.jabook.org");

 

»ý¼ºµÈ InetAddressŬ·¡½ºÀÇ °´Ã¼ myIp¸¦ ÀÌ¿ëÇØ¼­ ÇÒ ¼ö ÀÖ´Â ÀÛ¾÷Àº ¹°·Ð InetAddressÀÇ ¸â¹ö¸Þ¼­µå¸¦ ÀÌ¿ëÇÏ´Â °ÍÀÔ´Ï´Ù. ±×·³ ¸â¹ö¸Þ¼­µå¸¦ Çϳª¾¿ º¼±î¿ä.

 

n        myIp.getHostName(): www.jabook.orgÀÇ È£½ºÆ®À̸§À» StringÀ¸·Î ¸®ÅÏ ÇÕ´Ï´Ù.

n        myIp.getHostAddress(): www.jabook.orgÀÇ IP Address¸¦ StringÀ¸·Î ¸®ÅÏ ÇÕ´Ï´Ù.

n        myIp.toString(): myIp ÀÚü¸¦ StringÀ¸·Î ¹ÝȯÇÕ´Ï´Ù.

n        myIp.getLocalHost(): local hostÀÇ InetAddress¸¦ ¹ÝȯÇÕ´Ï´Ù.

 

InetAddressŬ·¡½ºÀÇ ÁÖ¿ä ¸â¹ö¸Þ¼­µå

public byte[] getAddress() : InetAddress °´Ã¼ÀÇ ¿ø·¡ÀÇ IP ÁÖ¼Ò¸¦ ¸®ÅÏ ÇÑ´Ù. °á°ú´Â ³×Æ®¿öÅ© ¹ÙÀÌÆ® ¼øÀÌ´Ù. ÁÖ¼ÒÀÇ ÃÖ»óÀ§ ¼ø¼­ ¹ÙÀÌÆ®´Â getAddress()[0]¿¡ ÀÖ´Ù

public static InetAddress getByName(String host) hrows UnknownHostException : È£½ºÆ® ¸íÀÌ ÁöÁ¤µÈ È£½ºÆ®ÀÇ IP ÁÖ¼Ò¸¦ °áÁ¤ÇÑ´Ù. È£½ºÆ® ¸íÀº "java.sun.com"°ú °°Àº ±â°è À̸§À̰ųª "206.26.48.100"°ú °°Àº IP ÁÖ¼Ò¸¦ ³ªÅ¸³»´Â ¹®ÀÚ¿­ÀÏ ¼ö ÀÖ´Ù.

public static InetAddress[] getAllByName(String host) throws UnknownHostException : È£½ºÆ® ¸íÀÌ ÁöÁ¤µÈ È£½ºÆ®ÀÇ ¸ðµç IP ÁÖ¼Ò¸¦ °áÁ¤ÇÑ´Ù.

public String getHostAddress() : IP ÁÖ¼Ò ¹®ÀÚ¿­ "%d.%d.%d.%d"À¸·Î ¸®ÅÏ ÇÑ´Ù.

public String getHostName() : ÁÖ¼Ò¿¡ ´ëÇÑ ¿ÏÀüÇÑ È£½ºÆ® ¸íÀ» ¸®ÅÏ ÇÑ´Ù.

public static InetAddress getLocalHost() throws UnknownHostException : LocalHost¸¦ ¸®ÅÏ ÇÑ´Ù.

public String toString() : IP ÁÖ¼Ò¸¦ StringÀ¸·Î º¯È¯ ÇÑ´Ù.

 

 ÀÌ¿Í °°ÀÌ InetAddressŬ·¡½º´Â È£½ºÆ®À̸§°ú IP Address¿¡ °ü·ÃµÈ ÀÛ¾÷À» ´ëÇà ÇØÁִ Ŭ·¡½ºÀÔ´Ï´Ù. °á·ÐÀûÀ¸·Î, ÀÌ Å¬·¡½º´Â 4°³ÀÇ ¼ö¸¦ Á¶ÇÕÇÏ¿© ÇϳªÀÇ ÁÖ¼Ò·Î ¸¸µé±â À§ÇÑ ÀÛ¾÷À» µµ¿ï ¼ö ÀÖ°Ô µµ¿ÍÁִ Ŭ·¡½ºÀÔ´Ï´Ù. ¸¸¾à ÀÌ Å¬·¡½º°¡ ¾ø´Ù°í °¡Á¤ÇÑ´Ù¸é ¿ì¸®´Â ¡°211.222.232.12¡±¶ó´Â IP Address¸¦ ÇϳªÇϳª ParsingÇÏ¿©¾ß ÇÕ´Ï´Ù. ¶Ç ÀÌ°É Domain NameÀ¸·Î ¹Ù²Ù·Á°í ÇÑ´Ù¸é º¸´Ù ³­À̵µ ÀÖ´Â ³×Æ®¿öÅ©ÀÇ ±â¹ýÀ» »ç¿ëÇÏ¿©¾ß ÇÒ °ÍÀÔ´Ï´Ù.

 

¢Ñ InetAddress

Ŭ·¡½º

Internet Protocol(IP) Address¸¦ Ç¥ÇöÇϱâ À§ÇÑ Å¬·¡½º·Î IP AddressÀÇ Á¤º¸³ª Domain NameÀÇ Á¤º¸¸¦ ÃßÃâÇÒ ¼ö ÀÖ´Ù.



jabookÀúÀÚ¸íÇÔ
Á¦¸ñ:¼Ò¼³°°ÀºÀÚ¹Ù4ºÎ
ÀúÀÚ:ÃÖ¿µ°ü