def initialize(ip, netmask=nil, tag={}, wildcard_mask=nil, wildcard_mask_bit_flipped=false)
@ip = ip
if ( self.kind_of?(NetAddr::CIDRv4) )
@version = 4
@address_len = 32
else
@version = 6
@address_len = 128
end
@all_f = 2**@address_len - 1
if (netmask)
@netmask = netmask
else
@netmask = 2**@address_len - 1
end
@network = (@ip & @netmask)
@hostmask = @netmask ^ @all_f
@tag = tag
if (!wildcard_mask)
@wildcard_mask = @netmask
else
@wildcard_mask = wildcard_mask
@wildcard_mask = ~@wildcard_mask if (wildcard_mask_bit_flipped)
end
end