module DnsChecker
Constants
- DNS
- VERSION
Public Class Methods
on_our_nameservers?(domain_names:, nameservers:, groups: 25)
click to toggle source
# File lib/dns_checker.rb, line 14 def self.on_our_nameservers?(domain_names:, nameservers:, groups: 25) nameserver_ips = nameservers.each_with_object(Set.new) do |ns_name, ips| Nameserver.new(name: ns_name).a_records.each { |a| ips << a } end threads = [] result = {} domain_names.in_groups(groups, false) do |group| threads << Thread.new do domains = group.map { |g| Domain.new(g) } domains.each do |domain| result[domain] = domain.nameserver_ips.all? { |ip| nameserver_ips.include? ip } end end end threads.map(&:join) result end