我正在尝试确定给定 IP 是否在网络阵列中。include?
对对象数组使用IPAddr
似乎不起作用(从未满足 if 条件),例如:
require 'ipaddr'
my_ipaddr = IPAddr.new("192.168.10.102")
# define our internal networks
internal = [IPAddr.new("192.168.50.1/24"), IPAddr.new("192.168.10.1/24")]
if internal.include?(my_ipaddr)
puts "I'm in the internal network"
end
但是,如果我定义一个没有数组的单个网络,它会很好地工作:
internal = IPAddr.new("192.168.10.1/24")
如果您需要更多信息,请告诉我。我是红宝石的新手,所以请善待:)。