Skip to content

hassansin/node-dnsbl-lookup

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Node.js DNSBLs Lookup Build Status

Supports IPv4, IPv6 and Domain lookup. Works from command-line.

Installation

npm install dnsbl-lookup -g
var lookup = require('dnsbl-lookup'); // inside module

Usage

dnsbl(ip-or-domain,[dnsbl_list],[limit])

Performs DNSBL lookup on the given IP address. If a domain is provided, lookup is performed on it's 'A' records.

  • ip-or-domain: String containing IPv4, IPv6 or domain names
  • dnsbl_list: Optional, Array of DNSBL zone names
  • limit: Optional, Maximum number of outstanding DNS queries at a time. Defaults to 200.
Example:
var dnsbl = new lookup.dnsbl('58.97.142.25');

dnsbl.on('error',function(error,blocklist){ ... });
dnsbl.on('data',function(result,blocklist){
  console.log(result.status + ' in ' + blocklist.zone);
});
dnsbl.on('done', function(){ 
  console.log('lookup finished');
});  
uribl(domains,[uribl_list],limit)

Performs a URI DNSBL query on the give domain(s).

  • domains: String or Array of domain names
  • uribl_list: Optional, Array of URI DNSBL zone names
  • limit: Optional, Maximum number of outstanding DNS queries at a time. Defaults to 200.
Example:
var uribl= new lookup.uribl('gmail.com');

uribl.on('error',function(error,blocklist){ ... });
uribl.on('data',function(result,blocklist){ ... });
uribl.on('done', function(){ ... });  

see more examples in test.js

Response:

  • address: lookup address
  • status: listed / not_listed
  • A: 'A' record lookup result only when listed
  • TXT: 'TXT' record lookup result if found
//if not listed
{ address:'58.97.142.25', status: 'not_listed' }

//if listed
{ 
  address: '58.97.142.25',
  status: 'listed',
  A: '127.0.0.2',
  TXT: 'Blocked - see http://cbl.abuseat.org/lookup.cgi?ip=58.97.142.25' 
}

Command-line:

$ dnsbl-lookup 58.97.142.25
$ dnsbl-lookup 2a01:4f8:140:4222::2
$ dnsbl-lookup gmail.com list.txt // list.txt is line-separated dns zones 

About

Node.js multi DNSBL/URIBL Lookup

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published