Node.js dns.resolve() Method
Last Updated :
10 Sep, 2024
Improve
The
dns.resolve() method
is an inbuilt application programming interface of the dns module which is used to resolve hostname into an array of the resource records.
Syntax:
dns.resolve( hostname, rrtype, callback )
Parameters:
This method accept three parameters as mentioned above and described below:
- hostname: This parameter specifies a string which denotes the hostname to be resolved.
- rrtype: It specifies the resource record type. Its default value is 'A'. The list of records ('A', 'AAAA', 'ANY', 'CNAME', 'MX', 'TXT', 'NS', 'NAPTR', 'PTR', 'SOA', 'SRV') are described below:
- A: IPv4 address
- AAAA: IPv6 address
- ANY: Any records
- CNAME: canonical name records
- MX: mail exchange records
- NAPTR: name authority pointer records
- NS: name server records
- PTR: pointer records
- SOA: start of authority records
- SRV: service records
- TXT: text records
- callback: It specifies a function which to be called after DNS resolution of the hostname.
- error: It specifies error if generated.
- records: It's string or object that signifies the returned record.
- Return Value:
- This method returns error, records through callback function, These data are passed as parameters to the callback function. Below examples illustrate the use of dns.resolve() Method in Node.js:
- Example 1:
javascript // Node.js program to demonstrate the // dns.resolve() method // Accessing dns module const dns = require('dns'); // Set the rrtype for dns.resolve() method const rrtype="A"; // Calling dns.resolve() method for hostname // geeksforgeeks.org and print them in // console as a callback dns.resolve('geeksforgeeks.org', rrtype, (err, records) => console.log('records: %j', records));
- Output:
records: ["8.8.8.8"]
- Example 2:
javascript // Node.js program to demonstrate the // dns.resolve() method // Accessing dns module const dns = require('dns'); // Set the rrtype for dns.resolve() method const rrtype="MX"; // Calling dns.resolve() method for hostname // geeksforgeeks.org and print them in // console as a callback dns.resolve('geeksforgeeks.org', rrtype, (err, records) => console.log('records: %j', records));
- Output:
records: [
{"exchange":"alt1.aspmx.l.google.com", "priority":5},
{"exchange":"alt2.aspmx.l.google.com", "priority":5},
{"exchange":"aspmx.l.google.com", "priority":1},
{"exchange":"alt3.aspmx.l.google.com", "priority":10},
{"exchange":"alt4.aspmx.l.google.com", "priority":10}
]- Example 3:
javascript // Node.js program to demonstrate the // dns.resolve() method // Accessing dns module const dns = require('dns'); // Set the rrtype for dns.resolve() method const rrtype="TXT"; // Calling dns.resolve() method for hostname // geeksforgeeks.org and print them in // console as a callback dns.resolve('geeksforgeeks.org', rrtype, (err, records) => console.log('records: %j', records));
- Output:
records: [
["v=spf1 include:amazonses.com include:_spf.google.com -all"],
["fob1m1abcdp777bf2ncvnjm08n"]
]- Example 4:
javascript // Node.js program to demonstrate the // dns.resolve() method // Accessing dns module const dns = require('dns'); // Set the rrtype for dns.resolve() method const rrtype="NS"; // Calling dns.resolve() method for hostname // geeksforgeeks.org and print them in // console as a callback dns.resolve('geeksforgeeks.org', rrtype, (err, records) => console.log('records: %j', records));
- Output:
records: [
"ns-1520.awsdns-62.org",
"ns-1569.awsdns-04.co.uk",
"ns-245.awsdns-30.com",
"ns-869.awsdns-44.net"
]- Note:
- The above program will compile and run by using the
node index.js
- command.
- Reference:
- https://nodejs.org/api/dns.html#dns_dns_resolve_hostname_rrtype_callback