Introduction to NodeDig
NodeDig is an advanced Node.js library designed for easy and efficient DNS querying and management. With its rich set of APIs, you can perform a variety of DNS operations programmatically. Below, we explore several useful API functions provided by NodeDig, complete with examples to help you get started.
API Examples
1. Basic DNS Query
Use the dig
method to perform a simple DNS query.
const dig = require('nodedig'); dig('example.com').then((result) => { console.log(result); }).catch((err) => { console.error(err); });
2. MX Record Lookup
Retrieve Mail Exchange (MX) records for a domain.
const dig = require('nodedig'); dig('example.com', 'MX').then((result) => { console.log(result); }).catch((err) => { console.error(err); });
3. NS Record Lookup
Query Name Server (NS) records to get information about the domain’s nameservers.
const dig = require('nodedig'); dig('example.com', 'NS').then((result) => { console.log(result); }).catch((err) => { console.error(err); });
4. Retrieve SOA Record
Get the Start of Authority (SOA) record details for a domain.
const dig = require('nodedig'); dig('example.com', 'SOA').then((result) => { console.log(result); }).catch((err) => { console.error(err); });
5. Perform a Reverse DNS Lookup
Resolve an IP address to a domain name.
const dig = require('nodedig'); dig('8.8.8.8', 'PTR').then((result) => { console.log(result); }).catch((err) => { console.error(err); });
Working Example: A Simple DNS Lookup App
Below is a complete app example that leverages multiple nodedig APIs to provide comprehensive DNS information about a domain.
const express = require('express'); const dig = require('nodedig'); const app = express(); const port = 3000; app.get('/dns-info/:domain', async (req, res) => { const domain = req.params.domain; try { const aRecord = await dig(domain, 'A'); const mxRecord = await dig(domain, 'MX'); const nsRecord = await dig(domain, 'NS'); const soaRecord = await dig(domain, 'SOA'); res.json({ aRecord, mxRecord, nsRecord, soaRecord }); } catch (err) { res.status(500).send(err.message); } }); app.listen(port, () => { console.log(`DNS lookup app listening at http://localhost:${port}`); });
With these examples, you can integrate effective DNS querying into your Node.js applications using nodedig, enhancing your ability to manage domain information dynamically.
Hash: 019098d64f5f90926519615d38e3891b46067933ff064268e7364125f8493cb5