1

Ruby の組み込み機能を使用して DNS ルックアップを実行するコードがResolve::DNSあり、IP アドレスを名前 (またはその他の適用可能な DNS ルックアップ) に解決するために完全に機能します。

内部ネームサーバーに対して機能していますが、外部 DNS が何を報告しているかを確認したい場合があります。

たとえば、 Google のパブリック DNS (8.8.8.8 / https://dns.google.com/ ) に対して IP アドレスをバウンスするには、認証済みプロキシを介してリクエストを行う必要があります。

コマンド ラインで と をhttp_proxy設定しようとしました(.HTTPS_PROXYResolv::DNSENV['http_proxy'] = 'http://username:password@hostname:port'

を使用してプロキシ経由でリクエストを行う方法を知っている人はいますResolv::DNSか?

使用に依存する他のコードがあるResolv::DNSため、このタスクに他の Ruby 宝石/ライブラリを活用しようとする回答を探していないことに注意してください。

内部 DNS ネームサーバーをクエリするときに機能するコードを次に示しますが、Google DNS に対しては機能しません (長時間経過するとタイムアウトになります)。

 dns = Resolv::DNS.new(:nameserver => '8.8.8.8')

 dns_ptr = dns.getnames('107.23.199.237') # logitech.com

 p dns_ptr

期待される出力:

[#<Resolv::DNS::Name: ec2-ip-address-and-name-of-logitech.com-in-aws.com.>]
4

0 に答える 0