2012-10-24 2 views
2

resolv.conf의 DNS 서버와 다른 DNS 서버를 통해 Ruby 스크립트에서 발행 된 DNS 요청을 해결하고 싶습니다. Resolv :: DNS 같은 것을 사용하여 수동으로 할 수는 있지만 모든 요청 (예 : RestClient에서 발급 한 요청)에 대해 그렇게하고 싶습니다. 어떤 아이디어?Ruby : 사용자 정의 DNS 서버를 통해 DNS를 강제로 해결합니다.

+0

내가 루비 레일에 앱 DNS 설정을 수정할 수 있습니다 [의 중복 가능성? ] (http://stackoverflow.com/questions/18898330/can-i-modify-dns-settings-for-a-ruby-on-rails-app) –

답변

0

위해 RESTClient는 TCP 소켓을 열 수 제공된 URL의 호스트 이름 부분을 net/http을 사용하고 사용

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

관련 문제