JavaTM Platform
Standard Ed. 6

java.net
クラス NetworkInterface

java.lang.Object
  上位を拡張 java.net.NetworkInterface

public final class NetworkInterface
extends Object

このクラスは、名前と、このインタフェースに割り当てられた一連の IP アドレスから成るネットワークインタフェースを表します。これは、マルチキャストグループへの参加に使用するローカルインタフェースを特定するのに使用されます。 インタフェースは通常、「le0」などの名前で識別されます。

導入されたバージョン:
1.4

メソッドの概要
 boolean equals(Object obj)
          オブジェクトと指定されたオブジェクトを比較します。
static NetworkInterface getByInetAddress(InetAddress addr)
          指定された インターネットプロトコル (IP) アドレスがバインドされているネットワークインタフェースを検索する簡易メソッド。
static NetworkInterface getByName(String name)
          指定された名前のネットワークインタフェースを検索します。
 String getDisplayName()
          このネットワークインタフェースの表示名を取得します。
 byte[] getHardwareAddress()
          インタフェースがハードウェアアドレス (通常は MAC) を持っており、そのアドレスに現在の特権を使ってアクセス可能である場合に、そのアドレスを返します。
 Enumeration<InetAddress> getInetAddresses()
          このネットワークインタフェースにバインドされた InetAddresses のすべてまたはサブセットの列挙を返す便利なメソッドです。
 List<InterfaceAddress> getInterfaceAddresses()
          このネットワークインタフェースの InterfaceAddress のすべてまたはサブセットのリストを取得します。
 int getMTU()
          このインタフェースの最大転送単位 (MTU) を返します。
 String getName()
          このネットワークインタフェースの名前を取得します。
static Enumeration<NetworkInterface> getNetworkInterfaces()
          このマシン上のすべてのインタフェースを返します。
 NetworkInterface getParent()
          このインタフェースがサブインタフェースの場合はその親となる NetworkInterface を返し、このインタフェースが物理 (非仮想) インタフェースであるか親を持たない場合は null を返します。
 Enumeration<NetworkInterface> getSubInterfaces()
          このネットワークインタフェースに接続されたすべてのサブインタフェース (仮想インタフェースとも呼ばれる) を含む列挙を取得します。
 int hashCode()
          オブジェクトのハッシュコード値を返します。
 boolean isLoopback()
          ネットワークインタフェースがループバックインタフェースかどうかを返します。
 boolean isPointToPoint()
          ネットワークインタフェースがポイントツーポイントインタフェースかどうかを返します。
 boolean isUp()
          ネットワークインタフェースが起動し、動作しているかどうかを返します。
 boolean isVirtual()
          このインタフェースが仮想インタフェース (サブインタフェースとも呼ばれる) かどうかを返します。
 boolean supportsMulticast()
          ネットワークインタフェースがマルチキャストをサポートしているかどうかを返します。
 String toString()
          オブジェクトの文字列表現を返します。
 
クラス java.lang.Object から継承されたメソッド
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

メソッドの詳細

getName

public String getName()
このネットワークインタフェースの名前を取得します。

戻り値:
このネットワークインタフェースの名前

getInetAddresses

public Enumeration<InetAddress> getInetAddresses()
このネットワークインタフェースにバインドされた InetAddresses のすべてまたはサブセットの列挙を返す便利なメソッドです。

セキュリティーマネージャーが存在する場合、InetAddress ごとにその checkConnect メソッドが呼び出されます。checkConnect が SecurityException をスローしない InetAddress だけが、列挙内に返されます。

戻り値:
このネットワークインタフェースにバインドされた InetAddresses のすべてまたはサブセットの列挙オブジェクト

getInterfaceAddresses

public List<InterfaceAddress> getInterfaceAddresses()
このネットワークインタフェースの InterfaceAddress のすべてまたはサブセットのリストを取得します。

セキュリティーマネージャーが存在する場合、InetAddress ごとにその checkConnect メソッドが InetAddress を指定して呼び出されます。checkConnect が SecurityException をスローしない InterfaceAddress だけが、リスト内に返されます。

戻り値:
このネットワークインタフェースの InterfaceAddress のすべてまたはサブセットのリストオブジェクト
導入されたバージョン:
1.6

getSubInterfaces

public Enumeration<NetworkInterface> getSubInterfaces()
このネットワークインタフェースに接続されたすべてのサブインタフェース (仮想インタフェースとも呼ばれる) を含む列挙を取得します。

たとえば、eth0:1 は eth0 のサブインタフェースです。

戻り値:
このネットワークインタフェースのすべてのサブインタフェースを含む列挙型オブジェクト
導入されたバージョン:
1.6

getParent

public NetworkInterface getParent()
このインタフェースがサブインタフェースの場合はその親となる NetworkInterface を返し、このインタフェースが物理 (非仮想) インタフェースであるか親を持たない場合は null を返します。

戻り値:
このインタフェースが接続されている NetworkInterface
導入されたバージョン:
1.6

getDisplayName

public String getDisplayName()
このネットワークインタフェースの表示名を取得します。表示名とは、ネットワークデバイスを記述した、人間が読むことのできる String のことです。

戻り値:
このネットワークインタフェースの表示名。表示名が使用できない場合は null

getByName

public static NetworkInterface getByName(String name)
                                  throws SocketException
指定された名前のネットワークインタフェースを検索します。

パラメータ:
name - ネットワークインタフェースの名前
戻り値:
指定された名前の NetworkInterface。指定された名前のネットワークインタフェースが存在しない場合は null
例外:
SocketException - 入出力エラーが発生した場合
NullPointerException - 指定された名前が null の場合

getByInetAddress

public static NetworkInterface getByInetAddress(InetAddress addr)
                                         throws SocketException
