ruby - 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
。
关于需要检查/纠正什么的任何建议?
解决方案
推荐阅读
- sql-server - SQL Server 中 ALTER COLUMN 语句的幕后操作
- javascript - Node.js 请求未在特定网站上返回 HTML
- mysql - 是否有理由不在每个表中放置时间戳?
- javascript - 如何在javascript中保存已编码到变量中的php数据
- kendo-ui - Kendo UI Grid 在弹出编辑期间调整文本框和更新/取消按钮的大小
- java - 如何在某个位置单击按钮时绘制圆圈?
- android-kernel - 错误:“sizeof”对不完整类型“struct snd_codec_metadata”的无效应用
- javascript - 如何删除不需要在所有文件中自动做出本机反应的导入?
- batch-file - 在 Windows 批处理文件的参数中使用参数
- java - 方法内部设置的条件以查找素数不起作用