JavaTM 2
Platform
Std.  Ed.  v1. 4.0

java.net
클래스 Inet6Address

java.lang.Object 
  |
  +--java.net.InetAddress 
        |
        +--java.net.Inet6Address
모든 구현 인터페이스:
Serializable

public final class Inet6Address
extends InetAddress

이 클래스는 Internet Protocol 버젼 6 (IPv6) 주소를 나타냅니다. 정의에 대해서는 「RFC 2373: IP Version 6 Addressing Architecture」을 참조해 주세요.

IP 주소의 텍스트 표현

메소드의 입력으로서 사용되는 Ipv6 주소의 텍스트 표현은 다음의 몇개의 형식이 됩니다.
  1. 추천 되는 형식은 x:x:x:x:x:x:x:x 입니다. 여기서, x 는 8 개의 16 비트 주소의 16 진수치입니다. 이것이 완전한 형식입니다. 예를 들어,

    1080:0:0:0:8:800:200C:417A
    와 같이 됩니다.

    개개의 필드의 제로 내장하기는 필요 없습니다. 다만, 다음에 설명하는 경우를 제외해, 각 필드에는 적어도 1 개의 수치가 필요합니다.

  2. 특정의 스타일의 IPv6 주소를 할당하는 일부의 메소드를 위해서(때문에), 0 비트의 긴 캐릭터 라인을 포함한 주소가 일반적입니다. 0 비트를 포함한 주소의 기입을 간단하게 하기 위해서, 특별한 구문을 사용해 0 을 압축할 수 있습니다. 「::」의 사용은 복수의 그룹의 16 비트의 0 을 나타냅니다. 「::」은 주소내에 1 번만 사용할 수 있습니다. 또, 「::」을 사용해, 주소내의 선두 또는 말미의 0 을 압축할 수도 있습니다. 예를 들어,

    1080::8:800:200C:417A
    와 같이 됩니다.
  3. IPv4 및 IPv6 노드가 혼재하는 환경에 대응하는 경우에 한층 더 편리한 대체 형식이 x:x:x:x:x:x:d.d.d.d 입니다. 여기서, x 는 상위 6 개의 16 비트 주소의 16 진수치로, d 는 하위 4 개의 8 비트 표준 IPv4 표현 주소의 십진수치입니다. 예를 들어,

    ::FFFF:129. 144.52. 38
    ::129. 144.52. 38
    과 같이 됩니다.

    여기서, 「::FFFF:d.d.d.d」 및 「::d.d.d.d」는 각각 IPv4 MAP의 IPv6 주소 및 IPv4 호환의 IPv6 주소의 일반적인 형식입니다. IPv4 의 부분은 「d.d.d.d」의 형식내에 없으면 안됩니다.

    ::FFFF:d.d.d
    ::FFFF:d.d
    ::d.d.d
    ::d.d
    의 형식은 무효입니다.

    ::FFFF:d
    의 형식은

    유효합니다. 다만, 이것은 IPv4 호환의 IPv6 주소

    ::255. 255.0.d
    의 규칙에 따르지 않은 표현입니다.

    여기서, 「::d」는 일반적인 IPv6 주소 「0:0:0:0:0:0:0:d」에 대응합니다.

텍스트 표현을 출력치로서 돌려주는 메소드의 경우는 완전한 형식이 사용됩니다. Inet6Addres 는 다른 텍스트 데이터와 조합해 사용하면(자) 명확해서, 완전한 형식을 돌려줍니다.

특수한 IPv6 주소

IPv4 MAP의 주소 ::ffff:w.x.y.z 라고 하는 형식의 IPv6 주소는 IPv4 주소를 나타내는데 사용됩니다. 이 주소에 의해, IPv4 와 IPv6 의 양쪽 모두의 노드와 통신할 경우에, 네이티브 프로그램은 같은 주소 데이터 구조를 사용할 수가 있어 같은 소켓을 사용할 수도 있습니다.

InetAddress 와 Inet6Address 에서는 이 주소는 내부 표현에 사용되어 기능상의 역할은 없습니다. Java 는 IPv4 MAP의 주소를 돌려주지 않습니다. 이러한 클래스는 IPv4 MAP의 주소를 바이트 배열과 텍스트 표현의 양쪽 모두로 입력으로서 사용할 수 있습니다. 다만, IPv4 MAP의 주소는 IPv4 주소에 변환됩니다.

관련 항목:
직렬화 된 형식

