libdns

0.2.4 • Public • Published

libdns

DNS library for server and proxy

This library is forked from https://github.com/trevoro/node-named

Enhancement

Support Record Type

  • A
  • AAAA
  • SOA
  • MX
  • TXT
  • SRV

How to use?

npm install --save libdns

Create a multiple upstream DNS proxy

var named = require('libdns');
 
var proxy = named.createProxy(['8.8.8.8', '168.95.1.1']);
 
proxy.listen(53, '127.0.0.1', function() {
    console.log("Listen DNS on port 53");
});
 

Bump some domain

var named = require('libdns');
 
function before_query(domain){
    console.log(domain);
    if (domain.endsWith('.apple.com')) {
        r={}
        r.answer = [{name: domain, class: 1, type:1, ttl:300, address:'1.1.1.1'}];
        return r;
    }else{
        return {};
    }
};
 
function after_query(response){
    console.log(response);
    response.answer = [ { name: response.question[0].name,
        class: 1,
        type: 1,
        ttl: 299,
        address: '8.8.8.8' }];
};
 
var proxy = named.createProxy(['8.8.8.8', '168.95.1.1'], {before: before_query, after: after_query});
 
proxy.listen(53, '127.0.0.1', function() {
    console.log("Listen DNS on port 53");
});

Readme

Keywords

Package Sidebar

Install

npm i libdns

Weekly Downloads

0

Version

0.2.4

License

MIT

Last publish

Collaborators

  • kaija