モジュール java.base
パッケージ java.net

クラスInet4Address

  • すべての実装されたインタフェース:
    Serializable

    public final class Inet4Address
    extends InetAddress
    このクラスは、インターネット・プロトコル・バージョン4 (IPv4)アドレスを表します。 RFC 790: Assigned NumbersRFC 1918: Address Allocation for Private Internets、およびRFC 2365: Administratively Scoped IP Multicastで規定されています。

    IPアドレスのテキスト表現

    メソッドの入力として使用されるIPv4アドレスのテキスト表現は、次のいずれかの形式になります。
    • d.d.d.d
    • d.d.d
    • d.d
    • d

    4つの部分が指定されると、各部分がデータのバイトとして解釈され、左から右へ、IPv4アドレスの4つのバイトに割り当てられます。

    3つの部分から成るアドレスが指定された場合、その最後の部分が16ビット・データとして解釈され、ネットワーク・アドレスの右側の2バイトに配置されます。 このため、3つの部分から成るアドレスの形式は、Class Bのネットワーク・アドレスを128.net.hostとして指定する際に役立ちます。

    2つの部分から成るアドレスが指定された場合、その最後の部分が24ビット・データとして解釈され、ネットワーク・アドレスの右側の3バイトに配置されます。 このため、2つの部分から成るアドレスの形式は、Class Aのネットワーク・アドレスをnet.hostとして指定する際に役立ちます。

    1つの部分だけが指定されると、その値は直接ネットワーク・アドレスに格納され、バイトの再配置は行われません。

    テキスト表現を出力値として返すメソッドでは、最初の形式、つまりドットで区切られた4部から成る文字列が使用されます。

    マルチキャスト・アドレスのスコープ

    歴史的に、IPヘッダーのIPv4 TTLフィールドはマルチキャスト・スコープ・フィールドとして2倍になりました。0のTTLはノード・ローカル、1はリンク・ローカル、32まではサイト・ローカル、64までは地域ローカル、128までは大陸ローカル、255まではグローバルを意味します。 ただし、管理スコープが優先されます。 RFC 2365: Administratively Scoped IP Multicast」を参照してください。
    導入されたバージョン:
    1.4
    関連項目:
    直列化された形式
    • メソッドのサマリー

      すべてのメソッド インスタンス・メソッド 具象メソッド 
      修飾子と型 メソッド 説明
      boolean equals​(Object obj)
      このオブジェクトと指定されたオブジェクトを比較します。
      byte[] getAddress()
      このInetAddressオブジェクトの生のIPアドレスを返します。
      String getHostAddress()
      テキスト表現形式のIPアドレス文字列を返します。
      int hashCode()
      このIPアドレスのハッシュ・コードを返します。
      boolean isAnyLocalAddress()
      InetAddressがワイルドカード・アドレスかどうかを調べるユーティリティ・ルーチン。
      boolean isLinkLocalAddress()
      InetAddressがリンク・ローカル・アドレスかどうかを調べるユーティリティ・ルーチンです。
      boolean isLoopbackAddress()
      InetAddressがループバック・アドレスかどうかを調べるユーティリティ・ルーチンです。
      boolean isMCGlobal()
      マルチキャスト・アドレスにグローバル・スコープがあるかどうかを調べるユーティリティ・ルーチンです。
      boolean isMCLinkLocal()
      マルチキャスト・アドレスにリンク・スコープがあるかどうかを調べるユーティリティ・ルーチンです。
      boolean isMCNodeLocal()
      マルチキャスト・アドレスにノード・スコープがあるかどうかを調べるユーティリティ・ルーチンです。
      boolean isMCOrgLocal()
      マルチキャスト・アドレスに組織スコープがあるかどうかを調べるユーティリティ・ルーチンです。
      boolean isMCSiteLocal()
      マルチキャスト・アドレスにサイト・スコープがあるかどうかを調べるユーティリティ・ルーチンです。
      boolean isMulticastAddress()
      InetAddressがIPマルチキャスト・アドレスかどうかを調べるユーティリティ・ルーチンです。
      boolean isSiteLocalAddress()
      InetAddressがサイト・ローカル・アドレスかどうかを調べるユーティリティ・ルーチンです。
    • メソッドの詳細

      • isMulticastAddress

        public boolean isMulticastAddress()
        InetAddressがIPマルチキャスト・アドレスかどうかを調べるユーティリティ・ルーチンです。 IPマルチキャスト・アドレスはClass Dアドレスです。つまり、そのアドレスの先頭の4ビットが1110です。
        オーバーライド:
        isMulticastAddress、クラスInetAddress
        戻り値:
        InetAddressがIPマルチキャスト・アドレスかどうかを示すboolean
      • isAnyLocalAddress

        public boolean isAnyLocalAddress()
        InetAddressがワイルドカード・アドレスかどうかを調べるユーティリティ・ルーチン。
        オーバーライド:
        isAnyLocalAddress、クラスInetAddress
        戻り値:
        InetAddressがワイルドカード・アドレスかどうかを示すboolean
      • isLoopbackAddress

        public boolean isLoopbackAddress()
        InetAddressがループバック・アドレスかどうかを調べるユーティリティ・ルーチンです。
        オーバーライド:
        isLoopbackAddress、クラスInetAddress
        戻り値:
        InetAddressがループバック・アドレスかどうかを示すboolean。ループバック・アドレスでない場合はfalse。
      • isLinkLocalAddress

        public boolean isLinkLocalAddress()
        InetAddressがリンク・ローカル・アドレスかどうかを調べるユーティリティ・ルーチンです。
        オーバーライド:
        isLinkLocalAddress、クラスInetAddress
        戻り値:
        InetAddressがリンク・ローカル・アドレスかどうかを示すboolean。アドレスがリンク・ローカル・ユニキャスト・アドレスでない場合はfalse。
      • isSiteLocalAddress

        public boolean isSiteLocalAddress()
        InetAddressがサイト・ローカル・アドレスかどうかを調べるユーティリティ・ルーチンです。
        オーバーライド:
        isSiteLocalAddress、クラスInetAddress
        戻り値:
        InetAddressがサイト・ローカル・アドレスかどうかを示すboolean。アドレスがサイト・ローカル・ユニキャスト・アドレスでない場合はfalse。
      • isMCGlobal

        public boolean isMCGlobal()
        マルチキャスト・アドレスにグローバル・スコープがあるかどうかを調べるユーティリティ・ルーチンです。
        オーバーライド:
        isMCGlobal、クラスInetAddress
        戻り値:
        アドレスがグローバル・スコープのマルチキャスト・アドレスかどうかを示すboolean。それがグローバル・スコープのアドレスでないかマルチキャスト・アドレスでない場合はfalse
      • isMCNodeLocal

        public boolean isMCNodeLocal()
        マルチキャスト・アドレスにノード・スコープがあるかどうかを調べるユーティリティ・ルーチンです。
        オーバーライド:
        isMCNodeLocal、クラスInetAddress
        戻り値:
        アドレスがノード・ローカル・スコープのマルチキャスト・アドレスかどうかを示すboolean。それがノード・ローカル・スコープのアドレスでないかマルチキャスト・アドレスでない場合はfalse
      • isMCLinkLocal

        public boolean isMCLinkLocal()
        マルチキャスト・アドレスにリンク・スコープがあるかどうかを調べるユーティリティ・ルーチンです。
        オーバーライド:
        isMCLinkLocal、クラスInetAddress
        戻り値:
        アドレスがリンク・ローカル・スコープのマルチキャスト・アドレスかどうかを示すboolean。それがリンク・ローカル・スコープのアドレスでないかマルチキャスト・アドレスでない場合はfalse
      • isMCSiteLocal

        public boolean isMCSiteLocal()
        マルチキャスト・アドレスにサイト・スコープがあるかどうかを調べるユーティリティ・ルーチンです。
        オーバーライド:
        isMCSiteLocal、クラスInetAddress
        戻り値:
        アドレスがサイト・ローカル・スコープのマルチキャスト・アドレスかどうかを示すboolean。それがサイト・ローカル・スコープのアドレスでないかマルチキャスト・アドレスでない場合はfalse
      • isMCOrgLocal

        public boolean isMCOrgLocal()
        マルチキャスト・アドレスに組織スコープがあるかどうかを調べるユーティリティ・ルーチンです。
        オーバーライド:
        isMCOrgLocal、クラスInetAddress
        戻り値:
        アドレスが組織ローカル・スコープのマルチキャスト・アドレスかどうかを示すboolean。それが組織ローカル・スコープのアドレスでないかマルチキャスト・アドレスでない場合はfalse
      • getAddress

        public byte[] getAddress()
        このInetAddressオブジェクトの生のIPアドレスを返します。 その結果はネットワーク・バイト順序になります。アドレスの最上位順序バイトはgetAddress()[0].内に存在します。
        オーバーライド:
        getAddress、クラスInetAddress
        戻り値:
        このオブジェクトのIPアドレス。
      • getHostAddress

        public String getHostAddress()
        テキスト表現形式のIPアドレス文字列を返します。
        オーバーライド:
        getHostAddress、クラスInetAddress
        戻り値:
        IPアドレスの文字列形式。
      • equals

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

        getAddressによって返されるバイト配列の長さが同じであり、バイト配列の各コンポーネントが同じである場合、2つのInetAddressのインスタンスは同じIPアドレスを表しています。

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