메소드의 개요
 boolean equals (Object  obj)
          이 오브젝트와 지정된 오브젝트를 비교합니다.
 byte[] getAddress ()
          이 InetAddress 오브젝트의 IP 주소를 그대로 돌려줍니다.
 String getHostAddress ()
          텍스트 표현의 IP 주소 캐릭터 라인을 돌려줍니다.
 int hashCode ()
          이 IP 주소의 해시 코드를 돌려줍니다.
 boolean isAnyLocalAddress ()
          InetAddress 가 와일드 카드 주소인가 어떤가를 조사하는 유틸리티루틴입니다.
 boolean isIPv4CompatibleAddress ()
          InetAddress 가 IPv4 호환의 IPv6 주소인가 어떤가를 조사하는 유틸리티루틴입니다.
 boolean isLinkLocalAddress ()
          InetAddress 가 링크 로컬 주소인가 어떤가를 조사하는 유틸리티루틴입니다.
 boolean isLoopbackAddress ()
          InetAddress 가 루프백 주소인가 어떤가를 조사하는 유틸리티루틴입니다.
 boolean isMCGlobal ()
          멀티 캐스트 주소에 글로벌 스코프가 있을지 어떨지를 조사하는 유틸리티루틴입니다
 boolean isMCLinkLocal ()
          멀티 캐스트 주소에 린크스코프가 있을지 어떨지를 조사하는 유틸리티루틴입니다
 boolean isMCNodeLocal ()
          멀티 캐스트 주소에 노드 스코프가 있을지 어떨지를 조사하는 유틸리티루틴입니다
 boolean isMCOrgLocal ()
          멀티 캐스트 주소에 조직 스코프가 있을지 어떨지를 조사하는 유틸리티루틴입니다
 boolean isMCSiteLocal ()
          멀티 캐스트 주소에 사이트 스코프가 있을지 어떨지를 조사하는 유틸리티루틴입니다
 boolean isMulticastAddress ()
          InetAddress 가 IP 멀티 캐스트 주소인가 어떤가를 조사하는 유틸리티루틴입니다.
 boolean isSiteLocalAddress ()
          InetAddress 가 사이트 로컬 주소인가 어떤가를 조사하는 유틸리티루틴입니다.
 
클래스 java.net. InetAddress 에서 상속받은 메소드
getAllByName , getByAddress , getByAddress , getByName , getCanonicalHostName , getHostName , getLocalHost , toString
 
클래스 java.lang. Object 에서 상속받은 메소드
clone , finalize , getClass , notify , notifyAll , wait , wait , wait
 

메소드의 상세

isMulticastAddress

public boolean isMulticastAddress()
InetAddress 가 IP 멀티 캐스트 주소인가 어떤가를 조사하는 유틸리티루틴입니다. 주소 개시점의 11111111 에 의해, 주소가 멀티 캐스트 주소인 것이 식별됩니다.

오버라이드(override):
클래스 InetAddress 내의 isMulticastAddress
반환값:
InetAddress 가 IP 멀티 캐스트 주소인가 어떤가를 나타내는 boolean
도입된 버젼:
JDK1. 1

isAnyLocalAddress

public boolean isAnyLocalAddress()
InetAddress 가 와일드 카드 주소인가 어떤가를 조사하는 유틸리티루틴입니다.

오버라이드(override):
클래스 InetAddress 내의 isAnyLocalAddress
반환값:
InetAddress 가 와일드 카드 주소인가 어떤가를 나타내는 boolean
도입된 버젼:
1.4

isLoopbackAddress

public boolean isLoopbackAddress()
InetAddress 가 루프백 주소인가 어떤가를 조사하는 유틸리티루틴입니다.

오버라이드(override):
클래스 InetAddress 내의 isLoopbackAddress
반환값:
InetAddress 가 루프백 주소인가 어떤가를 나타내는 boolean. 루프백 주소가 아닌 경우는 false
도입된 버젼:
1.4

isLinkLocalAddress

public boolean isLinkLocalAddress()
InetAddress 가 링크 로컬 주소인가 어떤가를 조사하는 유틸리티루틴입니다.

오버라이드(override):
클래스 InetAddress 내의 isLinkLocalAddress
반환값:
InetAddress 가 링크 로컬 주소인가 어떤가를 나타내는 boolean. 주소가 링크 로컬 uni-cast 주소가 아닌 경우는 false
도입된 버젼:
1.4

isSiteLocalAddress

public boolean isSiteLocalAddress()
InetAddress 가 사이트 로컬 주소인가 어떤가를 조사하는 유틸리티루틴입니다.

오버라이드(override):
클래스 InetAddress 내의 isSiteLocalAddress
반환값:
InetAddress 가 사이트 로컬 주소인가 어떤가를 나타내는 boolean. 주소가 사이트 로컬 uni-cast 주소가 아닌 경우는 false
도입된 버젼:
1.4

isMCGlobal

public boolean isMCGlobal()
멀티 캐스트 주소에 글로벌 스코프가 있을지 어떨지를 조사하는 유틸리티루틴입니다

오버라이드(override):
클래스 InetAddress 내의 isMCGlobal
반환값:
주소가 글로벌 스코프의 멀티 캐스트 주소일지 어떨지를 나타내는 boolean. 주소가 글로벌 스코프가 아닌 경우, 혹은 멀티 캐스트 주소가 아닌 경우는 false
도입된 버젼:
1.4

