Type:
Class
Constants:
DefaultResolver : self.new

Default resolver to use for Resolv class methods.

AddressRegex : /(?:#{IPv4::Regex})|(?:#{IPv6::Regex})/

Address Regexp to use for matching IP addresses.

Resolv is a thread-aware DNS resolver library written in Ruby. Resolv can handle multiple DNS requests concurrently without blocking the entire ruby interpreter.

See also resolv-replace.rb to replace the libc resolver with Resolv.

Resolv can look up various DNS resources using the DNS module directly.

Examples:

1
2
3
4
5
6
7
8
9
p Resolv.getaddress "www.ruby-lang.org"
p Resolv.getname "210.251.121.214"
 
Resolv::DNS.open do |dns|
  ress = dns.getresources "www.ruby-lang.org", Resolv::DNS::Resource::IN::A
  p ress.map { |r| r.address }
  ress = dns.getresources "ruby-lang.org", Resolv::DNS::Resource::IN::MX
  p ress.map { |r| [r.exchange.to_s, r.preference] }
end

Bugs

  • NIS is not supported.

  • /etc/nsswitch.conf is not supported.

new
  • References/Ruby on Rails/Ruby/Classes/Resolv/Resolv::DNS

new(config_info=nil) Class Public methods Creates a new

2025-01-10 15:47:30
getaddress
  • References/Ruby on Rails/Ruby/Classes/Resolv/Resolv::DNS

getaddress(name) Instance Public methods Gets the IP address of name

2025-01-10 15:47:30
close
  • References/Ruby on Rails/Ruby/Classes/Resolv/Resolv::DNS

close() Instance Public methods Closes the

2025-01-10 15:47:30
new
  • References/Ruby on Rails/Ruby/Classes/Resolv/Resolv::DNS/Resolv::DNS::Resource/Resolv::DNS::Resource::IN/Resolv::DNS::Resource::IN::A

new(address) Class Public methods Creates a new

2025-01-10 15:47:30
each_name 2
  • References/Ruby on Rails/Ruby/Classes/Resolv

each_name(address) Instance Public methods Iterates over all hostnames for

2025-01-10 15:47:30
getname
  • References/Ruby on Rails/Ruby/Classes/Resolv/Resolv::Hosts

getname(address) Instance Public methods Gets the hostname of address

2025-01-10 15:47:30
getaddresses
  • References/Ruby on Rails/Ruby/Classes/Resolv

getaddresses(name) Class Public methods Looks up all IP address for name

2025-01-10 15:47:30
create
  • References/Ruby on Rails/Ruby/Classes/Resolv/Resolv::IPv4

create(arg) Class Public methods

2025-01-10 15:47:30
each_name
  • References/Ruby on Rails/Ruby/Classes/Resolv/Resolv::Hosts

each_name(address, &proc) Instance Public methods Iterates over all hostnames

2025-01-10 15:47:30
getaddress 2
  • References/Ruby on Rails/Ruby/Classes/Resolv

getaddress(name) Instance Public methods Looks up the first IP address for name

2025-01-10 15:47:30