ruby の Resolv::DNS で参照するネームサーバ等を Hash で指定する
ドキュメントを見た限り設定ファイル(resolv.conf)でしかネームサーバを指定できないのかなと思っていたら、普通に Hash でも指定できるようですね。
require 'resolv' resolver = Resolv::DNS.new(:nameserver => ['8.8.8.8']) puts resolver.getaddress('www.google.com').to_s
以下、resolv.rbより抜粋。
## # Creates a new DNS resolver. # # +config_info+ can be: # # nil:: Uses /etc/resolv.conf. # String:: Path to a file using /etc/resolv.conf's format. # Hash:: Must contain :nameserver, :search and :ndots keys. # # Example: # # Resolv::DNS.new(:nameserver => ['210.251.121.21'], # :search => ['ruby-lang.org'], # :ndots => 1)