isMCNodeLocal

public boolean isMCNodeLocal()
멀티 캐스트 주소에 노드 스코프가 있을지 어떨지를 조사하는 유틸리티루틴입니다

오버라이드(override):
클래스 InetAddress 내의 isMCNodeLocal
반환값:
주소가 노드 로컬 스코프의 멀티 캐스트 주소일지 어떨지를 나타내는 boolean. 주소가 노드 로컬 스코프가 아닌 경우, 혹은 멀티 캐스트 주소가 아닌 경우는 false
도입된 버젼:
1.4

isMCLinkLocal

public boolean isMCLinkLocal()
멀티 캐스트 주소에 린크스코프가 있을지 어떨지를 조사하는 유틸리티루틴입니다

오버라이드(override):
클래스 InetAddress 내의 isMCLinkLocal
반환값:
주소가 링크 로컬 스코프의 멀티 캐스트 주소일지 어떨지를 나타내는 boolean. 주소가 링크 로컬 스코프가 아닌 경우, 혹은 멀티 캐스트 주소가 아닌 경우는 false
도입된 버젼:
1.4

isMCSiteLocal

public boolean isMCSiteLocal()
멀티 캐스트 주소에 사이트 스코프가 있을지 어떨지를 조사하는 유틸리티루틴입니다

오버라이드(override):
클래스 InetAddress 내의 isMCSiteLocal
반환값:
주소가 사이트 로컬 스코프의 멀티 캐스트 주소일지 어떨지를 나타내는 boolean. 주소가 사이트 로컬 스코프가 아닌 경우, 혹은 멀티 캐스트 주소가 아닌 경우는 false
도입된 버젼:
1.4

isMCOrgLocal

public boolean isMCOrgLocal()
멀티 캐스트 주소에 조직 스코프가 있을지 어떨지를 조사하는 유틸리티루틴입니다

오버라이드(override):
클래스 InetAddress 내의 isMCOrgLocal
반환값:
주소가 조직 로컬 스코프의 멀티 캐스트 주소일지 어떨지를 나타내는 boolean. 주소가 조직 로컬 스코프가 아닌 경우, 혹은 멀티 캐스트 주소가 아닌 경우는 false
도입된 버젼:
1.4

getAddress

public byte[] getAddress()
InetAddress 오브젝트의 IP 주소를 그대로 돌려줍니다. 결과는 네트워크 바이트 순서에 따라 돌려주어집니다. 주소의 최상정도 바이트가 getAddress()[0] 이 됩니다.

오버라이드(override):
클래스 InetAddress 내의 getAddress
반환값:
이 오브젝트의 IP 주소

getHostAddress

public String  getHostAddress()
텍스트 표현의 IP 주소 캐릭터 라인을 돌려줍니다.

오버라이드(override):
클래스 InetAddress 내의 getHostAddress
반환값:
IP 주소의 캐릭터 라인 형식

hashCode

public int hashCode()
이 IP 주소의 해시 코드를 돌려줍니다.

오버라이드(override):
클래스 InetAddress 내의 hashCode
반환값:
이 IP 주소의 해시 코드치

equals

public boolean equals(Object  obj)
이 오브젝트와 지정된 오브젝트를 비교합니다. 인수가 null 는 아니고, 이 오브젝트와 같은 IP 주소를 나타내는 오브젝트의 경우에만, 결과가 true 가 됩니다.

getAddress 에 의해 돌려주어지는 바이트 배열의 길이가 같고, 바이트 배열의 각 요소가 같은 경우, 2 개의 InetAddress 의 인스턴스는 같은 IP 주소를 나타내고 있습니다.

오버라이드(override):
클래스 InetAddress 내의 equals
파라미터:
obj - 비교 대상의 오브젝트
반환값:
오브젝트가 같은 경우는 true, 그렇지 않은 경우는 false
관련 항목:
InetAddress.getAddress()

isIPv4CompatibleAddress

public boolean isIPv4CompatibleAddress()
InetAddress 가 IPv4 호환의 IPv6 주소인가 어떤가를 조사하는 유틸리티루틴입니다.

반환값:
InetAddress 가 IPv4 호환의 IPv6 주소일지 어떨지를 나타내는 boolean. 주소가 IPv4 주소의 경우는 false
도입된 버젼:
1.4

JavaTM 2
Platform
Std.  Ed.  v1. 4.0

버그의 보고와 기능의 리퀘스트
이외의 API 레퍼런스 및 개발자용 문서에 대해서는 Java 2 SDK SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Java, Java 2 D, 및 JDBC 는 미국 및 그 외의 나라에 있어서의 미국 Sun Microsystems, Inc. 의 상표 혹은 등록상표입니다.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.