Class: Iface::IpV4Address

Inherits:
IpAddress show all
Defined in:
lib/iface/ip_address.rb

Overview

Represents an IPv4 address

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from IpAddress

#==, #cidr_mask, create, #to_i, #to_s

Constructor Details

#initialize(ip_address) ⇒ IpV4Address

Returns a new instance of IpV4Address.

Raises:

  • (ArgumentError)


64
65
66
67
# File 'lib/iface/ip_address.rb', line 64

def initialize(ip_address)
  super
  raise ArgumentError, "Expected IPv4, got IPv6: #{ip_address}" unless @ipaddr.ipv4?
end

Class Method Details

.from_numeric(numeric) ⇒ Object



60
61
62
# File 'lib/iface/ip_address.rb', line 60

def self.from_numeric(numeric)
  new(IPAddr.new_ntoh([numeric].pack('N')))
end

Instance Method Details

#full_cidr_maskObject



73
74
75
# File 'lib/iface/ip_address.rb', line 73

def full_cidr_mask
  32
end

#full_maskObject



69
70
71
# File 'lib/iface/ip_address.rb', line 69

def full_mask
  IPAddr::IN4MASK
end