0

如果给定一个起始 IP 地址(例如 192.168.0.1),我需要编写代码来 ping 一系列 20 个 IP 地址。每个连续的 IP 地址应该比前一个大一位。

4

2 回答 2

5

That's what IPAddr#succ is for:

require 'ipaddr'

ipaddr = IPAddr.new('192.168.0.1')

20.times do
  ping ipaddr
  ipaddr = ipaddr.succ
end
于 2012-06-06T14:07:27.587 回答
0
ip = "192.168.0.1"
ips = []

(0..20).each do |n|

  temp = ip.split('.').map(&:to_i)

  temp[3] = temp[3] + n

  ips << temp.join('.')

end

puts ips
于 2012-06-06T05:26:21.513 回答