Class: IPAddr
- Inherits:
-
Object
- Object
- IPAddr
- Includes:
- Enumerable
- Defined in:
- lib/ronin/support/core_ext/ipaddr.rb
Direct Known Subclasses
Ronin::Support::Network::IP, Ronin::Support::Network::IPRange::CIDR
Constant Summary collapse
- MASKS =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
Socket families and IP address masks
{ Socket::AF_INET => IN4MASK, Socket::AF_INET6 => IN6MASK }
Instance Method Summary collapse
-
#each {|ip| ... } ⇒ Object
Iterates over each IP address that is included in the addresses netmask.
Methods included from Enumerable
Instance Method Details
#each {|ip| ... } ⇒ Object
Iterates over each IP address that is included in the addresses netmask. Supports both IPv4 and IPv6 addresses.
53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/ronin/support/core_ext/ipaddr.rb', line 53 def each return enum_for(__method__) unless block_given? family_mask = MASKS[@family] (0..((~@mask_addr) & family_mask)).each do |i| yield _to_string(@addr | i) end return self end |