モジュール 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()