Sha256: 1f0fa90ac521efb3cc56c90caebc72da764dff190a6d8f2910114064828b5b4a
Contents?: true
Size: 653 Bytes
Versions: 1
Compression:
Stored size: 653 Bytes
Contents
# frozen_string_literal: true require "resolv" module RogueOne class Ping attr_reader :resolver, :nameserver def initialize(nameserver) @nameserver = nameserver @resolver = Resolv::DNS.new(nameserver: [nameserver]) @resolver.timeouts = 5 end def get_a_record resolver.getresource("example.com", Resolv::DNS::Resource::IN::A) rescue Resolv::ResolvError => _e nil end def pong? result = get_a_record raise Error, "DNS resolve error: there is no resopnse from #{nameserver}" unless result true end def self.pong?(target) new(target).pong? end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rogue_one-0.4.3 | lib/rogue_one/ping.rb |