Uh oh!
There was an error while loading. Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork 34.3k
Description
- Version(s): v12.16.3 / v12.18.3 / v12.18.0
- Platform: Windows / Windows Subsystem for Linux (Debian) / Red Hat Enterprise Linux Server release 7.8
- Subsystem: DNS
What steps will reproduce the bug?
const dns = require('dns'); const resolver = new dns.promises.Resolver(); // ************************************************************** async function test(hostname){let data = ''; console.log('hostname:', hostname); try{data = await resolver.resolveCname(hostname); console.log('CNAME result:', data)} catch (error){console.log('CNAME result:', error.message)} try{data = await resolver.resolveSoa(hostname); console.log('SOA result:', JSON.stringify(data))} catch (error){console.log('SOA result:', error.message)} console.log()} // ************************************************************** (async function main(){await test('support.microsoft.com')})(); Actual Results
hostname: support.microsoft.com
CNAME result: [ 'ev.support.microsoft.com.edgekey.net' ]
SOA result: querySoa EBADRESP support.microsoft.com
Expected Results
hostname: support.microsoft.com
CNAME result: [ 'ev.support.microsoft.com.edgekey.net' ]
SOA result: querySoa ENODATA support.microsoft.com
Additional information
This seems to happen for any hostname with a CNAME record.
Another example:
hostname: store.gocomics.com
CNAME result: [ 'gocomicsstore.wpengine.com' ]
SOA result: querySoa EBADRESP store.gocomics.com
I would expect to get an 'ENODATA' instead of 'EBADRESP', as with the other resolveXXX() calls.
For a hostname with an SOA record but no CNAME, you get:
hostname: microsoft.com
CNAME result: queryCname ENODATA microsoft.com
SOA result:{"nsname":"ns1-205.azure-dns.com","hostmaster":"azuredns-
hostmaster.microsoft.com","serial":1,"refresh":3600,"retry":300,"expire":2419200,"minttl":300}