domain-info

Simple domain information tool

Usage no npm install needed!

<script type="module">
  import domainInfo from 'https://cdn.skypack.dev/domain-info';
</script>

README

domain-info

Build Status

Simple domain infomation client.

install

npm install domain-info

Usage

const domain = require('domain-info');
const callback = (error, data) => {
    console.log(data);
}

domain.groper('github.com', { type: ['A'] }, callback);
// data = { A:
//    [ { name: 'github.com',
//        type: 1,
//        class: 1,
//        ttl: 20,
//        address: '192.30.252.130' } ]
// }

This module return Promise object without callback function.

const domain = require('domain-info');

let promise = domain.groper('github.com', { type: ['A'] });
promise.then(data => {
// data = { A:
//    [ { name: 'github.com',
//        type: 1,
//        class: 1,
//        ttl: 20,
//        address: '192.30.252.130' } ]
// }
});

API

groper(domain, [type, option, callback])

Dig command. Option is node-dns Request method option. type is resource record type like A, MX.

const domain = require('domain-info');
domain.groper(
    'example.com',
    ['A', 'NS', 'MX'],
    {
        server: { address: '8.8.8.8', port: 53, type: 'udp' },
        timeout: 1000
    },
    callback
);

reverse(ip_address, [callback])

Reverse DNS lookup.

const domain = require('domain-info');
domain.reverse('8.8.8.8', (error, data) => {
    // data => [ 'google-public-dns-a.google.com' ]
});

whois(domain, [option, callback])

Whois command. Option has server, port, recordType properties. server has default value TLD.whois-servers.net. port has default value 43 recordType has default value domain

const options = {
    server: 'com.whois-servers.net',
    port: 43,
    recordType: 'domain'
}
const domain = require('domain-info');
domain.whois('example.com', (error, data) => {
    // data has whois results.
});

punycode(ascii_or_unicode)

Convert ascii domain to uicode. Also convert unicode domain to ascii in reverse.

const domain = require('domain-info');

domain.punycode('日本語.jp');
// => xn--wgv71a119e.jp

domain.punycode('xn--wgv71a119e.jp');
// => 日本語.jp

whois(domain, [options, callback])

Whois

const domain = require('domain-info');
domain.whois('a.ns.apple.com', (error, data) => {
    console.log(data);
});

Related

domain-info-cli

License

MIT © kazu69