IP Range to CIDR in Ruby/Rails?
问题 I want to do two things: Convert IP Address inputs into CIDR Here are some example inputs: 1.1.1.1 192.168.*.* #=> 192.168.0-255.0-255 192.168.1.2-20 1.1.1-10.1-100 Check if a given IP Address falls into any CIDR. This must be a very fast query, as it's a very common lookup in my web app. I'm thinking of doing something like this: def matches?(request) valid = @ips.select {|cidr| cidr.contains?(request.remote_ip) } !valid.empty? end I think converting IP ranges into CIDR will let lookups be