The Node.js DNS module contains methods to get information of given hostname. Let's see the list of commonly used DNS functions:

  • dns.getServers()
  • dns.setServers(servers)
  • dns.lookup(hostname[, options], callback)
  • dns.lookupService(address, port, callback)
  • dns.resolve(hostname[, rrtype], callback)
  • dns.resolve4(hostname, callback)
  • dns.resolve6(hostname, callback)
  • dns.resolveCname(hostname, callback)
  • dns.resolveMx(hostname, callback)
  • dns.resolveNs(hostname, callback)
  • dns.resolveSoa(hostname, callback)
  • dns.resolveSrv(hostname, callback)
  • dns.resolvePtr(hostname, callback)
  • dns.resolveTxt(hostname, callback)
  • dns.reverse(ip, callback)

Node.js DNS Example 1

Let's see the example of dns.lookup() function.

File: dns_example1.js

const dns = require('dns');
dns.lookup('www.rookienerd.com', (err, addresses, family) => {
  console.log('addresses:', addresses);

Open Node.js command prompt and run the following code:

node dns_example1.js
Node.js dns example 1

Node.js DNS Example 2

Let's see the example of resolve4() and reverse() functions.

File: dns_example2.js

const dns = require('dns');
dns.resolve4('www.rookienerd.com', (err, addresses) => {
  if (err) throw err;
  console.log(`addresses: ${JSON.stringify(addresses)}`);
  addresses.forEach((a) => {
    dns.reverse(a, (err, hostnames) => {
      if (err) {
        throw err;
      console.log(`reverse for ${a}: ${JSON.stringify(hostnames)}`);

Open Node.js command prompt and run the following code:

node dns_example2.js
Node.js dns example 2

Node.js DNS Example 3

Let's take an example to print the localhost name using lookupService() function.

File: dns_example3.js

const dns = require('dns');
dns.lookupService('', 22, (err, hostname, service) => {
  console.log(hostname, service);
    // Prints: localhost

Open Node.js command prompt and run the following code:

node dns_example3.js
Node.js dns example 3
Related Tutorial
Follow Us
https://www.facebook.com/Rookie-Nerd-638990322793530 https://twitter.com/RookieNerdTutor https://plus.google.com/b/117136517396468545840 #
Contents +