Ruby程序的ping错误

时间:2019-02-13 09:09:05

标签: ruby ping

我使用以下代码段ping一系列IP,并检查它们是否可以访问:

class Ping
  def self.pingecho(host = string.new, timeout = 10, service = "echo")
    begin
      puts host
      while(timeout) do
        s = TCPSocket.new(host, service)
        s.close
      end
    rescue Errno::ECONNREFUSED
      return true
    rescue Timeout::Error, StandardError
      return false
    end
    return true
  end
end

它返回正确的状态,但列表中的两个IP除外,其代码返回false。但是,当我尝试使用ping命令通过命令提示符直接对其进行ping操作时,我得到的响应没有任何问题。如果这是代码问题,那么对于其他IP,我也应该得到不正确的结果。但是我只有这两个有这个问题。

我试图通过以下方式将这些IP直接传递给班级:

Ping::pingecho(10.xx.xx.xx)

但是我仍然得到的结果为false

关于需要检查/纠正的任何建议?

0 个答案:

没有答案