Module: Ec2IpRanges

Defined in:
lib/ec2_ip_ranges.rb,
lib/ec2_ip_ranges/version.rb

Constant Summary collapse

RAW_DATA =
File.read(File.expand_path('../../data/amazon_ec2_public_ip_ranges.txt', __FILE__)).split("\n")
VERSION =
"1.0.1"

Class Method Summary collapse

Class Method Details

.address_rangesObject



13
14
15
# File 'lib/ec2_ip_ranges.rb', line 13

def self.address_ranges
  @@address_ranges ||= RAW_DATA.map { |i| IPAddr.new(i) }
end

.ec2_ip?(ip_address_string) ⇒ Boolean

Returns:

  • (Boolean)


7
8
9
10
11
# File 'lib/ec2_ip_ranges.rb', line 7

def self.ec2_ip?(ip_address_string)
  test_ip = IPAddr.new(ip_address_string)

  address_ranges.select{ |range| range === test_ip }.any?
end