Ruby 1.9.2 リファレンスマニュアル > ライブラリ一覧 > ipaddrライブラリ > IPAddrクラス

class IPAddr

クラスの継承リスト: IPAddr < Object < Kernel < BasicObject

要約

IP アドレスを扱うのためのクラスです。

例:

require 'ipaddr'

ipaddr1 = IPAddr.new("3ffe:505:2::1")
p ipaddr1   # => #<IPAddr: IPv6:3ffe:0505:0002:0000:0000:0000:0000:0001/ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff>

ipaddr3 = IPAddr.new("192.168.2.0/24")
p ipaddr3   # => #<IPAddr: IPv4:192.168.2.0/255.255.255.0>

参照

特異メソッド

定義 説明
new(addr = '::', family = Socket::AF_UNSPEC) -> IPAddr

新しい IPAddr オブジェクトを生成します。

new_ntoh(addr) -> IPAddr

ネットワークバイトオーダーのバイト列から IPAddr オブジェクトを生成します。

ntop(addr)

ネットワークバイトオーダーのバイト列で表現された IP アドレスを人間の読める形式に変換します。

インスタンスメソッド

定義 説明
self & ipaddr -> IPAddr

他の IPAddr オブジェクトとのビットごとの論理積により、 新しい IPAddr オブジェクトを生成します。

self << num -> IPAddr

ビットごとの左シフト演算により、新しい IPAddr オブジェクトを生成します。

self <=> other -> nil | Integer

self と other を比較します。

self == ipaddr -> bool

IPAddr オブジェクト同士が等しいかを比較します。

include?(ipaddr) -> bool
self === ipaddr -> bool

与えられた IPAddr オブジェクトが自身の範囲に入っているかを判定します。

self >> num -> IPAddr

ビットごとの右シフト演算により、新しい IPAddr オブジェクトを生成します。

eql?(other) -> bool

自身が other と等しい場合は真を返します。 そうでない場合は偽を返します。

family -> Integer

このオブジェクトのアドレスファミリを返します。

hash -> Integer

ハッシュ値を返します。

hton -> String

ネットワークオーダーのバイト列に変換します。

inspect -> String

オブジェクトを人間が読める形式に変換した文字列を返します。

ip6_arpa -> String

IPv6 なら [RFC3172] で定義された形式で DNS 逆引きのための文字列を返します。 IPv4 の場合は例外を発生します。

ip6_int -> String

IPv6 なら [RFC1886] 互換形式で DNS 逆引きのための文字列を返します。 IPv4 の場合は例外を発生します。

ipv4? -> bool

IPv4 なら真を返します。

ipv4_compat -> IPAddr

IPv4 アドレスから IPv4 互換 IPv6 アドレスの 新しい IPAddr オブジェクトを返します。

ipv4_compat? -> bool

IPv4 互換 IPv6 アドレスなら 真を返します。

ipv4_mapped -> IPAddr

IPv4 アドレスから IPv4 射影 IPv6 アドレスの 新しい IPAddr オブジェクトを返します。

ipv4_mapped? -> bool

IPv4 射影 IPv6 アドレスなら 真を返します。

ipv6? -> bool

IPv6 なら真を返します。

mask(prefixlen) -> IPAddr

マスクされた新しい IPAddr オブジェクトを返します。 引数にはプリフィックス長とマスクの両方を受け付けます (e.g. 8, 64, "255.255.255.0")。

mask!(mask) -> self

与えられた mask を使用してこのオブジェクトの IP アドレスを破壊的に変更します。

native -> self | IPAddr

IPv4 射影 IPv6 アドレスや IPv4 互換 IPv6 アドレスから、 IPv4 アドレスの新しい IPAddr オブジェクトを返します。 IPv4 互換でも IPv4 組み込みでもないなら self を返します。

reverse -> String

DNS 逆引きのための文字列を返します。 IPv6 なら [RFC3172] で定義された形式で返します。

set(addr, *family) -> self

このオブジェクトの IP アドレスとアドレスファミリをセットして自身を返します。

succ -> IPAddr

次の IPAddr オブジェクトを返します。

to_i -> Integer

整数に変換します。

to_range -> Range

self の IP アドレスとサブネットマスクで取得できる IP アドレスの範囲を Range オブジェクトとして返します。

to_s -> String

文字列に変換します。

to_string -> String

標準的な文字列表現に変換します。

self | ipaddr -> IPAddr

他の IPAddr オブジェクトとのビットごとの論理和により、 新しい IPAddr オブジェクトを生成します。

~ -> IPAddr

ビットごとの論理否定により、新しい IPAddr オブジェクトを生成します。

定数

定義 説明
IN4MASK

IPv4 アドレスの場合に使用するマスク値。

IN6FORMAT

IPv6 アドレスをわかりやすく表示するためのフォーマット文字列。

IN6MASK

IPv6 アドレスの場合に使用するマスク値。

継承したメソッド

! != =~ __id__ __send__ _dump class clone dclone display enum_for equal? extend freeze frozen? initialize initialize_copy instance_eval instance_exec instance_of? instance_variable_defined? instance_variable_get instance_variable_set instance_variables is_a? marshal_dump marshal_load method method_missing methods must_be must_be_close_to must_be_empty must_be_instance_of must_be_kind_of must_be_nil must_be_same_as must_be_within_epsilon must_equal must_include must_match must_raise must_respond_to must_send must_throw nil? pretty_inspect pretty_print pretty_print_cycle pretty_print_inspect pretty_print_instance_variables private_methods protected_methods public_methods remove_instance_variable respond_to? respond_to_missing? singleton_class singleton_method_added singleton_method_removed singleton_method_undefined singleton_methods taint tainted? tap to_a to_ary to_hash to_int to_io to_proc to_regexp to_str to_yaml to_yaml_properties to_yaml_style trust untaint untrust untrusted? wont_be wont_be_close_to wont_be_empty wont_be_instance_of wont_be_kind_of wont_be_nil wont_be_same_as wont_be_within_epsilon wont_equal wont_include wont_match wont_respond_to