|
Foundation 1.1.2 | |||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.net.InetAddress java.net.Inet6Address
public final class Inet6Address
このクラスは、インターネットプロトコル Version 6 (IPv6) アドレスを表します。RFC 2373「IP Version 6 Addressing Architecture」で定義されています。
推奨の形式は x:x:x:x:x:x:x:x です。ここで、「x」は、アドレスを 8 つの 16 ビット部分に分けて 16 進数で表した値です。これは完全な形式です。次に例を示します。
各フィールド内の先頭部分のゼロは記述する必要がない点に注意してください。ただし、次に説明する場合を除いて、各フィールドには少なくとも 1 つの数値が必要です。
1080:0:0:0:8:800:200C:417A
特定スタイルの IPv6 アドレスを割り当てるためのいくつかの方式が原因となり、アドレス内にゼロビットの長い列が含まれることがよくあります。ゼロビットを含むアドレスを記述しやすくするため、ゼロを圧縮する特殊な構文が利用できます。「::」の使用は、ゼロだけから成る 16 ビットのグループが複数存在することを示します。「::」は、1 つのアドレス内で 1 回しか使えません。また、「::」を使えば、アドレス内の先頭のゼロまたは末尾のゼロ、あるいはその両方を圧縮することもできます。次に例を示します。
1080::8:800:200C:417A
IPv4 および IPv6 ノードが混在する環境に対応する場合にさらに便利な代替形式が x:x:x:x:x:x:d.d.d.d です。ここで、x は上位 6 つの 16 ビットアドレスの 16 進数値で、d は下位 4 つの 8 ビット標準 IPv4 表現アドレスの 10 進数値です。次に例を示します。
::FFFF:129.144.52.38 ::129.144.52.38
ここで、「::FFFF:d.d.d.d」と「::d.d.d.d」はそれぞれ、一般的な形式の IPv4 マップ 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」に対応します。
テキスト表現を出力値として返すメソッドでは、完全な形式が使用されます。Inet6Address が完全な形式を返すのは、ほかのテキストデータと組み合わせて使用する場合にも、あいまいにならないからです。
IPv4 マップのアドレス ::ffff:w.x.y.z という形式の IPv6 アドレスは、IPv4 アドレスを表すのに使用されます。このアドレスを利用すると、ネイティブプログラムでは、IPv4 ノードと IPv6 ノードの両方と通信する際に、同じアドレスデータ構造と、さらには同じソケットを使用できます。 InetAddress と Inet6Address では、これは内部の表現に使用され、機能上の役割はありません。Java から IPv4 マップアドレスが返されることはありません。これらのクラスは、バイト配列とテキスト表現の両方で、IPv4 マップアドレスを入力として取ることができます。ただし、そのアドレスは 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 |
メソッドの詳細 |
---|
public boolean isMulticastAddress()
InetAddress
内の isMulticastAddress
boolean
public boolean isAnyLocalAddress()
InetAddress
内の isAnyLocalAddress
boolean
public boolean isLoopbackAddress()
InetAddress
内の isLoopbackAddress
boolean
。ループバックアドレスでない場合は falsepublic boolean isLinkLocalAddress()
InetAddress
内の isLinkLocalAddress
boolean
。アドレスがリンクローカルユニキャストアドレスでない場合は falsepublic boolean isSiteLocalAddress()
InetAddress
内の isSiteLocalAddress
boolean
。アドレスがサイトローカルユニキャストアドレスでない場合は falsepublic boolean isMCGlobal()
InetAddress
内の isMCGlobal
boolean
。それがグローバルスコープのアドレスでないかマルチキャストアドレスでない場合は falsepublic boolean isMCNodeLocal()
InetAddress
内の isMCNodeLocal
boolean
。それがノードローカルスコープのアドレスでないかマルチキャストアドレスでない場合は falsepublic boolean isMCLinkLocal()
InetAddress
内の isMCLinkLocal
boolean
。それがリンクローカルスコープのアドレスでないかマルチキャストアドレスでない場合は falsepublic boolean isMCSiteLocal()
InetAddress
内の isMCSiteLocal
boolean
。それがサイトローカルスコープのアドレスでないかマルチキャストアドレスでない場合は falsepublic boolean isMCOrgLocal()
InetAddress
内の isMCOrgLocal
boolean
。それが組織ローカルスコープのアドレスでないかマルチキャストアドレスでない場合は falsepublic byte[] getAddress()
InetAddress
オブジェクトの生の IP アドレスを返します。その結果はネットワークバイト順序になります。アドレスの最上位順序バイトは getAddress()[0]
内に存在します。
InetAddress
内の getAddress
public String getHostAddress()
InetAddress
内の getHostAddress
public int hashCode()
InetAddress
内の hashCode
Object.equals(java.lang.Object)
,
Hashtable
public boolean equals(Object obj)
null
ではなく、その引数がこのオブジェクトと同じ IP アドレスを表す場合にだけ、結果が true
になります。
getAddress
によって返されるバイト配列の長さが同じであり、バイト配列の各要素が同じである場合、2 つの InetAddress
のインスタンスは同じ IP アドレスを表しています。
InetAddress
内の equals
obj
- 比較対象のオブジェクト
true
、そうでない場合は false
InetAddress.getAddress()
public boolean isIPv4CompatibleAddress()
boolean
。アドレスが IPv4 アドレスである場合は false
|
Foundation 1.1.2 | |||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。