module Nifty::Utils::Networks

Public Class Methods

ip_in_networks?(ip, networks = []) click to toggle source
# File lib/nifty/utils/networks.rb, line 7
def self.ip_in_networks?(ip, networks = [])
  !!network_for_ip(networks, ip)
end
network_for_ip(networks, ip) click to toggle source
# File lib/nifty/utils/networks.rb, line 11
def self.network_for_ip(networks, ip)
  networks.each do |i|
    if IPAddr.new(i).include?(ip)
      return i
    end
  end
  return nil
rescue ArgumentError => e
  if e.message == 'invalid address'
    return nil
  else
    raise
  end
end