From: "yann.gouverneur (Yann Gouverneur)" Date: 2021-09-06T19:07:21+00:00 Subject: [ruby-core:105161] [Ruby master Bug#18151] Incorrect Resolv result when DNS server is unreachable Issue #18151 has been reported by yann.gouverneur (Yann Gouverneur). ---------------------------------------- Bug #18151: Incorrect Resolv result when DNS server is unreachable https://bugs.ruby-lang.org/issues/18151 * Author: yann.gouverneur (Yann Gouverneur) * Status: Open * Priority: Normal * ruby -v: ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x86_64-linux] * Backport: 2.6: UNKNOWN, 2.7: UNKNOWN, 3.0: UNKNOWN ---------------------------------------- The Resolv class has an incorrect behavior when the DNS server can't be reached. The attached script highlight the issue which - depending on your needs in resolving host names - could be really problematic. Here's the output of the script: ``` $ ruby test_resolv.rb Resolution of an existing domain name -> OK ["142.250.184.68", "2a00:1450:4002:806::2004"] Resolution of a non existing domain name -> OK [] Attempt of resolving a domain name with an incorrect/unreachable DNS server -> KO [] -> Expecting: ResolvError ``` Obviously the result for both NXDOMAIN and failure to reach the DNS server is identical, hence it make impossible to handle errors programmatically. A proper result when the DNS server is not reachable would be to get a ResolvError exception fired. ---Files-------------------------------- test_resolv.rb (702 Bytes) -- https://bugs.ruby-lang.org/ Unsubscribe: