Node.js | dns.resolve() Method

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:

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    // 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));

    chevron_right

    
    

    Output:

    records: ["34.218.62.116"]

    Example 2:

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    // 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));

    chevron_right

    
    

    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:

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    // 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));

    chevron_right

    
    

    Output:

    records: [
        ["v=spf1 include:amazonses.com include:_spf.google.com -all"],
        ["fob1m1abcdp777bf2ncvnjm08n"]
    ]
    

    Example 4:

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    // 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));

    chevron_right

    
    

    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




    My Personal Notes arrow_drop_up

    Check out this Author's contributed articles.

    If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

    Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.


    Article Tags :

    Be the First to upvote.


    Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.