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.

each_address
  • References/Ruby on Rails/Ruby/Classes/Resolv

each_address(name, &block) Class Public methods Iterates over all IP addresses

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

each_address(name, &proc) Instance Public methods Iterates over all IP addresses

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

new(rmailbx, emailbx) Class Public methods

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

new(data) Class Public methods Creates a new generic resource.

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::AAAA

new(address) Class Public methods Creates a new

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

new(first_string, *rest_strings) Class Public methods

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

each_address(name) Instance Public methods Iterates over all IP addresses for

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

new(resolvers=[Hosts.new, DNS.new]) Class Public methods Creates a new

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

data() Instance Public methods Returns the concatenated string from strings

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

getresource(name, typeclass) Instance Public methods Look up the typeclass

2025-01-10 15:47:30