Ruby:通过自定义DNS服务器强制DNS解析

时间:2012-10-24 07:59:03

标签: ruby dns

我想通过DNS服务器解析从Ruby脚本中发出的DNS请求,这与resolv.conf中的不同。虽然我可以通过使用Resolv :: DNS或类似的东西来做到这一点,但我想为所有请求(例如RestClient发布的请求)执行此操作。有什么想法吗?

1 个答案:

答案 0 :(得分:-1)

RestClient使用net/http并使用提供的URL的主机名部分打开TCP套接字:

https://github.com/ruby/ruby/blob/trunk/lib/net/http.rb?source=cc#L879

更改访问哪个主机的最简单方法是通过自己执行查找来手动更改URL以使用IP地址。

或者,您可以替换各种*Socket类的解析器,并且实际上有一个示例如何在此处执行此操作:https://github.com/ruby/ruby/blob/4c2304f0004e9f1784540f3d36976aad9eab1f68/lib/resolv-replace.rb