Node RWhois library that implements the ARIN RWhois protocol to serve usage to ARIN
Routing works similar to express (req,res)
$ npm install rwhois
'use strict';
var rwhois = require('rwhois')
var app = rwhois()
//handle ipv4 queries
app.query('ipv4',function(req,next){
//use the values in the request object to structure the response
console.log(req) //{query: '192.168.1.100', limit: 20}
next(
//report any errors here
null,
//this is the response, it can be an array or line delimited text
[
'network:ID:NET-IBMNET-3.0.0.0/0',
'network:Auth-Area:0.0.0.0/0',
'network:Network-Name:IBMNET-3',
'network:IP-Network:123.45.67.0/24',
'network:Org-Name:IBM',
'network:Street-Address:1234 Maneck Avenue',
'network:City:Black Plains',
'network:State:NY',
'network:Postal-Code:12345',
'network:Country-Code:US',
'network:Tech-Contact;I:MG305.COM',
'network:Updated:19931120123455000',
'network:Updated-By:[email protected]',
'network:Class-Name:network'
]
//this is a referral to another server
,'rwhois://rwhois.arin.net:4321/auth-area=.'
)
})
//setup and listen
app.listen()
{
author: 'ESITED LLC',
protocol: '1.5',
capabilities: '003fff:00',
port: 4321,
hostname: 'localhost'
}
Options can be overridden at instantiation time.
Example
var app = rwhois({
author: 'My Company',
port: 1234,
hostname: 'whois.mycompany.net'
})
This library merely includes the protocol encapsulation, it does not create the database or to handle the queries.
We are planning on adding some helpers to aid in query resolution.
debug
packagelinestream
to handle the incoming protocol parsingLanguage | javascript |
Version | 0.3.0 |
Git URL | https://github.com/nullivex/node-rwhois |
License | MIT |
Description | |
Keywords |