class DnsChecker::Domain

Attributes

name[R]
nameservers[R]

Public Class Methods

new(name) click to toggle source
# File lib/dns_checker/domain.rb, line 12
def initialize(name)
  @name = name
  update_nameservers
end

Public Instance Methods

nameserver_ips() click to toggle source
# File lib/dns_checker/domain.rb, line 17
def nameserver_ips
  @nameservers.each_with_object(Set.new) do |ns, result|
    ns.a_records.each { |rec| result << rec }
  end.to_a
end

Private Instance Methods

update_nameservers() click to toggle source
# File lib/dns_checker/domain.rb, line 25
def update_nameservers
  @nameservers = DNS.getresources(
    @name, Resolv::DNS::Resource::IN::NS
  ).map { |ns| DnsChecker::Nameserver.new(name: ns.name.to_s, ttl: ns.ttl) }
end