Module: ElbPing::Resolver
- Defined in:
- lib/elbping/resolver.rb
Class Method Summary collapse
-
.find_elb_nodes(target, nameserver) ⇒ Object
Resolve an ELB address to a list of node IPs.
Class Method Details
.find_elb_nodes(target, nameserver) ⇒ Object
Resolve an ELB address to a list of node IPs
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/elbping/resolver.rb', line 7 def self.find_elb_nodes(target, nameserver) # First resolve our nameserver IP ns_addrs = Resolver(nameserver).answer.map { |rr| rr.address.to_s } # Now resolve our ELB nodes resolver = Net::DNS::Resolver.new( :use_tcp => true, :nameservers => ns_addrs, :retry => 5) resp = resolver.query(target, Net::DNS::ANY) nodes = [] resp.each_address { |a| nodes += [a.to_s] } nodes end |