diff --git a/src/node/internal/internal_dns_client.ts b/src/node/internal/internal_dns_client.ts index 1856e8dc92c..94ad0d672a3 100644 --- a/src/node/internal/internal_dns_client.ts +++ b/src/node/internal/internal_dns_client.ts @@ -71,10 +71,15 @@ export async function sendDnsRequest( }, method: 'GET', }); + if (!response.ok) { + throw new DnsError(name, errorCodes.BADRESP, syscall); + } // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment json = await response.json(); - } catch { - throw new DnsError(name, errorCodes.BADQUERY, syscall); + } catch (e) { + throw e instanceof DnsError + ? e + : new DnsError(name, errorCodes.BADQUERY, syscall); } if ('error' in json) {