1. ホーム
  2. ruby

[解決済み] Rubyでリモートホストの到達可能性をpingで確認する方法

2022-02-09 18:07:35

質問

を使ってみました。

Ping.pingecho("10.102.52.42", 30)

リモートホストの到達可能性を確認します。この文は、たとえIPを手動でpingすることができたとしても、nullを返します。 Rubyでリモートマシンの到達可能性を判断する効率的な方法はないでしょうか?

どのように解決するのですか?

私は net-ping gemをインストールする必要があります。そうすれば、コードは簡単になります。

#!/usr/bin/env ruby

require 'net/ping'

def up?(host)
    check = Net::Ping::External.new(host)
    check.ping?
end

chost = '10.0.0.1'
puts up?(chost) # prints "true" if ping replies