class SecureNative::Utils::IpUtils

Public Class Methods

ip_address?(ip_address) click to toggle source
# File lib/securenative/utils/ip_utils.rb, line 6
def self.ip_address?(ip_address)
  return true if ip_address =~ Resolv::IPv4::Regex
  return true if ip_address =~ Resolv::IPv6::Regex

  false
end
loop_back?(ip_address) click to toggle source
# File lib/securenative/utils/ip_utils.rb, line 20
def self.loop_back?(ip_address)
  IPAddr.new(ip_address).loopback?
end
valid_public_ip?(ip_address) click to toggle source
# File lib/securenative/utils/ip_utils.rb, line 13
def self.valid_public_ip?(ip_address)
  ip = IPAddr.new(ip_address)
  return false if ip.loopback? || ip.private? || ip.link_local? || ip.untrusted? || ip.tainted?

  true
end