71 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			71 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|  | "use strict"; | ||
|  | 
 | ||
|  | var dns = require('../dns'), | ||
|  |   tcpserver = dns.createTCPServer(), | ||
|  |   server = dns.createServer(); | ||
|  | 
 | ||
|  | var onMessage = function (request, response) { | ||
|  |   console.log('request from:', request.address); | ||
|  |   var i; | ||
|  |   //console.log(request)
 | ||
|  |   response.answer.push(dns.A({ | ||
|  |     name: request.question[0].name, | ||
|  |     address: '127.0.0.1', | ||
|  |     ttl: 600, | ||
|  |   })); | ||
|  |   response.answer.push(dns.A({ | ||
|  |     name: request.question[0].name, | ||
|  |     address: '127.0.0.2', | ||
|  |     ttl: 600, | ||
|  |   })); | ||
|  |   response.additional.push(dns.AAAA({ | ||
|  |     name: 'hostA.example.org', | ||
|  |     address: '::1', | ||
|  |     ttl: 600, | ||
|  |   })); | ||
|  | 
 | ||
|  |   //To force truncation and tcp tests
 | ||
|  |   //for (i = 1; i < 254; i++) {
 | ||
|  |   //  response.additional.push(dns.A({
 | ||
|  |   //    name: 'host'+i+'.example.org',
 | ||
|  |   //    address: '127.0.0.' + 1,
 | ||
|  |   //    ttl: 600,
 | ||
|  |   //  }));
 | ||
|  |   //}
 | ||
|  | 
 | ||
|  |   response.send(); | ||
|  | }; | ||
|  | 
 | ||
|  | var onError = function (err, buff, req, res) { | ||
|  |   console.log(err.stack); | ||
|  | }; | ||
|  | 
 | ||
|  | var onListening = function () { | ||
|  |   console.log('server listening on', this.address()); | ||
|  |   //this.close();
 | ||
|  | }; | ||
|  | 
 | ||
|  | var onSocketError = function (err, socket) { | ||
|  |   console.log(err); | ||
|  | }; | ||
|  | 
 | ||
|  | var onClose = function () { | ||
|  |   console.log('server closed', this.address()); | ||
|  | }; | ||
|  | 
 | ||
|  | server.on('request', onMessage); | ||
|  | server.on('error', onError); | ||
|  | server.on('listening', onListening); | ||
|  | server.on('socketError', onSocketError); | ||
|  | server.on('close', onClose); | ||
|  | 
 | ||
|  | server.serve(15353, '127.0.0.1'); | ||
|  | 
 | ||
|  | tcpserver.on('request', onMessage); | ||
|  | tcpserver.on('error', onError); | ||
|  | tcpserver.on('listening', onListening); | ||
|  | tcpserver.on('socketError', onSocketError); | ||
|  | tcpserver.on('close', onClose); | ||
|  | 
 | ||
|  | tcpserver.serve(15353, '127.0.0.1'); |