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