ÿØÿà JFIF    ÿÛ „ ( %!1!%*+...983,7(-.- PKH]1Y;; to_range-i.rinu[U:RDoc::AnyMethod[iI" to_range:EFI"IPAddr#to_range;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"4Creates a Range object for the network address.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"();T@FI" IPAddr;TcRDoc::NormalClass00PKH]C** family-i.rinu[U:RDoc::Attr[iI" family:ETI"IPAddr#family;TI"R;T: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"3Returns the address family of this IP address.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below0F@I" IPAddr;TcRDoc::NormalClass0PKH]LѠLL ip6_arpa-i.rinu[U:RDoc::AnyMethod[iI" ip6_arpa:EFI"IPAddr#ip6_arpa;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"EReturns a string for DNS reverse lookup compatible with RFC3172.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"();T@FI" IPAddr;TcRDoc::NormalClass00PKH]Att new_ntoh-c.rinu[U:RDoc::AnyMethod[iI" new_ntoh:EFI"IPAddr::new_ntoh;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"DCreates a new ipaddr containing the given network byte ordered ;TI""string form of an IP address.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I" (addr);T@FI" IPAddr;TcRDoc::NormalClass00PKH])~~ inspect-i.rinu[U:RDoc::AnyMethod[iI" inspect:EFI"IPAddr#inspect;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"HReturns a string containing a human-readable representation of the ;TI"/ipaddr. ("#");T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"();T@FI" IPAddr;TcRDoc::NormalClass00PKH]u   native-i.rinu[U:RDoc::AnyMethod[iI" native:EFI"IPAddr#native;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"FReturns a new ipaddr built by converting the IPv6 address into a ;TI"Fnative IPv4 address. If the IP address is not an IPv4-mapped or ;TI"0IPv4-compatible IPv6 address, returns self.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"();T@FI" IPAddr;TcRDoc::NormalClass00PKH]k44 ipv4%3f-i.rinu[U:RDoc::AnyMethod[iI" ipv4?:EFI"IPAddr#ipv4?;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"3Returns true if the ipaddr is an IPv4 address.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"();T@FI" IPAddr;TcRDoc::NormalClass00PKH]set-i.rinu[U:RDoc::AnyMethod[iI"set:EFI"IPAddr#set;TF:protectedo:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"GSet +@addr+, the internal stored ip address, to given +addr+. The ;TI"Dparameter +addr+ is validated using the first +family+ member, ;TI"6which is +Socket::AF_INET+ or +Socket::AF_INET6+.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"(addr, *family);T@FI" IPAddr;TcRDoc::NormalClass00PKH]F&& eql%3f-i.rinu[U:RDoc::AnyMethod[iI" eql?:EFI"IPAddr#eql?;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I""Checks equality used by Hash.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I" (other);T@FI" IPAddr;TcRDoc::NormalClass00PKH]r!new-c.rinu[U:RDoc::AnyMethod[iI"new:ETI"IPAddr::new;TT: publico:RDoc::Markup::Document: @parts[ o:RDoc::Markup::Paragraph; [I"ACreates a new ipaddr object either from a human readable IP ;TI"Faddress representation in string, or from a packed in_addr value ;TI"#followed by an address family.;To:RDoc::Markup::BlankLineo; ; [ I"GIn the former case, the following are the valid formats that will ;TI"Gbe recognized: "address", "address/prefixlen" and "address/mask", ;TI"Dwhere IPv6 address may be enclosed in square brackets (`[' and ;TI"G`]'). If a prefixlen or a mask is specified, it returns a masked ;TI">:ETI"IPAddr#>>;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"7Returns a new ipaddr built by bitwise right-shift.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I" (num);T@FI" IPAddr;TcRDoc::NormalClass00PKH]~ in6_addr-i.rinu[U:RDoc::AnyMethod[iI" in6_addr:EFI"IPAddr#in6_addr;TF: privateo:RDoc::Markup::Document: @parts[: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I" (left);T@ FI" IPAddr;TcRDoc::NormalClass00PKH]kVinclude%3f-i.rinu[U:RDoc::AnyMethod[iI" include?:EFI"IPAddr#include?;TF: publico:RDoc::Markup::Document: @parts[ o:RDoc::Markup::Paragraph; [I"6Returns true if the given ipaddr is in the range.;To:RDoc::Markup::BlankLineo; ; [I" e.g.:;To:RDoc::Markup::Verbatim; [ I"require 'ipaddr' ;TI")net1 = IPAddr.new("192.168.2.0/24") ;TI"(net2 = IPAddr.new("192.168.2.100") ;TI"&net3 = IPAddr.new("192.168.3.0") ;TI"(p net1.include?(net2) #=> true ;TI"(p net1.include?(net3) #=> false;T: @format0: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[[I"===;To;; [;@;0I" (other);T@FI" IPAddr;TcRDoc::NormalClass00PKH]x-AA hton-i.rinu[U:RDoc::AnyMethod[iI" hton:EFI"IPAddr#hton;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"BReturns a network byte ordered string form of the IP address.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"();T@FI" IPAddr;TcRDoc::NormalClass00PKH],2H _reverse-i.rinu[U:RDoc::AnyMethod[iI" _reverse:EFI"IPAddr#_reverse;TF: privateo:RDoc::Markup::Document: @parts[: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"();T@ FI" IPAddr;TcRDoc::NormalClass00PKH]T )>>> to_s-i.rinu[U:RDoc::AnyMethod[iI" to_s:EFI"IPAddr#to_s;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"?Returns a string containing the IP address representation.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"();T@FI" IPAddr;TcRDoc::NormalClass00PKH] mask-i.rinu[U:RDoc::AnyMethod[iI" mask:EFI"IPAddr#mask;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"EReturns a new ipaddr built by masking IP address with the given ;TI";prefixlen/netmask. (e.g. 8, 64, "255.255.255.0", etc.);T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"(prefixlen);T@FI" IPAddr;TcRDoc::NormalClass00PKH]JJ ip6_int-i.rinu[U:RDoc::AnyMethod[iI" ip6_int:EFI"IPAddr#ip6_int;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"EReturns a string for DNS reverse lookup compatible with RFC1886.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"();T@FI" IPAddr;TcRDoc::NormalClass00PKH]Ӳ44 ipv6%3f-i.rinu[U:RDoc::AnyMethod[iI" ipv6?:EFI"IPAddr#ipv6?;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"3Returns true if the ipaddr is an IPv6 address.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"();T@FI" IPAddr;TcRDoc::NormalClass00PKH]춣b.InvalidPrefixError/cdesc-InvalidPrefixError.rinu[U:RDoc::NormalClass[iI"InvalidPrefixError:ETI"IPAddr::InvalidPrefixError;TI" IPAddr::InvalidAddressError;To:RDoc::Markup::Document: @parts[o;;[o:RDoc::Markup::Paragraph;[I"2Raised when the address is an invalid length.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below0; 0; 0[[[[[I" class;T[[: public[[:protected[[: private[[I" instance;T[[; [[; [[;[[[U:RDoc::Context::Section[i0o;;[; 0; 0[@I" IPAddr;TcRDoc::NormalClassPKH]#hRRipv4_compat%3f-i.rinu[U:RDoc::AnyMethod[iI"ipv4_compat?:EFI"IPAddr#ipv4_compat?;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"CReturns true if the ipaddr is an IPv4-compatible IPv6 address.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"();T@FI" IPAddr;TcRDoc::NormalClass00PKH]Y[ (( succ-i.rinu[U:RDoc::AnyMethod[iI" succ:EFI"IPAddr#succ;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I")Returns the successor to the ipaddr.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"();T@FI" IPAddr;TcRDoc::NormalClass00PKH]ɢ^8,,%7c-i.rinu[U:RDoc::AnyMethod[iI"|:ETI" IPAddr#|;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I".Returns a new ipaddr built by bitwise OR.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I" (other);T@FI" IPAddr;TcRDoc::NormalClass00PKH]QZAipv4_compat-i.rinu[U:RDoc::AnyMethod[iI"ipv4_compat:EFI"IPAddr#ipv4_compat;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"FReturns a new ipaddr built by converting the native IPv4 address ;TI"*into an IPv4-compatible IPv6 address.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"();T@FI" IPAddr;TcRDoc::NormalClass00PKH]K%3d%3d%3d-i.rinu[U:RDoc::AnyMethod[iI"===:ETI"IPAddr#===;TF: publico:RDoc::Markup::Document: @parts[: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I" (other);T@ FI" IPAddr;TcRDoc::NormalClass0[@FI" include?;FPKH]߸--%7e-i.rinu[U:RDoc::AnyMethod[iI"~:EFI" IPAddr#~;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"4Returns a new ipaddr built by bitwise negation.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"();T@FI" IPAddr;TcRDoc::NormalClass00PKH]/br  cdesc-IPAddr.rinu[U:RDoc::NormalClass[iI" IPAddr:ET@I" Object;To:RDoc::Markup::Document: @parts[o;;[ o:RDoc::Markup::Paragraph;[I"RIPAddr provides a set of methods to manipulate an IP address. Both IPv4 and ;TI"IPv6 are supported.;To:RDoc::Markup::BlankLineS:RDoc::Markup::Heading: leveli: textI" Example;T@o:RDoc::Markup::Verbatim;[I"require 'ipaddr' ;TI" ;TI"*ipaddr1 = IPAddr.new "3ffe:505:2::1" ;TI" ;TI"p ipaddr1 #=> # ;TI" ;TI"5p ipaddr1.to_s #=> "3ffe:505:2::1" ;TI" ;TI"ipaddr2 = ipaddr1.mask(48) #=> # ;TI" ;TI"4p ipaddr2.to_s #=> "3ffe:505:2::" ;TI" ;TI"+ipaddr3 = IPAddr.new "192.168.2.0/24" ;TI" ;TI"Np ipaddr3 #=> #;T: @format0: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below0;0;0[[ I" family;TI"R;T: publicFI"lib/ipaddr.rb;T[ U:RDoc::Constant[iI" IN4MASK;FI"IPAddr::IN4MASK;T00o;;[o; ;[I"32 bit mask for IPv4;T;@%;0@%@cRDoc::NormalClass0U;[iI" IN6MASK;FI"IPAddr::IN6MASK;T00o;;[o; ;[I"128 bit mask for IPv4;T;@%;0@%@@50U;[iI"IN6FORMAT;FI"IPAddr::IN6FORMAT;T00o;;[o; ;[I"Format string for IPv6;T;@%;0@%@@50U;[iI"RE_IPV4ADDRLIKE;FI"IPAddr::RE_IPV4ADDRLIKE;T00o;;[o; ;[I"7Regexp _internally_ used for parsing IPv4 address.;T;@%;0@%@@50U;[iI"RE_IPV6ADDRLIKE_FULL;FI"!IPAddr::RE_IPV6ADDRLIKE_FULL;T00o;;[o; ;[I"7Regexp _internally_ used for parsing IPv6 address.;T;@%;0@%@@50U;[iI"RE_IPV6ADDRLIKE_COMPRESSED;FI"'IPAddr::RE_IPV6ADDRLIKE_COMPRESSED;T00o;;[o; ;[I"7Regexp _internally_ used for parsing IPv6 address.;T;@%;0@%@@50[[I"Comparable;To;;[;@%;0@*[[I" class;T[[;[[I"new;T@*[I" new_ntoh;F@*[I" ntop;F@*[:protected[[: private[[I" instance;T[[;["[I"&;T@*[I"<<;T@*[I"<=>;T@*[I"==;T@*[I"===;T@*[I">>;T@*[I" eql?;F@*[I" hash;F@*[I" hton;F@*[I" include?;F@*[I" inspect;F@*[I" ip6_arpa;F@*[I" ip6_int;F@*[I" ipv4?;F@*[I"ipv4_compat;F@*[I"ipv4_compat?;F@*[I"ipv4_mapped;F@*[I"ipv4_mapped?;F@*[I" ipv6?;F@*[I" mask;F@*[I" native;F@*[I" reverse;F@*[I" succ;F@*[I" to_i;F@*[I" to_range;F@*[I" to_s;F@*[I"to_string;F@*[I"|;T@*[I"~;F@*[;[[I" mask!;F@*[I"set;F@*[;[ [I" _reverse;F@*[I"_to_string;F@*[I"addr_mask;F@*[I"coerce_other;F@*[I" in6_addr;F@*[I" in_addr;F@*[[U:RDoc::Context::Section[i0o;;[;0;0[@%@%cRDoc::TopLevelPKH]u0InvalidAddressError/cdesc-InvalidAddressError.rinu[U:RDoc::NormalClass[iI"InvalidAddressError:ETI" IPAddr::InvalidAddressError;TI"IPAddr::Error;To:RDoc::Markup::Document: @parts[o;;[o:RDoc::Markup::Paragraph;[I"?Raised when the provided IP address is an invalid address.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below0; 0; 0[[[[[I" class;T[[: public[[:protected[[: private[[I" instance;T[[; [[; [[;[[[U:RDoc::Context::Section[i0o;;[; 0; 0[@I" IPAddr;TcRDoc::NormalClassPKH]:ETI"IPAddr#<=>;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"&Compares the ipaddr with another.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I" (other);T@FI" IPAddr;TcRDoc::NormalClass00PKH]L in_addr-i.rinu[U:RDoc::AnyMethod[iI" in_addr:EFI"IPAddr#in_addr;TF: privateo:RDoc::Markup::Document: @parts[: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I" (addr);T@ FI" IPAddr;TcRDoc::NormalClass00PKH]V|ss reverse-i.rinu[U:RDoc::AnyMethod[iI" reverse:EFI"IPAddr#reverse;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"FReturns a string for DNS reverse lookup. It returns a string in ;TI"&RFC3172 form for an IPv6 address.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"();T@FI" IPAddr;TcRDoc::NormalClass00PKH]W=ó== hash-i.rinu[U:RDoc::AnyMethod[iI" hash:EFI"IPAddr#hash;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I">Returns a hash value used by Hash, Set, and Array classes;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I"();T@FI" IPAddr;TcRDoc::NormalClass00PKH]`ee ntop-c.rinu[U:RDoc::AnyMethod[iI" ntop:EFI"IPAddr::ntop;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"FConvert a network byte ordered string form of an IP address into ;TI"human readable form.;T: @fileI"lib/ipaddr.rb;T:0@omit_headings_from_table_of_contents_below000[I" (addr);T@FI" IPAddr;TcRDoc::NormalClass00PKH]1Y;; to_range-i.rinu[PKH]C** xfamily-i.rinu[PKH]LѠLL ip6_arpa-i.rinu[PKH]Att fnew_ntoh-c.rinu[PKH])~~ inspect-i.rinu[PKH]u   native-i.rinu[PKH]k44  ipv4%3f-i.rinu[PKH]? set-i.rinu[PKH]F&& I eql%3f-i.rinu[PKH]r!new-c.rinu[PKH]gError/cdesc-Error.rinu[PKH]wbT̂.3AddressFamilyError/cdesc-AddressFamilyError.rinu[PKH]55 to_i-i.rinu[PKH]n--%26-i.rinu[PKH]|l// mask%21-i.rinu[PKH]C{{Qipv4_mapped-i.rinu[PKH]#55  %3e%3e-i.rinu[PKH]~ | in6_addr-i.rinu[PKH]kV!include%3f-i.rinu[PKH]x-AA $hton-i.rinu[PKH],2H %_reverse-i.rinu[PKH]T )>>> 'to_s-i.rinu[PKH] (mask-i.rinu[PKH]JJ X*ip6_int-i.rinu[PKH]Ӳ44 +ipv6%3f-i.rinu[PKH]춣b.N-InvalidPrefixError/cdesc-InvalidPrefixError.rinu[PKH]#hRR/ipv4_compat%3f-i.rinu[PKH]Y[ (( ?1succ-i.rinu[PKH]ɢ^8,,2%7c-i.rinu[PKH]QZA4ipv4_compat-i.rinu[PKH]K5%3d%3d%3d-i.rinu[PKH]߸--6%7e-i.rinu[PKH]/br  Z8cdesc-IPAddr.rinu[PKH]u0CInvalidAddressError/cdesc-InvalidAddressError.rinu[PKH]