指定された インターネットプロトコル (IP) アドレスがバインドされているネットワークインタフェースを検索する簡易メソッド。

指定された IP アドレスが複数のネットワークインタフェースにバインドされている場合、どのネットワークインタフェースが返されるかは未定義となります。

パラメータ:
addr - 検索に使用する InetAddress
戻り値:
NetworkInterface。指定された IP アドレスを持つネットワークインタフェースが存在しない場合は null
例外:
SocketException - 入出力エラーが発生した場合
NullPointerException - 指定されたアドレスが null の場合

getNetworkInterfaces

public static Enumeration<NetworkInterface> getNetworkInterfaces()
                                                          throws SocketException
このマシン上のすべてのインタフェースを返します。このマシン上でネットワークインタフェースが 1 つも見つからなかった場合は、null を返します。 注:getNetworkInterfaces() と getInetAddresses() を使用して、このノードのすべての IP アドレスを取得できます。

戻り値:
このマシンで見つかった NetworkInterfaces の 列挙
例外:
SocketException - 入出力エラーが発生した場合

isUp

public boolean isUp()
             throws SocketException
ネットワークインタフェースが起動し、動作しているかどうかを返します。

戻り値:
インタフェースが起動し、動作している場合は true
例外:
SocketException - 入出力エラーが発生した場合
導入されたバージョン:
1.6

isLoopback

public boolean isLoopback()
                   throws SocketException
ネットワークインタフェースがループバックインタフェースかどうかを返します。

戻り値:
インタフェースがループバックインタフェースである場合は true
例外:
SocketException - 入出力エラーが発生した場合
導入されたバージョン:
1.6

isPointToPoint

public boolean isPointToPoint()
                       throws SocketException
ネットワークインタフェースがポイントツーポイントインタフェースかどうかを返します。通常のポイントツーポイントインタフェースとして、モデム経由の PPP 接続が挙げられます。

戻り値:
インタフェースがポイントツーポイントインタフェースである場合は true
例外:
SocketException - 入出力エラーが発生した場合
導入されたバージョン:
1.6

supportsMulticast

public boolean supportsMulticast()
                          throws SocketException
ネットワークインタフェースがマルチキャストをサポートしているかどうかを返します。

戻り値:
インタフェースがマルチキャストをサポートしている場合は true
例外:
SocketException - 入出力エラーが発生した場合
導入されたバージョン:
1.6

getHardwareAddress

public byte[] getHardwareAddress()
                          throws SocketException
インタフェースがハードウェアアドレス (通常は MAC) を持っており、そのアドレスに現在の特権を使ってアクセス可能である場合に、そのアドレスを返します。

戻り値:
アドレスを含むバイト配列。アドレスが存在しないかアドレスにアクセスできない場合は null
例外:
SocketException - 入出力エラーが発生した場合
導入されたバージョン:
1.6

getMTU

public int getMTU()
           throws SocketException
このインタフェースの最大転送単位 (MTU) を返します。

戻り値:
そのインタフェースの MTU の値
例外:
SocketException - 入出力エラーが発生した場合
導入されたバージョン:
1.6

isVirtual

public boolean isVirtual()
このインタフェースが仮想インタフェース (サブインタフェースとも呼ばれる) かどうかを返します。仮想インタフェースはシステムによっては、ある物理インタフェースの子として作成され、異なる設定 (アドレスや MTU など) が与えられたインタフェースになります。通常、このインタフェースの名前は、親の名前のあとに、コロン (:) と子を識別するための数字を付加したものになります。これは、単一の物理インタフェースに複数の仮想インタフェースが接続される可能性があるためです。

戻り値:
このインタフェースが仮想インタフェースである場合は true
導入されたバージョン:
1.6

equals

public boolean equals(Object obj)
オブジェクトと指定されたオブジェクトを比較します。引数が null ではなく、このオブジェクトと同じ NetworkInterface を表している場合にだけ、結果が true になります。

名前とアドレスが両方とも同じ場合、NetworkInterface の 2 つのインスタンスは同じ NetworkInterface を表します。

オーバーライド:
クラス Object 内の equals
パラメータ:
obj - 比較対象のオブジェクト
戻り値:
オブジェクトが同じである場合は true、そうでない場合は false
関連項目:
InetAddress.getAddress()

hashCode

public int hashCode()
クラス Object の記述:
オブジェクトのハッシュコード値を返します。このメソッドは、java.util.Hashtable によって提供されるようなハッシュテーブルで使用するために用意されています。

hashCode メソッドの一般的な規則を次に示します。

できるかぎり、Object クラスで定義される hashCode メソッドは、異なるオブジェクトについては異なる整数値を返します。通常、これはオブジェクトの内部アドレスを整数値に変換する形で実装されますが、そのような実装テクニックは JavaTM プログラミング言語では不要です。

オーバーライド:
クラス Object 内の hashCode
戻り値:
このオブジェクトのハッシュコード値
関連項目:
Object.equals(java.lang.Object), Hashtable

toString

public String toString()
クラス Object の記述:
オブジェクトの文字列表現を返します。通常、toString メソッドはこのオブジェクトを「テキストで表現する」文字列を返します。この結果は、人間が読める簡潔で有益な情報であるべきです。すべてのサブクラスで、このメソッドをオーバーライドすることをお勧めします。

Object クラスの toString メソッドは、オブジェクトの派生元のクラス名、アットマーク (@)、およびオブジェクトのハッシュコードの符号なし 16 進表現から構成される文字列を返します。つまり、このメソッドは次の値と等しい文字列を返します。

 
 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

オーバーライド:
クラス Object 内の toString
戻り値:
このオブジェクトの文字列表現

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。